Asterisk — одно из самых популярных решений для компьютерной телефонии, активно устанавливаемое на самых разных серверах. Он поддерживает практически все современные кодеки и протоколы, а также показывает хорошую стабильность, поэтому приобрел такую популярность среди системных администраторов. Однако начинающие пользователи, пытаясь интегрировать Asterisk, могут столкнуться с рядом трудностей, связанных с операцией прямой установки. Чтобы этого не произошло, рекомендуем вам сегодня изучить наш материал, в котором в качестве примера взят дистрибутив CentOS 7.
Устанавливаем Asterisk в CentOS 7
Сложность реализации задачи заключается в том, что Asterisk не будет работать без надстроек, а устанавливать придется вручную, распаковав архивы и скомпилировав полученные файлы. Этот процесс займет много времени, поэтому мне пришлось разбить все инструкции на шаги, чтобы их было легче понять. Начнем с подготовительных шагов.
Шаг 1: Предварительные действия
Во-первых, вам необходимо подготовить сервер, поскольку в CentOS не всегда есть необходимые утилиты, которые вам нужно будет использовать при выполнении следующих шагов, а брандмауэр и время не настроены. Это самый простой шаг, поскольку он требует только точного ввода команд, но также разбит на несколько шагов.
Установка необходимых утилит
Всего для установки Asterisk и вспомогательных компонентов потребуется пять разных утилит, которые изначально могут отсутствовать в операционной системе. Мы рекомендуем вам точно следовать приведенному ниже руководству, чтобы установить любые недостающие обновления и программное обеспечение.
- Все дальнейшие действия будут производиться в «Терминале», поэтому запускайте его удобным для вас способом.
- Здесь сначала запустите команду sudo yum update. Он должен проверить наличие обновлений для уже установленных компонентов и добавить их в операционную систему, чтобы обеспечить правильное взаимодействие с другими утилитами.
- Эта команда, как и все последующие, запускается от имени суперпользователя, а это значит, что ее необходимо подтвердить вводом пароля с новой строки. Обратите внимание, что символы, написанные таким образом, не появятся в строке.
- Если будут обнаружены какие-либо обновления, подтвердите их добавление на сервер, выбрав опцию y.
- После этого можно смело устанавливать все недостающие утилиты. Это делается с помощью одной команды sudo yum install gcc wget ntpdate automake libtool. Мы не будем останавливаться на каждом из них, так как более подробный анализ вы увидите позже.
- Некоторые из перечисленных выше утилит могут уже присутствовать в вашей системе, поэтому, когда появляется строка «Установить», иногда отображаются только одна или две программы, а остальные являются зависимостями. Подтвердите их установку, выбрав соответствующий вариант ответа.
По завершении операции вы получите уведомление о том, что все прошло успешно и осталось перейти к следующему этапу подготовительных действий.
Синхронизация времени
Если вы уверены, что время на сервере уже синхронизировано, не стесняйтесь пропустить этот шаг, переходя к настройке брандмауэра. В противном случае вам нужно будет вручную установить часовой пояс и отредактировать файл конфигурации, который выглядит следующим образом:
- Используйте команду sudo \ cp / usr / share / zoneinfo / Europe / Moscow / etc / localtime для выбора часового пояса. В этой версии установлен московский пояс. Если вам нужен другой, вы должны изменить указанную ссылку, изменив путь к файлу.
- Используйте команду sudo ntpdate ru.pool.ntp.org для синхронизации времени с сетью.
- Введите sudo crontab -e, чтобы получить доступ к файлу конфигурации времени.
- Здесь настройте сценарий для автоматической синхронизации, вставив строку 0 0 * * * / sbin / ntpdate ru.pool.ntp.org. Затем сохраните изменения и закройте редактор.
Теперь вам не нужно беспокоиться о том, что однажды вам придется самостоятельно синхронизировать время, потому что благодаря созданной задаче автоматической настройки мы достигли желаемого результата. Перед установкой Asterisk остается только последний подготовительный шаг.
Конфигурация межсетевого экрана
Настройка брандмауэра — один из самых важных процессов перед установкой любой утилиты, которая будет работать в локальной или глобальной сети. Asterisk не является исключением в этом отношении, поэтому выполните следующие действия:
- В «Терминале» укажите firewall-cmd —permanent —new-service = asterisk для создания новой службы.
- Подтвердите создание паролем суперпользователя.
- Вы будете уведомлены об успешном выполнении операции через сообщение «Успех».
- После этого вы можете вводить команды ниже одну за другой, чтобы открыть все необходимые порты.
firewall-cmd —permanent —service = asterisk —add-port = 5060 / tcp
firewall-cmd —permanent —service = asterisk —add-port = 5060 / udp
firewall-cmd —permanent —service = asterisk —add-port = 5061 / tcp
firewall-cmd —permanent —service = asterisk —add-port = 5061 / udp
firewall-cmd —permanent —service = asterisk —add-port = 4569 / udp
firewall-cmd —permanent —service = asterisk —add-port = 5038 / tcp
firewall-cmd —permanent —service = asterisk —add-port = 10000-20000 / udpНаконец, напишите firewall-cmd —permanent —add-service = asterisk, чтобы создать разрешенную службу.
- Все эти команды обязательно подтверждаются также вводом пароля суперпользователя.
- После внесения изменений вам необходимо перезагрузить брандмауэр, чтобы применить настройки: firewall-cmd —reload.
На этом все подготовительные шаги завершены — вы можете приступить к установке надстроек для правильной работы Asterisk и быть уверенным, что при добавлении файлов не возникнет никаких ошибок.
Шаг 2: Добавление дополнительных компонентов
Как известно, Asterisk не будет работать на сервере, если вы предварительно не установите важные утилиты, отвечающие за нормализацию взаимодействия с драйверами и интерфейсами TDM. Драйверы карты реализованы через DAHDI, и для работы интерфейсов требуется LibPRI. Загрузка и сборка этих компонентов займет много времени и потребует активного подключения к Интернету, так что подумайте об этом, прежде чем приступить к делу.
- Начнем с DAHDI. Загрузите архив с файлами, введя команду wget https://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/dahdi-linux-complete-current.tar.gz.
- Загрузка займет около минуты, так как архивы не передают данные так быстро, как хотелось бы. Затем вставьте tar -xvf dahdi-linux-complete-current.tar.gz, чтобы распаковать полученные объекты.
- Это делается с помощью аргумента sudo, поэтому подтвердите его паролем суперпользователя.
- После завершения распаковки войдите в полученную папку через cd dahdi-linux-complete-*.
- Начните компилировать здесь, набрав sudo make.
- После этого остается только запустить установку: sudo make install.
- При желании вы можете ввести sudo make config, чтобы проверить текущие настройки.
- Выйдите из исходного каталога с помощью компакт-диска чтобы продолжить установку следующей утилиты.
- Принцип установки LibPRI почти такой же, как только что обсужденный, и различия наблюдаются только в ссылках и именах каталогов. Все начинается с восстановления архива:
wget https://downloads.asterisk.org/pub/telephony/libpri/libpri-current.tar.gz.
- Затем распаковываем: sudo tar -xvf libpri-current.tar.gz.
- После успешного извлечения вам необходимо получить доступ к полученному каталогу через cd libpri-*.
- Начните сборку утилиты sudo make здесь.
- Когда закончите, установите библиотеку, набрав sudo make install.
- Оставьте текущую папку (cd ..), потому что она нам больше не понадобится.
Весь процесс загрузки и компиляции этих программ займет около получаса, что связано с огромным объемом архивов и их длительной распаковкой. Если вы все сделали правильно, никаких ошибок при этом возникнуть не должно.
Шаг 3: Инсталляция Asterisk
пришло время установить инструмент компьютерной телефонии Asterisk, так как все необходимые вспомогательные компоненты уже добавлены на сервер. Программное обеспечение распространяется в виде архива TAR.GZ на официальном сайте, его установка осуществляется следующим образом:
- В Терминале введите wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-13-current.tar.gz, чтобы загрузить последнюю стабильную версию инструмента. Вы можете заменить ссылку, если хотите получить другую сборку, предварительно скопировав ее с официального сайта.
- Аналогичным образом распакуйте файлы, написав sudo tar -xvf asterisk — * .Tar.gz.
- Переместитесь через cd asterisk- * в результирующую директорию.
- Встроенный скрипт ./contrib/scripts/install_prereq install используется для установки зависимостей.
- Затем вставьте вторую аналогичную команду ./contrib/scripts/install_prereq install-unpackaged.
- Когда закончите, удалите все оставшиеся ненужные файлы sudo make distclean.
- Если вы заранее знаете, что вам нужно будет работать с файлами MP3, вам необходимо добавить соответствующую библиотеку, набрав ./contrib/scripts/get_mp3_source.sh.
- Осталось только создать конфигурацию для исходных файлов ./configure —prefix = / usr —sysconfdir = / etc —localstatedir = / var —libdir = / usr / lib64 —with-dahdi —with- pri — -with-iconv —with-libcurl —with-speex —with-mysqlclient.
- Запустите окно конфигурации самой утилиты через sudo make menuselect и установите там параметры в соответствии с вашими потребностями.
- Вы уже знаете, что после распаковки и настройки исходников они компилируются. Повторите команды ниже одну за другой, чтобы завершить эту операцию.
sudo make
установить
сделать конфигурацию
делать образцы
Шаг 4: Базовая настройка и запуск
Сегодня мы не будем останавливаться на общей настройке Asterisk, поскольку она не входит в тематику материала и осуществляется индивидуально каждым системным администратором, начиная с самого сервера и потребностей использования компьютерной телефонии. Однако есть основные параметры, которые необходимо указать для запуска Asterisk, чтобы проверить его работоспособность. Рассмотрим их подробнее.
- Запустите конфигурационный файл /etc/asterisk/asterisk.conf через удобный текстовый редактор.
- Вставьте в него следующие строки.
runuser = звездочка
rungroup = звездочка
defaultlanguage = ru
language_documentation = ru_RU - Сохраните изменения и выйдите из объекта.
- Мы только что указали главного пользователя утилиты в файле, поэтому нам нужно добавить его в систему. Это делается с помощью sudo useradd asterisk -m.
- Затем установите разрешения для папки, вводя команды ниже одну за другой.
chown -R звездочка: звездочка / var / run / звездочка
chown -R звездочка: звездочка / etc / звездочка
chown -R звездочка: звездочка / var / {библиотека, журнал, спул} / звездочка
chown -R звездочка: звездочка / usr / lib64 / звездочка
chown -R звездочка: звездочка / var / log / звездочка - Когда закончите, проверьте настройки sudo asterisk -c, чтобы убедиться, что утилита работает.
- Остается только запустить Asterisk как службу через systemctl enable asterisk и systemctl start asterisk.
Сегодня вы закончили пошаговое руководство, основная цель которого — показать начинающим пользователям, как установить Asterisk и необходимые вспомогательные компоненты. Вам просто нужно внимательно следить за каждым действием и обращаться к официальной документации утилиты, чтобы получить информацию о неизвестных функциях программы.