Установка Asterisk 11 из исходных кодов с нуля
Итак, в этой заметке хочу описать процесс установки Asterisk версии 11 (а точнее Asterisk 11.7.0)
Часть информации взята из официального Wiki, и реализована на практическом примере. В данном примере не рассматривается вопрос установки библиотек libpri или каких либо других модулей
Для старта я использовал свежую версию Centos 6.6 i386 — minimal, чистая установка по-умолчанию. Дальнейшее руководство подразумевает, что на сервере доступна сеть и отключен SELinux.
1. Для начала доведем наш Centos до кондиции — доставим необходимые пакеты и обновимся
[root@centostest /]# yum groupinstall "Base" "Development Tools" "Networking tools" "System management" [root@centostest /]# yum install compat-libtermcap ncurses-devel libxml2-devel sqlite-devel [root@centostest /]# yum update
2. Создадим себе пользователя, где будем производить различные действия
[root@centostest /]# adduser user
3. Теперь нам нужно скачать исходники свежей версии Asterisk 11
[root@centostest]# cd /home/user [root@centostest user]# wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-11-current.tar.gz
Далее распакуем дистрибутив
[root@centostest user]# tar -xzvf asterisk-11-current.tar.gz
4. Начинаем компилировать систему
[root@centostest user]# cd asterisk-11.7.0/
Запустим конфигуратор. Все зависимости должны быть соблюдены, если нет — необходимо доставить не достающие библиотеки (если у вас иные шаги в пункте 1. )
[root@centostest asterisk-11.7.0]# ./configure
Запускаем меню выбора компонентов и модулей. В данном руководстве рассматривается чистая установка, мы добавим только звуковые файлы
Нас интересуют следующие меню : Core Sound Packages, выбираем внутри EN и RU пакеты с кодаками WAV ULAW ALAW GSM
[root@centostest asterisk-11.7.0]# make menuselect
Далее, сделав выбор, выходим из меню клавишей ESC. На вопрос о сохранении изменений жмем S
5. Компилируем
[root@centostest asterisk-11.7.0]# make
На данном этапе инсталлятор скачает выбранные звуковые файлы или модули
[root@centostest asterisk-11.7.0]# make install
6. Установим конфигурационные файлы по умолчанию (они будут тут — /etc/asterisk)
[root@centostest asterisk-11.7.0]# make samples
Установим скрипты автозапуска
[root@centostest asterisk-11.7.0]# make config
а так же систему ротации логов
[root@centostest asterisk-11.7.0]# make install-logrotate
7. На данном этапе простая установка завершена и Asterisk может быть запущен командой service asterisk start, однако, не рекомендуется запускать его используя root привилегии, поэтому сделаем для него пользователя и установим необходимые разрешения
[root@centostest asterisk-11.7.0]# adduser -M -U asterisk
Зададим права на папки и файлы
[root@centostest asterisk-11.7.0]# chown -R asterisk:asterisk /var/run/asterisk/ [root@centostest asterisk-11.7.0]# chown -R asterisk:asterisk /etc/asterisk/ [root@centostest asterisk-11.7.0]# chown -R asterisk:asterisk /usr/lib/asterisk/ [root@centostest asterisk-11.7.0]# chown -R asterisk:asterisk /var/lib/asterisk/ [root@centostest asterisk-11.7.0]# chown -R asterisk:asterisk /var/log/asterisk/
8. Отредактируем конфигурацию asterisk
[root@centostest asterisk-11.7.0]# vi /etc/asterisk.conf
уберите комментарии перед этими строчками
runuser = asterisk rungroup = asterisk
сохраните файл (:wq)
9. Теперь asterisk готов к запуску. Выполните команду
[root@centostest asterisk-11.7.0]# service asterisk start
10. Проверьте работу через CLI
root@centostest asterisk-11.7.0]# asterisk -rvvvv Privilege escalation protection disabled! See https://wiki.asterisk.org/wiki/x/1gKfAQ for more details. Asterisk 11.7.0, Copyright (C) 1999 - 2013 Digium, Inc. and others. Created by Mark Spencer <markster@digium.com> 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. ========================================================================= Running as user 'asterisk' Running under group 'asterisk' Connected to Asterisk 11.7.0 currently running on centostest (pid = 31425) centostest*CLI>