: :

ПнВтСрЧтПтСбВс

2017-11-13 15:59:26 4157 0

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

Asterisk – это ATC созданная хакерами (в первоначальном смысле этого слова), а точнее, это супер конвергентная платформа компьютерной телефонии, распространяемая по лицензии GNU GPL, изначально разрабатываемая Марком Спенсером (Mark Spenser), позже ставшим президентом и техническим директором компании Digium. Благодаря коммерческой поддержке Его компании и лицензии GNU GPL Asterisk активно развивается и поддерживается тысячами людей со всей планеты.

FreePBX - это один из вариантов управления двигателем современной IP телефонии — Asterisk. Как бы не любили интеграторы эту «надстройку», безусловно именно она является лидером инсталляций IP АТС.

Выключение SELinux

В файле /etc/selinux/config
Заменяем SELINUX=enforcing на SELINUX=disabled

Устанавливаем зависимости

rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

yum install -y kernel-devel kernel-headers

test@lxd:/$ 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

yum -y install mariadb-server mariadb mariadb-devel

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

systemctl start mariadb.service

systemctl enable mariadb.service

3) Запустим интерактивный конфигуратор (будет предложено задать пароль пользователя root для mysql и др.)

mysql_secure_installation

Set root password? [Y/n] y 
New password:
Re-enter new password:
Password updated successfully! 
Reloading privilege tables.. 
 ... Success!
 

By default, a MariaDB installation has an anonymous user, allowing anyone 
to log into MariaDB without having to have a user account created for 
them.  This is intended only for testing, and to make the installation 
go a bit smoother.  You should remove them before moving into a 
production environment. 

Remove anonymous users? [Y/n] y
... Success!

Normally, root should only be allowed to connect from "localhost".  This 
ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n] n 
... skipping.

By default, MariaDB comes with a database named "test" that anyone can
access.  This is also intended only for testing, and should be removed
before moving into a production environment.

Remove test database and access to it? [Y/n] y
- Dropping test database...
 ... Success!
 - Removing privileges on test database...
 ... Success!

Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.

Reload privilege tables now? [Y/n] y
... Success!

Cleaning up...

All done!  If you"ve completed all of the above steps, your MariaDB
installation should now be secure.

Thanks for using MariaDB!

Установка Pjproject

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

cd /usr/src

git clone https://github.com/asterisk/pjproject pjproject

cd pjproject/

test@lxd:/$ sudo ./configure --libdir=/usr/lib64 --prefix=/usr \ 
--enable-shared --disable-sound --disable-resample --disable-video

sudo make dep

sudo make

sudo make install

sudo ldconfig

Установка libjansson

cd /usr/src

wget http://www.digip.org/jansson/releases/jansson-2.5.tar.gz

tar xzf jansson-2.5.tar.gz

cd jansson-2.5

sudo ./configure --prefix=/usr/

sudo make clean

sudo make

sudo make install

sudo ldconfig

Lame

Lame - для кодирования аудио в формат MP3

cd /usr/src

wget http://sourceforge.net/projects/lame/files/lame/3.98.4/lame-3.98.4.tar.gz

tar zxvf lame-*.gz

cd lame-*

sudo ./configure

sudo make

sudo make install

Установка DAHDI

cd /usr/src

test@lxd:/$ wget https://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/ \ 
dahdi-linux-complete-current.tar.gz

tar xzf dahdi-linux-complete-current.tar.gz

cd dahdi-linux-complete-*

sudo make all

sudo make install

sudo make config

Установка LibPRI

cd /usr/src

wget https://downloads.asterisk.org/pub/telephony/libpri/libpri-current.tar.gz

tar xzf libpri-*.tar.gz

cd /usr/src/libpri-*

sudo make

sudo make install

Установка Asterisk 13

cd /usr/src

wget https://downloads.asterisk.org/pub/telephony/asterisk/asterisk-13-current.tar.gz

tar xvfz asterisk-13*.tar.gz

cd asterisk-13.*

sudo ./contrib/scripts/install_prereq install

sudo ./configure --libdir=/usr/lib64

sudo contrib/scripts/get_mp3_source.sh

sudo 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

Устанавливаем запуск asterisk из под пользователя asterisk

В файле /usr/sbin/safe_asterisk заменяем строки:

ASTARGS="" на ASTARGS="-U asterisk"

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

useradd -m asterisk

Задаем необходимые права на папки для пользователя 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)

Настройка запуска веб-сервера от имени пользователя asterisk

В конфигурационном файле веб-сервера /etc/httpd/conf/httpd.conf
Указываем пользователя asterisk в директивах User и Group:

User  asterisk
Group  asterisk
>

Указываем все директивы для переопределения настроек из файла .htaccess

В конфигурационном файле веб-сервера /etc/httpd/conf/httpd.conf
Заменяем AllowOverride None на AllowOverride All

Производим настройку php

В файле /etc/php.ini
Устанавливаем директивы в след. значения:
date.timezone = /Europe/Moscow
upload_max_filesize = 120M

Перезапускаем apach

systemctl restart httpd

systemctl enable httpd

Установка FreePBX

cd /usr/src

wget http://mirror.freepbx.org/modules/packages/freepbx/freepbx-13.0-latest.tgz

tar xzf freepbx-13.0-latest.tgz

cd freepbx

sudo ./start_asterisk start

Изменяем настройки подключения к базе данных
В файле installlib/installcommand.class.php задается массив $settings в нем ключ dbpass, который представляет собой массив, и в этом массиве для ключа default задаем значение вашего текущего пароля для пользователя root для подключения к БД:

"dbpass" => array(
"default" => "*пароль для БД*",
"description" => "Database password"

./install -n

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

http://IP.Address.FreePBX.Server/admin






Введите ответ:

+

=