Найти в Дзене

Установка Asterisk 13/14 + FreePBX 13 на CentOS 7

Оглавление

Сегодня мы разберем и пошагово покажем базовую установку Asterisk 13, 14 на CentOS 7 с панелью управления FreePBX 13. Установка будет производится из исходников.

Выключение SELinux

sed -i s/SELINUX=enforcing/SELINUX=disabled/g /etc/selinux/config

Зависимости

rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
yum install -y kernel-devel kernel-headers
yum install -y e2fsprogs-devel keyutils-libs-devel krb5-devel libogg libselinux-devel libsepol-devel libxml2-devel libtiff-devel gmp php-pear php php-gd php-mysql php-pdo php-mbstring ncurses-devel mysql-connector-odbc unixODBC unixODBC-devel audiofile-devel libogg-devel openssl-devel zlib-devel perl-DateManip sox git wget net-tools psmisc
yum install -y gcc gcc-c++ make gnutls-devel libxml2-devel ncurses-devel subversion doxygen texinfo curl-devel net-snmp-devel neon-devel uuid-devel libuuid-devel sqlite-devel sqlite speex-devel gsm-devel libtool libtool-ltdl libtool-ltdl-devel libsrtp libsrtp-devel xmlstarlet

Сделайте полный апдейт

yum update -y

Перезагрузите систему

reboot

Установка mysql (mariadb)

1: Установим mariadb (MySQL)

yum -y install mariadb-server mariadb mariadb-devel

2: Запустим и включим автозагрузку

mariadb (MySQL) systemctl start mariadb.service
systemctl enable mariadb.service

3: Запустим интерактивный конфигуратор

Будет предложено задать пароль пользователя root для mysql и др.

mysql_secure_installation

Установите PearDB

pear uninstall db
pear install db-1.7.14

SRTP

# cd /usr/src && wget http://sourceforge.net/projects/srtp/files/srtp/1.4.4/srtp-1.4.4.tgz
tar zxvf srtp-*.tgz &&
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 install

Pjproject

Для установки Pjproject и Asterisk 14, рекомендуется использовать Pjproject Bundled Version.В этом случае компиляцию Pjproject из исходников можно пропустить.

Компиляция Pjproject из исходников

# cd /usr/src && git clone https://github.com/asterisk/pjproject pjproject
cd pjproject/ &&
./configure --libdir=/usr/lib64 --prefix=/usr --enable-shared --disable-sound --disable-resample --disable-video &&
make dep &&
make &&
make install &&
ldconfig &&

LibJansson

# cd /usr/src && wget http://www.digip.org/jansson/releases/jansson-2.5.tar.gz
tar zvxf jansson-2.5.tar.gz &&
cd jansson-2.5 &&
./configure --prefix=/usr/ &&
make clean &&
make &&
make install &&
ldconfig

Исходники

cd /usr/src &&
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/asterisk-13-current.tar.gz &&
wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-14-current.tar.gz

Lame

cd /usr/src &&
tar zxvf lame-3.98.4.tar.gz &&
cd lame-3.98.4 &&
./configure &&
make &&
make install

DAHDI & LibPRI

yum install "kernel-devel-uname-r == $(uname -r)"
cd /usr/src &&
tar xvfz dahdi-linux-complete-current.tar.gz &&
cd dahdi-linux-complete-* &&
make all &&
make install &&
make config
cd /usr/src &&
tar xvfz libpri-*.tar.gz &&
cd /usr/src/libpri-* &&
make &&
make install

SpanDSP

cd /usr/src && wget http://soft-switch.org/downloads/spandsp/spandsp-0.0.6.tar.gz
tar zxvf spandsp-0.0.6.tar.gz &&
cd spandsp-0.0.6 &&
./configure &&
make &&
make install &&
ln -s /usr/local/lib/libspandsp.so.2 /usr/lib64/libspandsp.so.2

Asterisk 12/13/14

cd /usr/src &&
tar xvfz asterisk-14*.tar.gz &&
cd asterisk-14.*
./contrib/scripts/install_prereq install
./configure --libdir=/usr/lib64 --with-pjproject-bundled --with-crypto --with-ssl=ssl --with-srtp &&
contrib/scripts/get_mp3_source.sh &&
make menuselect

Asterisk 13

cd /usr/src &&
tar xvfz asterisk-13*.tar.gz &&
cd asterisk-13.* &&
./configure --libdir=/usr/lib64 --with-crypto --with-ssl=ssl --with-srtp &&
contrib/scripts/get_mp3_source.sh &&
make menuselect

Asterisk 12

cd /usr/src &&
tar xvfz asterisk-12-current.tar.gz &&
cd asterisk-12.* &&
./configure --libdir=/usr/lib64 &&
contrib/scripts/get_mp3_source.sh &&
make menuselect

После ввода команды make menuselect, вам будет предложено выбрать устанавливаемые модули. Большинство требуемых модулей выбираются автоматически. Для поддержки mp3 включите модуль ‘format_mp3’ —> Add-ons (See README-addons.txt).

--- extended ---
XXX chan_mobile
[*] chan_ooh323
[*] format_mp3
[*] res_config_mysql
--- deprecated ---
[*] app_mysql
[*] app_saycountpl
[*] cdr_mysql
---> Core Sound Packages
[*] CORE-SOUNDS-RU-GSM
---> Extras Sound Packages
[*] EXTRA-SOUNDS-EN-GSM
make && make install && make config && ldconfig
sed -i 's/ASTARGS=""/ASTARGS="-U asterisk"/g' /usr/sbin/safe_asterisk

Создайте пользователя Asterisk и задайте права пользователя.

useradd -m asterisk &&
chown asterisk.asterisk /var/run/asterisk &&
chown -R asterisk.asterisk /etc/asterisk &&
chown -R asterisk.asterisk /var/{lib,log,spool}/asterisk &&
chown -R asterisk.asterisk /usr/lib64/asterisk

Настроим httpd (Apache)

cp /etc/php.ini /etc/php.ini_orig &&
sed -ie 's/;date.timezone =/date.timezone = "Europe/Moscow"/g' /etc/php.ini &&
sed -i 's/(^upload_max_filesize = ).*/120M/' /etc/php.ini &&
cp /etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf_orig &&
sed -i 's/^(User|Group).*/1 asterisk/' /etc/httpd/conf/httpd.conf &&
sed -i 's/AllowOverride None/AllowOverride All/' /etc/httpd/conf/httpd.conf &&
systemctl restart httpd &&
systemctl enable httpd

FreePBX

pear install Console_Getopt
cd /usr/src &&
wget http://mirror.freepbx.org/modules/packages/freepbx/freepbx-13.0-latest.tgz
tar zxvf freepbx-13.0-latest.tgz &&
cd freepbx &&
./start_asterisk start
./install -n

Подключимся к FreePBX

http://IP.Address.FreePBX.Server/admin
Первым делом, вам будет предложено задать имя пользователя и пароль FreePBX

-2

Can Not Connected To Asterisk

Если появится предупреждение Can Not Connected To Asterisk, а Asterisk точно запущен, закомментируйте инклуды в файле /etc/asterisk/manager.conf

;#include manager_additional.conf
;#include manager_custom.conf

На этом установка окончена!

Источник: http://wiki.pro-voip.ru/asterisk/ustanovka-asterisk-13-14-freepbx-13-na-centos-7.html