Опыт установки Asterisk + FreePBX на сервер Altlinux Light 6 платформы.

 

Часто при повторной установке какой-либо системы либо пакета приходится наступать на одни и те же грабли. Приходится заново читать документацию, разбираться в сообщениях об ошибках. Чтобы упростить процесс установки и облегчить путь идущих за мной, я решил публиковать свой опыт.

Поскольку являюсь старым поклонником Altlinux-а, то установку Asterisk + FreePBX буду производить на него. Не стал дожидаться выхода финального релиза и загрузил бетту Platform6-1.1.7-20110616-server-light-i586-ru-install-cd.iso.

 

Ставлю ее на комп Pentium(R) Dual-Core CPU E5300 @ 2.60GHz, 512 Мб озу, 10 Гб Hdd.

Во время установки выбираем установку сервисов MySQL, почтового сервера, сервера HTTP, остальное по вкусу.

 

Правим один из источников /etc/apt/sources.list.d для того, чтобы выкачивать обновления из депозитария Alilinux.

Делаем обновление система:

apt-get update

apt-get upgrade

 

Попытка поставить из депозитария asterisk 1.8, и на него поставить FreePBX не увенчалась успехом из-за разных пользователей asterisk-а (_asterisk) и FreePBX (asterisk). После долгих мучений, в конце-концов запутался и решил ставить Asterisk из исходников.

 

Для того, чтобы не создавать пользователей Астерикса и скрипты инициализации вручную устанавливаем пакет asterisk-initscript

apt-get install asterisk-initscript

затем правим в файлах /etc/passwd, /etc/group, /etc/init.d/asterisk _asterisk на asterisk.

 

Качаем исходники астерикса asterisk-1.8.5.0.tar.gz и разархивируем их в каталог /usr/src/

 

Чтобы не нарываться на сообщения об ошибках сразу доустанавливаем недостающие пакеты:

apt-get install make gcc cpp4.5 gcc4.5-c++ libxml2-devel ncurses-devel

 

Теперь запускаем команду:

# /usr/src/asterisk-1.8.5.0/configure

# make menuconfig

# make

 

Можно переходить к установке FreePBX.

 

Берем последнюю версию на данный момент freepbx-2.9.0.tar.gz и разархивируем ее в директорию /usr/src/.

 

По требованию инструкции по установке FreePBX INSTALL устанавливаем следующие пакеты:

apt-get install libtiff-devel lame liblame mysql-devel openssl-devel perl-CPAN bison audiofile audiofile-devel sox

apt-get install pear-DB

apt-get install php5-mysql

 

 

Надо подправить параметр data.timezone в файле /etc/php/5.3/cli/php.ini

data.timezone='Europe/Samara'

для своего региона.

Если параметр не установлен, выдается вот такое сообщение об ошибке:

 

PHP Warning: date(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'Europe/Samara' for 'SAMST/4.0/DST' instead in /usr/src/freepbx-2.9.0/amp_conf/htdocs/admin/libraries/utility.functions.php on line 71

 

Создаем базы данных:

mysql_install_db

mysqladmin -u root

mysqladmin create asteriskcdrdb -p

mysql asteriskcdrdb < /usr/src/freepbx-2.9.0/SQL/cdr_mysql_table.sql

mysqladmin create asterisk -p

mysql --user root -p asterisk < /usr/src/freepbx-2.9.0/SQL/newinstall.sql

 

 

mysql --user root

mysql> GRANT ALL PRIVILEGES ON asteriskcdrdb.* TO asteriskuser@localhost IDENTIFIED BY 'amp109';

Query OK, 0 rows affected (0.00 sec)

 

mysql> GRANT ALL PRIVILEGES ON asterisk.* TO asteriskuser@localhost IDENTIFIED BY 'amp109';

Query OK, 0 rows affected (0.00 sec)

 

mysql> quit

 

Прошу заметить что amp109 — это пароль базы данных по умолчанию, каждый набирает свой.

 

Нужно разкомментировать строку с пользователем root в файле

/etc/sudoers

Это необходимо для правильной работы инсталятора FreePBX

 

# User privilege specification

root ALL=(ALL) ALL

 

Теперь запускаем инсталяцию FreePBX

/usr/src/freepbx-2.9.0/install_amp

 

Правим файл конфигурации Апача

/etc/httpd2/conf/httpd2.conf

 

User asterisk

Group asterisk

 

Прописываем доступ к базе данных из Астериска

/etc/asterisk/cdr_mysql.conf

 

[global]

hostname = localhost

dbname=asteriskcdrdb

password = asteriskuser

user = amp109

userfield=1

;port=3306

;sock=/tmp/mysql.sock

 

Редактируем файл /etc/freepbx.conf

 

vi /etc/freepbx.conf

 

<?php

 

$amp_conf['AMPDBUSER'] = asteriskuser;

$amp_conf['AMPDBPASS'] = amp109;

$amp_conf['AMPDBHOST'] = localhost;

$amp_conf['AMPDBNAME'] = asterisk;

$amp_conf['AMPDBENGINE'] = mysql;

$amp_conf['datasource'] = ; //for sqlite3

 

require_once('/var/www/html/admin/bootstrap.php');

 

Для того, чтобы полноценно заработала флешь панель, нужно запустить на компьютере с веб сервером демон:

/var/www/html/panel/op_server.pl -d

 

Всё. FreePBX должен работать. Запускаем браузер, и приступаем к настройкам Астериска.

 

Игорь Головичев, 15.08.2011.

www.myipats.ru

   
© ALLROUNDER