Как установить Asterisk на CentOS 7

Как установить Asterisk на CentOS 7

How To Install Asterisk on CentOS 7

31 Декабря 2019 | CentOS

Это руководство проведет вас через шаги, необходимые для установки Asterisk 15 на CentOS 7.

Как установить Asterisk на CentOS 7

Asterisk является самой популярной и широко распространенной платформой PBX с открытым исходным кодом, которая обеспечивает работу систем IP PBX, серверов конференций и шлюзов VoIP. Он используется частными лицами, малыми предприятиями, крупными предприятиями и правительствами по всему миру.

Функции Asterisk включают голосовую почту, музыку в режиме удержания, конференц-связь, очередь вызовов, запись вызовов, интерактивный голосовой ответ и многое другое.


  • Прежде чем продолжить этот урок, убедитесь, что вы вошли в систему как пользователь с привилегиями sudo .

  • Обновите систему CentOS и установите инструменты разработки, необходимые для компиляции исходного кода Asterisk:

    sudo yum updatesudo yum groupinstall core base "Development Tools"


Отключить Селинукс

Если SELinux установлен в enforcing режим, Asterisk не будет работать правильно.

Чтобы отключить функции безопасности SELinux, откройте /etc/selinux/config файл и установите SELINUX=disabled

/etc/selinux/config
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#       enforcing - SELinux security policy is enforced.
#       permissive - SELinux prints warnings instead of enforcing.
#       disabled - No SELinux policy is loaded.
SELINUX=disabled
# SELINUXTYPE= can take one of these two values:
#       targeted - Targeted processes are protected,
#       mls - Multi Level Security protection.
SELINUXTYPE=targeted

Сохраните файл и перезагрузите систему CentOS:


sudo shutdown -r now


Как только машина загрузится, убедитесь, что getenforce команда возвращает Disabled:


getenforce
Disabled


Скачать Asterisk

Мы собираемся скачать исходный код Asterisk в /usr/src каталоге, который является общим местом для размещения исходных файлов.

Перейдите в /usr/src каталог, набрав:


cd /usr/src/


Загрузите последнюю версию Asterisk 15 с помощью следующей команды wget :


sudo wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-15-current.tar.gz


После завершения загрузки извлеките загруженный файл, используя следующую команду:


sudo tar zxf asterisk-15-current.tar.gz


Прежде чем продолжить выполнение следующих шагов, убедитесь, что вы перешли в исходный каталог Asterisk, набрав:


cd asterisk-15.*/


Установите Asterisk Dependencies

Загрузите источники MP3, необходимые для сборки модуля MP3 и использования файлов MP3 на Asterisk:


sudo contrib/scripts/get_mp3_source.sh


Далее установите все недостающие зависимости с помощью install_prereq скрипта:


sudo contrib/scripts/install_prereq install


Скрипт установит все необходимые пакеты и после успешного завершения выведет следующее сообщение:


#############################################
## install completed successfully
#############################################


Установка Аsterisk 

configure Скрипт выполнит ряд проверок , чтобы убедиться , что все зависимости, которые необходимы сборки и установки процесса присутствуют, запустите скрипт, набрав:


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


После успешного завершения вы увидите следующий вывод:


   

Следующим шагом является выбор модулей, которые вы хотите скомпилировать и установить.

Большинство модулей уже включены. Войдите в систему Menuselect, набрав:


sudo make menuselect


Мы уже загрузили исходные файлы MP3, и теперь нам нужно указать Asterisk для сборки модуля MP3, выбрав format_mp3:


   

Когда вы закончите, нажмите, F12 чтобы сохранить и выйти, или переключитесь на Save and Exit кнопку и нажмите Enter.

Запустите процесс компиляции с помощью make команды:


sudo make -j2

    Сборка может занять некоторое время, в зависимости от вашей системы. Вы можете изменить -j флаг в соответствии с количеством ядер вашего процессора.

После завершения процесса сборки вам будет представлено следующее сообщение:


   

