С ресурса http://www.ubuntu.com забираю образ:
Ubuntu Server 14.04.3 LTS
Установку проводим на VMWare 5.5.0
Создаём виртуальную машину:
- Выбираем Русский Language
- Install Ubuntu Server
- language to use for the installation, выбираем English
- list of countries, выбираем Russian Federation
- Detect keyboard layout: No
- Layout of keyboards: Russian
- Keyboard layout: Russian
- Method of toggling: Alt+Shift
После установки ругнулась что не работает DHCP.
Выставляем IP настройки вручную.
Вводим hostname
Domain name
Имя пользователя
Логин asteriskpbx
Пароль
Encrypt home directory - NO
Вводим таймзону Moscow+00
- Partitions disks: оставляем по умолчанию Use entire disk and set up LVM
- Выбираем Disk Partition
- Последнее подтверждение перед изменениями на диске.
- No automatic updates
- Отметить на установку OpenSSH server
- Install the GRUB bootloader - YES
Задаём пароль для рута:
sudo passwd root
Но все установки нужно делать из под учетки asteriskpbx
Устанавливаем обновления на Ubuntu Server system:
sudo apt-get update
Ребутаемся:
sudo shutdown -r now
sudo apt-get install ntp
Рестартуем NTP:
sudo /etc/init.d/ntp restart
Для успешной установки Asterisk system необходимо предварительно установить:
sudo apt-get install build-essential subversion libncurses5-dev libssl-dev libxml2-dev libsqlite3-dev uuid-dev vim-nox
mkdir -p ~/src/asterisk-complete/asterisk
Создастся директория
/root/src/asterisk-complete/asterisk
При установке мы будем следовать следующему порядку:
1. DAHDI - Digium Asterisk Hardware Device Interface - интерфейс для взаимодействия Asterisk с telephony hardware. Его установка необходима т.к. от него зависит множество модулей.
2. LibPRI - это библиотека для поддержки ISDN (PRI and BRI). Его установка рекомендуется.
3. Asterisk
Установка dependency для DAHDI
sudo apt-get install linux-headers-`uname -r`
Установка DAHDI
Устанавливать следует последнюю актуальную версию.
cd ~/src/asterisk-complete/ mkdir dahdi cd dahdi/ wget http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/dahdi-linux-complete-2.10.2+2.10.2.tar.gz tar -zxvf dahdi-linux-complete-2.10.2+2.10.2.tar.gz cd dahdi-linux-complete-2.10.2+2.10.2 make all sudo make install sudo make config
Установка LibPRI
Устанавливать следует последнюю актуальную версию. cd ~/src/asterisk-complete/ mkdir libpri cd libpri/ wget http://downloads.asterisk.org/pub/telephony/libpri/libpri-1.4-current.tar.gz tar -zxvf libpri-1.4-current.tar.gz cd libpri-1.4.15 make sudo make install
Установка Asterisk
cd ~/src/asterisk-complete/asterisk wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-11-current.tar.gz tar zxvf asterisk-11-current.tar.gz cd asterisk-11.19.0 ./configure make sudo make install sudo make config
Установка производилась под пользователем vs.
Посмотрим текущих юзеров и группы:
cut -d: -f1 /etc/passwd compgen -g compgen -u
В целях безопасности:
sudo chown -R asteriskpbx:asteriskpbx /var/lib/asterisk/ sudo chown -R asteriskpbx:asteriskpbx /var/spool/asterisk/ sudo chown -R asteriskpbx:asteriskpbx /var/log/asterisk/ sudo chown -R asteriskpbx:asteriskpbx /var/run/asterisk/
Также правим файл:
/etc/udev/rules.d/dahdi.rules
Там правим строку
SUBSYSTEM=="dahdi", OWNER="asteriskpbx", GROUP="asteriskpbx", MODE="0660"
Для правильной работы Asterisk нам необходимо создать несколько конфигурационных файлов.
Вообще, для создания файлов можно запустить команду sudo make samples, но данная команда создаёт конфигурационные файлы для множества модулей, которые нам никогда не понадобятся, поэтому мы всё сделаем вручную.
Создаём рабочую директорию:
sudo mkdir -p /etc/asterisk/ sudo chown asteriskpbx:asteriskpbx /etc/asterisk/
cp ~/src/asterisk-complete/asterisk/asterisk-11.19.0/configs/indications.conf.sample /etc/asterisk/indications.conf
cp ~/src//asterisk-complete/asterisk/asterisk-11.19.0/configs/asterisk.conf.sample /etc/asterisk/asterisk.conf
После копирования сразу правим в этом файле две строки:
runuser=asteriskpbx
rungroup=asteriskpbx
Это есть минимальный конфиг.
Запустим Asterisk:
/usr/sbin/asterisk -cvvv
Проверить установленные модули:
module show
Собственно это демонстрирует Asterisk в минимальной установке, т.е. без единого рабочего модуля.
Остановим всё:
core stop now
создаём файл:
echo > /etc/asterisk/modules.conf
Далее делаем его содержимое:
; The modules.conf file, used to determine which modules Asterisk should load (or ; not load. ; [modules] autoload=yes ; Resource modules noload => res_speech.so noload => res_phoneprov.so noload => res_ael_share.so noload => res_clialiases.so noload => res_adsi.so ; PBX modules noload => pbx_ael.so noload => pbx_dundi.so ; Channel modules noload => chan_oss.so noload => chan_mgcp.so noload => chan_skinny.so noload => chan_phone.so noload => chan_agent.so noload => chan_unistim.so noload => chan_alsa.so ; Application modules noload => app_nbscat.so noload => app_amd.so noload => app_minivm.so noload => app_zapateller.so noload => app_ices.so noload => app_sendtext.so noload => app_speech_utils.so noload => app_mp3.so noload => app_flash.so noload => app_getcpeid.so noload => app_setcallerid.so noload => app_adsiprog.so noload => app_forkcdr.so noload => app_sms.so noload => app_morsecode.so noload => app_followme.so noload => app_url.so noload => app_alarmreceiver.so noload => app_disa.so noload => app_dahdiras.so noload => app_senddtmf.so noload => app_sayunixtime.so noload => app_test.so noload => app_externalivr.so noload => app_image.so noload => app_dictate.so noload => app_festival.so
Команды:
/usr/sbin/asterisk -c
module show
Покажут нам что загрузилось множество модулей.
; musiconhold.conf [general] [default] mode=files directory=moh
menuselect - это текстовое меню в Asterisk, в котором мы задаём какие модули компилировать и устанавливать. Также тут можно поставить флаги, которые нам помогут в дебаге, оптимизации, и т.д.
menuselect может работать в двух интерфейсах:
- curses - чернобелый
- newt - цветной
Для работы newt нужно дополнительно установить:
sudo apt-get install libnewt-dev
cd ~/src/asterisk-complete/asterisk/asterisk-11.19.0/ cd menuselect make clean ./configure cd .. make menuselect
Для использования menuselect
cd ~/src/asterisk-complete/asterisk/asterisk-11.19.0/
make menuselect
Откроется меню. Там мы можем выбрать всё что нам нужно, далее жмем Esc и сохраняемся.
sudo make install sudo chown -R asteriskpbx:asteriskpbx /var/lib/asterisk/sounds/
При установке Asterisk на несколько машин, возможно создать скрипты и автоматизировать процесс menuselect.
Мы установили Asterisk в базовой комплектации.
/usr/sbin/asterisk
/usr/sbin/asterisk -r
Добавить комментарий