В начале года была представлена Alfa версия FreePBX 13, летом уже была выпущена FreePBX 13 BETA 10.13.66. В этой статье мы расскажем как установить IP АТС FreePBX 13, на базе нового Asterisk 13 на Centos 7.На официальном сайте FreePBX уже есть готовые дистрибутивы под CentOS, вы легко можете скачать данный дистрибутив и установить на виртуальную машину. Но мы решили пойти по более сложному пути и установить все в ручную.
Все команды делаем из под пользователя root.
1) Отключаем SELinux.
В файле /etc/sysconfig/selinux , указываем SELINUX=disabled.
nano /etc/sysconfig/selinux
2) Перезагружаем систему.
reboot
3) Командой sestatus проверяем отключился ли SELinux:
SELinux status: disabled
4) Обновим систему и установим базовые пакеты.
yum -y update
yum -y groupinstall core base "Development Tools"
5)Устанавливаем необходимые зависимости.
yum -y install lynx mariadb-server mariadb php php-mysql php-mbstring tftp-server \
httpd ncurses-devel sendmail sendmail-cf sox newt-devel libxml2-devel libtiff-devel \
audiofile-devel gtk2-devel subversion kernel-devel git php-process crontabs cronie \
mysql-connector-odbc unixODBC unixODBC-devel cronie-anacron wget vim php-xml uuid-devel \
sqlite-devel sqlit net-tools gnutls-devel php-pear fail2ban incron ImageMagick
6) Устанавливаем модуль console_getopt.
pear install Console_Getopt
7) Настраиваем Firewalld
Необходимо открыть порт 80, чтобы получить доступ к интерфейсу.
systemctl start firewalld
firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --reload
8) Запускаем MariaDB и добавляем в автозагрузку.
systemctl enable mariadb.service
systemctl start mariadb
9) Запускаем Apache и добавляем в автозагрузку.
systemctl enable httpd.service
systemctl start httpd.service
10) Устанавливаем зависимости необходимые для Google Voice.
cd /usr/src
wget https://iksemel.googlecode.com/files/iksemel-1.4.tar.gz
tar xf iksemel-*.tar.gz
rm -f iksemel-1.4.tar.gz
cd iksemel-*
./configure
make
make install
11) Добавляем пользователя Asterisk.
adduser asterisk -M -c "Asterisk User"
12) Скачиваем LibPRI,DAHDI,jansson и pjproject.
cd /usr/src
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-1.4-current.tar.gz
wget -O jansson.tar.gz https://github.com/akheron/jansson/archive/v2.7.tar.gz
wget http://www.pjsip.org/release/2.4/pjproject-2.4.tar.bz2
13) Распаковываем и устанавливаем DAHDI.
cd /usr/src
tar xvfz dahdi-linux-complete-current.tar.gz
rm -f dahdi-linux-complete-current.tar.gz
cd dahdi-linux-complete-*
make all
make install
make config
14) Распаковываем и устанавливаем LibPRI.
cd /usr/src
tar xvfz libpri-1.4-current.tar.gz
rm -f libpri-1.4-current.tar.gz
cd /usr/src/libpri-1.4.*
make
make install
15) Распаковываем и устанавливаем pjproject.
cd /usr/src
tar -xjvf pjproject-2.4.tar.bz2
rm -f pjproject-2.4.tar.bz2
cd pjproject-2.4
CFLAGS='-DPJ_HAS_IPV6=1' ./configure --prefix=/usr --enable-shared --disable-sound\
--disable-resample --disable-video --disable-opencore-amr --libdir=/usr/lib64
make dep
make
make install
15) Распаковываем и устанавливаем jansson.
cd /usr/src
tar vxfz jansson.tar.gz
rm -f jansson.tar.gz
cd jansson-*
autoreconf -i
./configure --libdir=/usr/lib64
make
make install
16) Теперь переходим к самому главному – скачиваем Asterisk 13
cd /usr/src
wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-13-current.tar.gz
Распаковываем
tar xvfz asterisk-13-current.tar.gz
rm -f asterisk-13-current.tar.gz
Начнем установку Asterisk 13. Необходимые модули устанавливаем командой make menuselect.
cd asterisk-*
contrib/scripts/install_prereq install
./configure --libdir=/usr/lib64
contrib/scripts/get_mp3_source.sh
make menuselect
Продолжаем установку:
make
make install
make config
ldconfig
chkconfig asterisk off
17) Устанавливаем Asterisk-Extra-Sounds.
cd /var/lib/asterisk/sounds
wget http://downloads.asterisk.org/pub/telephony/sounds/asterisk-core-sounds-en-wav-current.tar.gz
wget http://downloads.asterisk.org/pub/telephony/sounds/asterisk-extra-sounds-en-wav-current.tar.gz
tar xvf asterisk-core-sounds-en-wav-current.tar.gz
tar xfz asterisk-extra-sounds-en-wav-current.tar.gz
rm -f asterisk-core-sounds-en-wav-current.tar.gz
rm -f asterisk-extra-sounds-en-wav-current.tar.gz
18) Даем пользователю Asterisk права на каталоги.
chown asterisk. /var/run/asterisk
chown -R asterisk. /etc/asterisk
chown -R asterisk. /var/{lib,log,spool}/asterisk
chown -R asterisk. /usr/lib64/asterisk
chown -R asterisk. /var/www/
19) Внесем изменения в Apache
sed -i 's/\(^upload_max_filesize = \).*/\120M/' /etc/php.ini
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.service
20) Скачиваем и устанавливаем FreePBX
cd /usr/src
wget http://mirror.freepbx.org/modules/packages/freepbx/freepbx-13.0-latest.tgz
tar xfz freepbx-13.0-latest.tgz
rm -f freepbx-13.0-latest.tgz
cd freepbx
./start_asterisk start
./install -n
21) Устанавливаем модули FreePBX
amportal a reload
amportal chown
На этом все, установка закончена, и теперь можно перейти по адресу http://Ваш_IP/admin и вы попадете на страницу настройки администратора, где вам нужно будет задать логин и пароль администратора.Если вы в статье нашли ошибки или несоответствия, мы будем благодарны, если вы напишите нам о них в комментариях.