Астериск настраивал всегда руками. Тут захотелось цивилизации и решил поставить FreePBX.
Пройдемся по процессу установки.
ОС будет Ubuntu server 12.10 установку не будем описывать она простая.
Установка FreePBX
Обновляем репозитории и Устанавливаем Apache, Mysql, PHP, asterisk
apt-get update
apt-get install lamp-server^ libmysqlclient18 asterisk-dev asterisk-mysql asterisk-moh-opsound-wav php-db selinux-utils audiofile-tools bison libset-intspan-perl curl openssl php5-gd lame sox libxml2 subversion dahdi-* linux-headers-`uname -r`
В процессе установки мастер попросит задать пароль для mysql сервера. Пустым пароль оставлять не надо!
Загрузка и создание базы.
svn co http://svn.freepbx.org/freepbx/branches/$fpbxver /usr/src/freepbx
cd /usr/src/freepbx
mysqladmin create asterisk -p${passwd}
mysqladmin create asteriskcdrdb -p${passwd}
mysql asterisk < SQL/newinstall.sql -p${passwd}
mysql asteriskcdrdb < SQL/cdr_mysql_table.sql -p${passwd}
echo "GRANT ALL PRIVILEGES ON asterisk.* TO asteriskuser@localhost IDENTIFIED BY '${passwd}';" > /tmp/tmpfbpx
echo "GRANT ALL PRIVILEGES ON asteriskcdrdb.* TO asteriskuser@localhost IDENTIFIED BY '${passwd}';" >> /tmp/tmpfbpx
echo "flush privileges;" >> /tmp/tmpfbpx
echo "quit" >> /tmp/tmpfbpx
mysql -p${passwd} < /tmp/tmpfbpx
Установка FREEPBX
Запускаем установку (заполняем параметры или оставляем по умолчанию):
rm /var/www/index.html
./install_amp --password=${passwd} --webroot=/var/www
Подтверждаем параметры
adduser www-data asterisk
/etc/init.d/apache2 restart
wget http://127.0.0.1/admin/config.php# -O /dev/null
Подготовка WEB сервера
Изменение конфигурации apache2, для корректной работы с русским языком, а так-же меняем пользователя www-data от имени которого стартует apache2 на пользователя asterisk
locale-gen ru_RU
perl -pi -e 's/#AddDefaultCharset UTF-8/AddDefaultCharset UTF-8/g' /etc/apache2/conf.d/charset
perl -pi -e 's/export APACHE_RUN_USER=www-data/export APACHE_RUN_USER=asterisk/g' /etc/apache2/envvars
perl -pi -e 's/export APACHE_RUN_GROUP=www-data/export APACHE_RUN_GROUP=asterisk/g' /etc/apache2/envvars
chown -R asterisk:asterisk /var/lock/apache2
/etc/init.d/apache2 restart
На этом базовый функционал готов, можно подключиться к серверу по
http://адрес сервера логин и пароль: admin
После запуска и создание extension не в как не в какую не хотел регистрироваться телефон. В FREEPBX была ошибка:
Retrieve failed to sym link: /etc/asterisk/sip_notify.conf from core/etc
Retrieve failed to sym link: /etc/asterisk/sip.conf from core/etc
и т.д.
Лечиться это простым удалением Conf файлов на которые он ругается и перезапуск сервера.
Информацию брал с:
http://habrahabr.ru/post/171163/
http://help.ubuntu.ru/wiki/freepbx