Установка Asterisk LTS на Ubuntu.
Рассмотрим установку Asterisk LTS на Ubuntu.
Создаем временный каталог для файлов Asterisk и переходим в него
1 |
mkdir /root/asteriskDIR |
1 |
cd /root/asteriskDIR |
Скачиваем LTS версию Asterisk с оф сайта.
1 |
wget http://downloads.asterisk.org/pub/telephony/certified-asterisk/certified-asterisk-1.8.15-current.tar.gz |
Устанавливаем необходимые компоненты для сборки Asterisk
1 |
apt-get install libncurses5-dev openssl libssl-dev zlib1g zlib1g-dev mpg123 linux-headers-`uname -r` build-essential mysql-server libmysqlclient15-dev php5 php5-cli php5-mysql php5-gd php-pear apache2 curl sox bison flex cpp g++ gcc make libauthen-pam-perl libio-pty-perl libnet-ssleay-perl libxml2 libxml2-dev libtiff4 libtiff4-dev libaudiofile-dev subversion libsqlite3-dev |
Скачиваем модуль dadhi для Asterisk
1 |
wget http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/dahdi-linux-complete-current.tar.gz |
Распаковываем модуль
1 |
tar xzvf ./dahdi-linux-complete-current.tar.gz |
Переходим в каталог с модулем
1 |
cd dahdi-linux-complete-2.9.1.1+2.9.1 |
Устанавливаем модуль
1 |
sudo make all |
1 |
sudo make install |
1 |
sudo make config |
Переходим в каталог с временными файлами Asterisk
1 |
cd /root/asteriskDIR |
Скачиваем библиотеку LIB PRI
1 |
wget http://downloads.asterisk.org/pub/telephony/libpri/libpri-1.4-current.tar.gz |
Распаковываем библиотеку
1 |
tar xzvf ./libpri-1.4-current.tar.gz |
Переходим в каталог с библиотекой
1 |
cd ./libpri-1.4.14/ |
Устанавливаем библиотеку
1 |
sudo make |
1 |
sudo make install |
Переходим в каталог с временными файлами Asterisk
1 |
cd /root/asteriskDIR |
Скачиваем модуль SpanDSP
1 |
wget http://www.soft-switch.org/downloads/spandsp/spandsp-0.0.6pre21.tgz |
Распаковываем модуль
1 |
tar xzvf ./spandsp-0.0.6pre21.tgz |
Переходим в каталог с модулем
1 |
cd ./spandsp-0.0.6/ |
Устанавливаем модуль
1 |
./configure |
1 |
sudo make |
1 |
sudo make install |
Переходим в каталог с временными файлами Asterisk
1 |
cd /root/asteriskDIR |
Распаковываем скачанный Asterisk
1 |
tar xzvf ./certified-asterisk-1.8.15-current.tar.gz |
Переходим в каталог с распакованным астериском
1 |
cd ./certified-asterisk-1.8.15-cert5/ |
Запускаем конфигурацию
1 |
./configure |
Запускаем выбор компонентов
1 |
sudo make menuselect |
Если вы делаете установку по ssh, то предварительно должны убедиться, что размер терминала больше, чем 80×25.
Здесь необходимо включить нужные модули для компиляции. К примеру, в разделе Add-ons мы должны включить модули format_mp3, app_mysql, cdr_mysql, т.к. дальше планируется установка панели управления FreePBX.
В разделе Core Sound Packages включаем CORE-SOUNDS-EN-ALAW, CORE-SOUNDS-EN-GSM, CORE-SOUNDS-EN-G729, CORE-SOUNDS-RU-ALAW, CORE-SOUNDS-RU-GSM, CORE-SOUNDS-RU-G729.
Далее в разделе Music On Hold File Packages включаем модуль MOH-OPSOUND-WAV просто для того, чтоб он установился.
После установки эти мелодии можно будет заменить на свои. Последний раздел Extras Sound Packages.
Тут опять же включаем модули для выбранных кодеков ALAW, GSM и G729. Из корневого раздела нажимаем Esc и видим, что нам предложили три варианта выхода. Жмем S для сохранения сделанных изменений.
Добавляем в файл ~/.subversion/servers в секцию global следующие строки (Если используется прокси, если прокси не используется пропускаем этот шаг):
1 2 3 |
http-proxy-host=localhost http-proxy-port=3128 |
Запускаем скрипт
1 |
contrib/scripts/get_mp3_source.sh |
Запускаем установку Asterisk
1 |
sudo make install |
1 |
sudo make samples |
1 |
sudo make config |
Запускаем Asterisk
1 |
sudo /etc/init.d/asterisk start |
Создаем пользователей для Asterisk и раздаем им права
1 |
sudo adduser --system --group --home /var/lib/asterisk --no-create-home --gecos "Asterisk PBX" asterisk |
1 |
sudo adduser asterisk dialout |
1 |
sudo adduser asterisk audio |
1 |
sudo adduser www-data asterisk |
1 |
sudo mkdir -p /var/run/asterisk |
Изменим права на каталоги Asterisk.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
sudo chown -R asterisk:asterisk /var/lib/asterisk sudo chown -R asterisk:asterisk /var/log/asterisk sudo chown -R asterisk:asterisk /var/run/asterisk sudo chown -R asterisk:asterisk /var/spool/asterisk sudo chown -R asterisk:asterisk /usr/lib/asterisk sudo chown -R asterisk:asterisk /dev/dahdi sudo chmod -R u=rwX,g=rX,o= /var/lib/asterisk sudo chmod -R u=rwX,g=rX,o= /var/log/asterisk sudo chmod -R u=rwX,g=rX,o= /var/run/asterisk sudo chmod -R u=rwX,g=rX,o= /var/spool/asterisk sudo chmod -R u=rwX,g=rX,o= /usr/lib/asterisk sudo chmod -R u=rwX,g=rX,o= /dev/dahdi sudo chown -R root:asterisk /etc/asterisk sudo chmod -R u=rwX,g=rX,o= /etc/asterisk |
В файле /etc/default/asterisk раскомментируем две строчки.
1 2 3 |
AST_USER=«asterisk» AST_GROUP=«dialout» |
Это нужно для корректного запуска служб Asterisk
Перезапускаем Asterisk
1 |
sudo /etc/init.d/asterisk restart |
Переходим в каталог с временными файлами Asterisk
1 |
cd /root/asteriskDIR |
Установка FreePBX
Устанавливаем такие необходимые компоненты как веб сервер Apache2 , сервер баз данных Mysql, PHP, и библиотеки для них
1 |
sudo apt-get install libxml2 libxml2-dev libtiff4 libtiff4-dev lame apache2 mysql-server mysql-client php5 php-pear php5-mysql php5-gd openssl libssl-dev linux-source-3.2.0 perl bison libncurses5-dev libaudiofile-dev curl sox libcpan-mini-perl |
Скачиваем панель администрирования FreePBX
1 |
wget http://mirror.freepbx.org/freepbx-2.11.0.25.tgz |
Распаковываем панель администрирования
1 |
tar xzvf ./freepbx-2.11.0.25.tgz |
Переходим в распакованный каталог
1 |
cd ./freepbx/ |
Подключаемся к серверу Mysql и создаем базы данных
1 |
mysql -u root –p |
Далее вводим root пароль
Создаем базы и раздаем привилегии пользователям
1 |
mysql> create database asterisk; |
1 |
mysql> create database asteriskcdrdb; |
1 |
mysql> GRANT ALL PRIVILEGES ON asterisk.* TO asteriskuser@localhost IDENTIFIED BY 'asterpass'; |
1 |
mysql> GRANT ALL PRIVILEGES ON asteriskcdrdb.* TO asteriskuser@localhost IDENTIFIED BY 'asterpass'; |
1 |
mysql> flush privileges; |
1 |
mysql> \q |
Импортируем базу данных freepbx
1 |
mysql -u root -p asterisk < SQL/newinstall.sql |
1 |
mysql -u root -p asteriskcdrdb < SQL/cdr_mysql_table.sql |
Далее изменяем пользователя из под которого запускается веб сервер Apache2
Редактируем файл /etc/apache2/envvars
Правим переменные APACHE_RUN_USER и APACHE_RUN_GROUP.
В нашем случае переменные должны выглядеть так:
1 2 3 |
export APACHE_RUN_USER=asterisk export APACHE_RUN_GROUP=asterisk |
Теперь Apache2 запускается под пользователем Asterisk
Удаляем каталог
1 |
rm -r /var/lock/apache2 |
Перезапускаем Apache2
1 |
sudo service apache2 restart |
Проверяем под каким пользователем запущен Apache2
1 |
ps aux|grep apache |
Изменяем настройки PHP
Редактируем файл /etc/php5/apache2/php.ini и правим лимиты
1 2 3 |
upload_max_filesize=100M memory_limit = 512M |
Перезапускаем веб сервер Apache 2
1 |
sudo service apache2 restart |
Если в нашей системе мы используем прокси сервер, то выполняем следующий шаг, если нет, то пропускаем.
1 |
pear config-set http_proxy http://localhost:3128 |
Конфигурируем базу данных с помощью Pear
1 |
sudo pear install DB |
Создаем каталог для сайта FreePBX
1 |
mkdir /var/www/pbx |
Назначаем пароль для учетной записи Asterisk
1 |
passwd asterisk |
Устанавливаем FreePBX
1 |
./install_amp |
Далее отвечаем на вопросы FreePBX.
Нужно будет ввести логин и пароль для пользователя Asterisk
Пароль root от Mysql
Указать каталог с вебсайтом FreeBPX (/var/www/pbx)
В вопросах про местоположение файлов Asterisk нужно указывать стандартное значение, которое будет указано в вопросе.
Добавить комментарий