Введение
Asterisk — это самая популярная и широко распространенная платформа АТС с открытым исходным кодом, которая поддерживает системы IP-АТС, серверы конференций и шлюзы VoIP. Он используется частными лицами, малыми предприятиями, крупными корпорациями и правительствами по всему миру.
Функции Asterisk включают голосовую почту, музыку на удержании, конференц-связь, вызовы в очереди, запись звонков, интерактивный голосовой ответ и многое другое.
Это руководство проведет вас через шаги, необходимые для установки Asterisk 16 в Ubuntu 18.04.
Если вы хотите установить Asterisk на удаленный сервер, продолжайте читать, в противном случае пропустите первый абзац «Подключение к серверу» и читайте следующий.
Подключение к серверу
Чтобы получить доступ к серверу, вам нужно знать IP-адрес. Вам также потребуется ваше имя пользователя и пароль для аутентификации. Чтобы подключиться к серверу как root, введите следующую команду:
ssh root@IP_DEL_SERVER
Далее вам нужно будет ввести пароль пользователя root.
Если вы не используете пользователя root, вы можете войти под другим именем пользователя с помощью той же команды, а затем изменить root на свое имя пользователя:
ssh nome_utente@IP_DEL_SERVER
Затем вам будет предложено ввести пароль пользователя.
Стандартный порт для подключения по ssh — 22, если ваш сервер использует другой порт, вам нужно будет указать его с помощью параметра -p, затем введите следующую команду:
ssh nome_utente@IP_DEL_SERVER -p PORTA
Предпосылки
Прежде чем продолжить работу с этим учебным пособием, убедитесь, что вы вошли в систему как пользователь с привилегиями sudo.
Обновите свою систему Ubuntu и установите следующие пакеты, необходимые для загрузки и компиляции Asterisk:
sudo apt update && sudo apt upgrade
sudo apt install wget build-essential subversion
Звездочка скачать
Мы загрузим исходный код Asterisk в каталог /usr/src
, который является общим местом для размещения исходных файлов, перейдите в каталог с помощью:
cd /usr/src/
Загрузите последнюю версию Asterisk 16 с помощью следующей команды wget:
sudo wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-16-current.tar.gz
После завершения загрузки распакуйте архив с помощью:
sudo tar zxf asterisk-15-current.tar.gz
Прежде чем перейти к следующим шагам, убедитесь, что вы перешли в исходный каталог Asterisk, набрав:
cd asterisk-16.*/
Установите зависимости Астериска
Следующий скрипт загрузит исходники MP3, необходимые для заполнения модуля MP3 и использования файлов MP3 в Asterisk:
sudo contrib/scripts/get_mp3_source.sh
Используйте сценарий install_prereq
для устранения всех зависимостей в вашей системе Ubuntu:
sudo contrib/scripts/install_prereq install
Скрипт установит все необходимые пакеты и в случае успешного завершения выведет следующее сообщение:
#############################################
## install completed successfully
#############################################
Установить Астериск
Сценарий configure
выполнит серию проверок, чтобы убедиться, что все зависимости в вашей системе присутствуют. Запустите сценарий, набрав:
sudo./configure
После успешного завершения вы увидите следующий вывод:
configure: Menuselect build configuration successfully completed.$$$$$$$$$$$$$$$=...$7$7...7$$7:..$$:.,$7.7.$7. 7$$$$.$$77..$$. $$$$$.$$$7..7$.?. $$$$$.?. 7$$$.
$.$..$$$7. $$$$7.7$$$..$$$..777..$$$$$$77$$$77$$$$$7. $$$,
$$$~.7$$$$$$$$$$$$$7..$$$..$$7.7$$$$$$$7: ?$$$.
$$$ ?7$$$$$$$$$$I.$$$7
$$$.7$$$$$$$$$$$$$$$$:$$$.
$$$ $$$$$$7$$$$$$$$$$$$.$$$.
$$$ $$$ 7$$$7.$$$.$$$.
$$$$ $$$$7.$$$.
7$$$7 7$$$$ 7$$$
$$$$$ $$$
$$$$7. $$ (TM)
$$$$$$$..7$$$$$$ $$
$$$$$$$$$$$$7$$$$$$$$$.$$$$$$
$$$$$$$$$$$$$$$$.
configure: Package configured for:
configure: OS type: linux-gnu
configure: Host CPU: x86_64
configure: build-cpu:vendor:os: x86_64: pc: linux-gnu:
configure: host-cpu:vendor:os: x86_64: pc: linux-gnu:
Следующим шагом является выбор модулей, которые вы хотите скомпилировать и установить. Войдите в систему Menuselect, набрав:
sudo make menuselect
Мы уже загрузили исходные файлы MP3, и теперь нам нужно указать Asterisk создать модуль MP3, выбрав format_mp3
.
Когда закончите, нажмите F12
, чтобы сохранить и выйти, или перейдите к кнопке « Save and Exit
» и нажмите Enter
.
Теперь мы можем запустить процесс сборки с помощью команды make
:
sudo make -j2
Компиляция может занять некоторое время, в зависимости от вашей системы. Вы можете изменить флаг -j
в зависимости от количества ядер процессора.
После завершения процесса компиляции вам будет представлено следующее сообщение:
+--------- Asterisk Build Complete ---------+
+ Asterisk has successfully been built, and +
+ can be installed by running: +
+ +
+ make install +
+-------------------------------------------+
Как сказано в сообщении выше, следующим шагом будет установка Asterisk и ее модулей, набрав:
sudo make install
Когда установка завершится, скрипт отобразит следующее сообщение:
+---- Asterisk Installation Complete -------+
+ +
+ YOU MUST READ THE SECURITY DOCUMENT +
+ +
+ Asterisk has successfully been installed. +
+ If you would like to install the sample +
+ configuration files (overwriting any +
+ existing config files), run: +
+ +
+ For generic reference documentation: +
+ make samples +
+ +
+ For a sample basic PBX: +
+ make basic-pbx +
+ +
+ +
+----------------- or ---------------------+
+ +
+ You can go ahead and install the asterisk +
+ program documentation now or later run: +
+ +
+ make progdocs +
+ +
+ **Note** This requires that you have +
+ doxygen installed on your local system +
+-------------------------------------------+
Теперь, когда у нас установлен Asterisk, нам нужно установить примеры файлов конфигурации.
Установите общие файлы конфигурации со справочной документацией, набрав:
sudo make samples
Или установите базовые файлы конфигурации АТС:
sudo make basic-pbx
Последний шаг — установить сценарий инициализации Asterisk, набрав:
sudo make config
Также рекомендуется запустить ldconfig
для обновления кэша разделяемой библиотеки:
sudo ldconfig
Создайте пользователя Астериск
По умолчанию Asterisk запускается от имени пользователя root. Из соображений безопасности мы создадим нового системного пользователя и настроим Asterisk для работы от имени вновь созданного пользователя.
Чтобы создать нового системного пользователя с именем asterisk
, выполните следующую команду:
sudo adduser --system --group --home /var/lib/asterisk --no-create-home --gecos "Asterisk PBX" asterisk
Чтобы настроить Asterisk для запуска от имени пользователя asterisk
, откройте файл /etc/default/asterisk
и раскомментируйте следующие две строки:
sudo nano /etc/default/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/lib/asterisk /etc/asterisk
sudo chmod -R 750 /var/{lib,log,run,spool}/asterisk /usr/lib/asterisk /etc/asterisk
Запустить Астериск
Теперь, когда у нас все настроено, мы можем запустить службу Asterisk с помощью следующей команды:
sudo systemctl start asterisk
Чтобы убедиться, что Asterisk работает, подключитесь к интерфейсу командной строки Asterisk (CLI), набрав:
sudo asterisk -vvvr
Будет отображено стандартное приглашение Asterisk CLI:
Asterisk 16.8.0, Copyright (C) 1999 - 2018, Digium, Inc. and others.
Created by Mark Spencer <[email protected]>
Asterisk comes with ABSOLUTELY NO WARRANTY; type 'core show warranty' for details.
This is free software, with components licensed under the GNU General Public
License version 2 and other licenses; you are welcome to redistribute it under
certain conditions. Type 'core show license' for details.
=========================================================================
Connected to Asterisk 16.8.0 currently running on TEST-SERVER-1 (pid = 24291)
SERVER_NAME*CLI>
Последний шаг — разрешить запуск службы Asterisk при запуске с помощью:
sudo systemctl enable asterisk
Настроить брандмауэр
Брандмауэр защитит ваш сервер от нежелательного трафика.
Если на вашем сервере не настроен брандмауэр, вы можете ознакомиться с нашим руководством по настройке брандмауэра с помощью ufw в Ubuntu.
По умолчанию SIP использует порт UDP 5060, чтобы открыть выполнение порта:
sudo ufw allow 5060/udp
Если вы включили протокол реального времени (RTP), вам также необходимо открыть следующий диапазон портов:
sudo ufw allow 10000:20000/udp
Не стесняйтесь настраивать брандмауэр в соответствии с вашими потребностями.
Вывод
В этом руководстве мы показали вам, как установить последнюю версию Asterisk из исходного кода в вашей системе Ubuntu.
Теперь вы должны проверить документацию Asterisk и узнать больше о том, как настроить и использовать Asterisk.