Установка Asterisk 14 на CentOS 7.
О новшествах в 14 версии asterisk и FreePBX можно почитать FreePBX 14 - что нового? и Asterisk 14 - что нового?
Установку будем производить на последнюю версию CentOS Linux release 7.3.1611 (Core) с установленными обновлениями на 19.07.2017
напомню, что для обновления необходимо сделать команду
Важно! 1. выключить Selinux на время установки. Включенный Selinux может привести к странному поведению во время установки.
Выключить Selinux на CentOS 7 можно с помощью команд:
После чего перезагрузим систему:
Также на время установки можно выключить firewall(не выключайте, если система доступна из интернета)
Проверим, что Selinux, таки выключился:
SELinux status: disabled
2. Установка дополнительных пакетов, которые нам понадобятся для того, чтобы установить FreePBX 14 и Asterisk 14 на CentOS 7
установим дополнительный зависимости
3. Установим php 5.6
Добавим пару репозитариев:
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
Удалим старый php и установим php 5.6 для FreePBX 14
PHP 5.6.30 (cli) (built: Jan 19 2017 22:31:39)
Copyright (c) 1997-2016 The PHP Group
Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies
with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2016, by Zend Technologies
4. Установим nodeJS
5. Добавим в автозагрузку mysql настроим и запустим. mysql база данных необходима для установки FreePBX и записи cdr из asterisk
Теперь mysql добавлен в автозагрузку и запущен
Запустим скрипт, который изменит некоторые параметры безопасности и доступа к серверу баз данных
Важно! не устанавливайте пароль root
6. Добавим пользователя asterisk
7. Добавим в автозагрузку apache и запустим его
8. Установить Perl дополнения
9. Установим srtp для возможности собрать Asterisk с srtp и отправлять rtp в зашифрованном виде
sed -i 's/RTPW\=rtpw/RTPW\=\.\/rtpw/' /usr/src/srtp/test/rtpw_test.sh &&
cd srtp && autoconf &&
./configure CFLAGS=-fPIC --prefix=/usr &&
make &&
make runtest &&
make uninstall &&
make install
10. Установка libjansson
tar vxfz jansson.tar.gz
rm -f jansson.tar.gz
cd jansson-*
autoreconf -i
./configure --libdir=/usr/lib64
make
make install
11. Скачаем исходники Asterisk 14 и других пакетов необходимых для установки
wget http://sourceforge.net/projects/lame/files/lame/3.98.4/lame-3.98.4.tar.gz &&
wget http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/dahdi-linux-complete-current.tar.gz &&
wget http://downloads.asterisk.org/pub/telephony/libpri/libpri-current.tar.gz &&
wget http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk-14.7.8.tar.gz
12. Установка Lame свободное приложение для кодирования аудио в формат MP3
tar zxvf lame-3.98.4.tar.gz &&
cd lame-3.98.4 &&
./configure &&
make &&
make install
13. Компиляция и установка Dahdi и LibPri.
Если вы не используете платы ISDN — то можно пропустить шаг установки Libpri.
Но, для успешной установки Asterisk и FreePBX модуль DAHDI необходимо устанавливать всегда!
tar xvfz dahdi-linux-complete-current.tar.gz &&
cd dahdi-linux-complete-* &&
make all &&
make install &&
make config
libpri
tar xvfz libpri-*.tar.gz &&
cd /usr/src/libpri-* &&
make &&
make install
14. Скомпилируем и установим asterisk 14
tar xvfz asterisk-14*.tar.gz &&
cd asterisk-14.*
configure
15. Установим правильные права на директории
chown -R asterisk.asterisk /etc/asterisk &&
chown -R asterisk.asterisk /var/{lib,log,spool}/asterisk &&
chown -R asterisk.asterisk /usr/lib64/asterisk
16. Изменим настройки Apache веб-сервера
sed -ie 's/\;date\.timezone\ \=/date\.timezone\ \=\ "Europe\/Kiev"/g' /etc/php.ini &&
sed -i 's/AllowOverride None/AllowOverride All/' /etc/httpd/conf/httpd.conf &&
sed -i 's/^\(User\|Group\).*/\1 asterisk/' /etc/httpd/conf/httpd.conf
Установка FreePBX 14 на CentOS 7
17. Скачаем и установим FreePBX 14
wget http://mirror.freepbx.org/modules/packages/freepbx/freepbx-14.0-latest.tgz
tar xfz freepbx-14.0-latest.tgz
установка
./start_asterisk start
./install -n
18. Добавим FreePBX 14 в автозагрузку
создадим файл со следующим содержанием:
/etc/systemd/system/freepbx.service
Description=FreePBX VoIP Server
After=mariadb.service
[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/usr/sbin/fwconsole start -q
ExecStop=/usr/sbin/fwconsole stop -q
[Install]
WantedBy=multi-user.target
Добавим FreePBX в автозагрузку
Запустим установленный FreePBX
проверим, что он запустился
Loaded: loaded (/etc/systemd/system/freepbx.service; enabled; vendor preset: disabled)
Active: active (exited) since Wed 2017-07-19 16:49:19 EEST; 4s ago
Process: 3921 ExecStart=/usr/sbin/fwconsole start -q (code=exited, status=0/SUCCESS)
Main PID: 3921 (code=exited, status=0/SUCCESS)
На этом установка Asterisk и FreePBX14 завершена. В следующей статье мы настроим firewalld, fail2ban, базовую безопасность asterisk, доустановим модули, которые точно понадобятся при работе с системой, настроим ntp службу, добавим несколько внутрениих номеров, создадим очередь и транк, а также посмотрим как работает новый календарь, которым так гордятся разработчики.