Следующим шагом является установка Asterisk и его модулей, набрав:


sudo make install


После завершения установки скрипт отобразит следующее сообщение:




Теперь, когда Asterisk установлен, нам нужно установить примеры файлов конфигурации.

Установите либо общие файлы конфигурации со справочной документацией, набрав:


sudo make samples


Или установите основные файлы конфигурации:


sudo make basic-pbx


Последний шаг - установить скрипт инициализации Asterisk, набрав:


sudo make config


Наконец, запустите ldconfig для обновления кеша общих библиотек:


sudo ldconfig


Создать пользователя Asterisk

По умолчанию Asterisk работает от имени пользователя root. По соображениям безопасности мы создадим нового системного пользователя и настроим Asterisk для запуска в качестве вновь созданного пользователя.

Чтобы создать нового системного пользователя с именем, asterisk выполните следующую команду:


sudo adduser --system --user-group --home-dir /var/lib/asterisk --no-create-home asterisk


Чтобы настроить Asterisk для запуска от имени asteriskпользователя, откройте /etc/sysconfig/asterisk файл и раскомментируйте следующие две строки:

/etc/sysconfig/asterisk
AST_USER="asterisk"
AST_GROUP="asterisk"


Добавьте asterisk пользователя в dialout и audio группы:


sudo usermod -a -G dialout,audio asterisk


Нам также необходимо изменить владельца и права доступа ко всем файлам и каталогам asterisk , чтобы Asterisk мог получить доступ к этим файлам:


sudo chown -R asterisk: /var/{lib,log,run,spool}/asterisk /usr/lib64/asterisk /etc/asterisksudo chmod -R 750 /var/{lib,log,run,spool}/asterisk /usr/lib64/asterisk /etc/asterisk


Запустить Asterisk 

Теперь, когда мы все настроены, мы можем запустить службу Asterisk с помощью следующей команды:


sudo systemctl start asterisk


Чтобы убедиться, что Asterisk работает, подключитесь к интерфейсу командной строки Asterisk (CLI), введя:


sudo asterisk -vvvr


Вы увидите приглашение Asterisk CLI по умолчанию:



Последний шаг - запуск службы Asterisk при загрузке с:


sudo systemctl enable asterisk


Настройте правила брандмауэра

Теперь, когда Asterisk установлен и работает, вам нужно настроить брандмауэр, чтобы разрешить трафик через определенные порты Asterisk.

Если в вашей системе не включен брандмауэр, вы можете пропустить этот раздел.

Откройте выбранный вами текстовый редактор и создайте следующий сервис Firewalld:


/etc/firewalld/services/asterisk.xml
<?xml version="1.0" encoding="utf-8"?>
<service version="1.0">
  <short>asterisk</short>
  <description>Asterisk is a software implementation of a telephone private branch exchange (PBX).</description>
  <port protocol="udp" port="10000-10100"/>
  <port protocol="udp" port="4569"/>
  <port protocol="udp" port="2727"/>
  <port protocol="udp" port="5060-5061"/>
</service>

Сохраните файл и примените новые правила брандмауэра, набрав:


sudo firewall-cmd --add-service=asterisk --permanentsudo firewall-cmd --reload


Наконец, проверьте, успешно ли применяются новые правила брандмауэра:


sudo firewall-cmd --list-all
public (active)
  target: default
  icmp-block-inversion: no
  interfaces: eth0
  sources:
  services: ssh dhcpv6-client asterisk
  ports:
  protocols:
  masquerade: no
  forward-ports:
  source-ports:
  icmp-blocks:
  rich rules:


Не стесняйтесь настроить брандмауэр в соответствии с вашими потребностями.


Вывод

В этом руководстве мы показали, как установить последнюю версию Asterisk из исходного кода в вашей системе CentOS.

Теперь вы должны проверить документацию Asterisk и узнать больше о том, как настроить и использовать Asterisk.


    Комментарии

    Если у вас есть вопросы, не стесняйтесь оставлять комментарии ниже.

Загрузка комментариев...