суббота, 3 августа 2013 г.

Установка Asterisk PBX 11 Debian + "Checking write permission for gui folder"

Установка проводится по мануалу отсюда, на всякий случай скопирую для себя.

Добавляем в  /etc/apt/sources.list репозиторий установки програмного обеспечения:


deb http://mirror.yandex.ru/debian squeeze main contrib non-free

Устанавливаем необходимые зависимости для сборки Asterisk командой:


apt-get install build-essential linux-headers-`uname -r` g++ libncurses-dev libxml2-dev subversion libmysqlclient-dev

Переходим в каталог /usr/src, создаем папку asterisk-src, в которую мы будем качать и распаковывать исходники нужных программ, а также переходим в эту папку:




cd /usr/src/
mkdir asterisk-src
cd asterisk-src/

Скачиваем исходники Asterisk с оффициального сайта:





wget http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk-1.6.2.22.tar.gz
wget http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/dahdi-linux-complete-2.6.1+2.6.1.tar.gz
wget http://downloads.asterisk.org/pub/telephony/libpri/libpri-1.4.12.tar.gz
wget http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk-addons-1.6.2.4.tar.gz



Компилируем Asterisk в следующем порядке:
Устанавливаем сначала Dahdi камандами:



cd dahdi-linux-complete-2.6*
make all && make install && make config

Устанавливаем затем Libpri командами:



cd ../libpri-1.4.12*
make && make install

Устанавливаем сам Asterisk командами (make menuselect - использовать, если необходимо отключить, включить какие-либо модули):







cd ../asterisk-1.6.2.22
./configure
make menuselect
make && make install
make samples
make config

Устанавливаем Asterisk-addons командами:





cd ../asterisk-addons-1.6.2.4
./configure
make && make install
make samples

Asterisk будет компилироваться довольно-таки продолжительное время, сделайте чашечку чая либо коффе и отдохните.
Скачиваем и распаковываем дополнительные звуки с оффициального сайта камандами:



cd /var/lib/asterisk/sounds
wget -O - http://downloads.asterisk.org/pub/telephony/sounds/asterisk-core-sounds-ru-alaw-current.tar.gz | tar xvfz -


Создаём пользователя Asterisk под которым наша VOIP телефония будет работать:


adduser asterisk --disabled-password --no-create-home --gecos "asterisk PBX user"

В файле /etc/init.d/asterisk необходимо расскоментировать пользователя и группу под которым будет запускатся наш Asterisk
было:



#AST_USER="asterisk"
#AST_GROUP="asterisk"
стало:



AST_USER="asterisk"
AST_GROUP="asterisk"

Изменяем права для запуска под пользователем Asterisk на использование следующих файлов:
Выполняем комманды:















chown -R asterisk:asterisk /var/lib/asterisk
chown -R asterisk:asterisk /var/log/asterisk
chown -R asterisk:asterisk /var/run/asterisk
chown -R asterisk:asterisk /var/spool/asterisk
chown -R asterisk:asterisk /usr/lib/asterisk
chown -R asterisk:asterisk /dev/dahdi
chmod -R u=rwX,g=rX,o= /var/lib/asterisk
chmod -R u=rwX,g=rX,o= /var/log/asterisk
chmod -R u=rwX,g=rX,o= /var/run/asterisk
chmod -R u=rwX,g=rX,o= /var/spool/asterisk
chmod -R u=rwX,g=rX,o= /usr/lib/asterisk
chmod -R u=rwX,g=rX,o= /dev/dahdi
chown -R root:asterisk /etc/asterisk
chmod -R u=rwX,g=rX,o= /etc/asterisk

Перезагружаем asterisk коммандой:


/etc/init.d/asterisk restart

Для проверки работоспособности asterisk зайдем в консоль прокси сервера командой и выполним команду:



rasterisk
sip show peers

Вывод команды:

Name/username              Host            Dyn Nat ACL Port     Status
0 sip peers [Monitored: 0 online, 0 offline Unmonitored: 0 online, 0 offline]


Asterisk  установлен. Далее можно переходить к его настройке.

Далее нужно установить Asterisk GUI, для этого:

svn co svn.digium.com/svn/asterisk-gui/branches/2.0 asterisk-gui
cd asterisk-gui
./configure && make && make install
cd ..



После того как процесс сборки завершился, отредактируем два конфигурационных файла:

/etc/asterisk/manager.conf должен выглядеть примерно так:
[general]
enabled = yes
webenabled = yes
port = 5038
bindaddr = 127.0.0.1
[admin]
secret = 123456
read = system,call,log,verbose,agent,user,config,dtmf,reporting,cdr,dialplan
write = system,call,agent,user,config,command,reporting,originate

А /etc/asterisk/http.conf — так:
[general]
enabled = yes
enablestatic = yes
bindaddr = 0.0.0.0
redirect = / /static/config/cfgbasic.html
[post_mappings]
backups = /var/lib/asterisk/gui_backups

Перезапускаем asterisk:
 

/etc/init.d/asterisk start
 

Входим на веб-мордочку по адресу

http://server_ip_address:8088

!!! Если по окончании установки, при входе в GUI имеем зависание на следующем сообщении: "Checking write permission for gui folder"

то:

Сначала заменить строчку в этом файле

/var/lib/asterisk/static-http/config/js/astman.js
   
timeout : '60000' ,
   
на

timeout : '6' ,

Если не помогло, тупо сбросить все права

sudo chown -R asterisk:asterisk /var/lib/asterisk/
sudo chmod -R 777 /var/lib/asterisk/
sudo chown -R asterisk:asterisk /etc/asterisk/
sudo chmod -R 777 /etc/asterisk/


Все, после перелогина зависания быть не должно.