|
Ключ
Эта строка удалена.
Это слово было удалено. Это слово было добавлено.
Эта строка добавлена.
|
Изменения (42)
просмотр истории страницыh3. Установка |
{toc} |
|
Установка Asterisk PBX |
h2. Настройка биллинга Добавьте оборудование в биллинг и запустите Radius по инструкциям раздела [CarbonBilling:Настройка VoIP оборудования в биллинге] h2. Описание При установке использовались следующие реквизиты {color:#0000ff}IP Carbon Billing:10.1.1.1 IP Asterisk:10.1.1.2 Secret:servicem Порты Radius сервера:2812 и 2813{color} {warning}При тестировании по указанной инструкции, серверы должны находиться в одной подсети и иметь статичные уникальные адреса. Тем не менее, в коммерческой эксплуатации это не обязательно. Важно только чтобы сервера имели связь протоколу IPv4{warning} Предполагается что Asterisk установлен на CentOS 6.4. Скачать дистрибутив CentOS 6.4 вы всегда можете с [одного из зеркал на официальном сайте|http://www.centos.org/modules/tinycontent/index.php?id=30] или [с нашего зеркала|http://download5.carbonsoft.ru/carbon_reductor/centos/CentOS-6.6-x86_64-minimal.iso]. h2. Настройка CentOS h3. Настройка сети Предположим что после установки CetOS, сетевой интерфейс получил имя _eth0_ (можно посмотреть в выводе команды *ip a*). # Отредактируйте настройки интерфейса {code:title=/etc/sysconfig/network-scripts/ifcfg-eth0} DEVICE=eth0 IPADDR=10.1.1.2 NETMASK=255.255.0.0 GATEWAY=10.1.0.1 DEFROUTE=yes DNS1=8.8.8.8 DNS2=8.8.4.4 ONBOOT=yes TYPE=Ethernet NM_CONTROLLED=no BOOTPROTO=static |
{code} |
# wget http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk-1.8.17.0.tar.gz # tar xzf asterisk-1.8.17.0.tar.gz # cd asterisk-1.8.17.0 # contrib/scripts/install_prereq install # ./configure # make # make install |
# Примените их {code}/etc/init.d/network restart{code} # Проверьте наличие доступа к сети: {code}ping -c 4 8.8.8.8{code} Если всё в порядке - значит теперь сеть настроена. h3. Установка необходимого ПО Далее потребуется установка дополнительных компонентов для сборки Астериска. Добавьте репозиторий [EPEL|https://fedoraproject.org/wiki/EPEL] и установите необходимые пакеты. |
{code} |
wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm rpm -i epel-release-latest-6.noarch.rpm yum install wget make gcc perl-ExtUtils-Embed perl-CPAN perl-Authen-Radius perl-Time-HiRes perl-YAML {code} h2. Установка Asterisk h3. Установка Radius Для отправки CDR записей на биллиг используется Radius, установите его до сборки Asterisk чтобы он собрался с поддержкой нужного модуля: {code} wget http://docs.carbonsoft.ru/download/attachments/52428850/radiusclient-ng-0.5.6.tar.gz tar zxvf radiusclient-ng-0.5.6.tar.gz cd radiusclient-ng-0.5.6 ./configure make make install {code} h3. Установка Asterisk PBX {code} wget http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk-1.8.17.0.tar.gz tar xzvf asterisk-1.8.17.0.tar.gz cd asterisk-1.8.17.0 cp contrib/dictionary.digium /usr/local/etc/radiusclient-ng/ contrib/scripts/install_prereq install ./configure make make install make config chkconfig asterisk on {code} |
Если Вы новичок установите сразу дефалтные конфиг стандартные конфигурационные файлы. |
{code}# make samples{code} |
{code}make samples{code} |
Установка Perl AGI интерфейса к AGI. |
{code}# wget http://asterisk.gnuinter.net/files/asterisk-perl-1.03.tar.gz |
{code}wget http://search.cpan.org/CPAN/authors/id/J/JA/JAMESGOL/asterisk-perl-1.03.tar.gz |
# tar zxvf asterisk-perl-1.03.tar.gz |
# cd asterisk-perl-1.03 |
# perl Makefile.PL |
# make |
# make test |
# make install{code} |
Устанавливаем perl из пакетов и настраиваем. |
Установите Perl из пакетов и настройте. При установке отдельного пакета он может попросить для тестирования ввести IP и порт Radius сервера биллинга 10.1.1.1:2812 и логин абонента в биллинге с паролем. {note}В зависимости от дистрибутива и окружения, некоторые пакеты могут не устанавливаться из-за зависимостей. Проверяйте вывод каждой команды на предмет ошибок.{note} Запустите CPAN (при первом запуске отвечаем дефолтно на все вопросы) и настройте автоматическую установку зависимостей. Не выходя из шела установите необходимые пакеты. После выйдите командой "q". |
{code}# perl -MCPAN -e shell |
(при первом запуске отвечаем дефолтно на все вопросы) |
o conf build_requires_install_policy yes o conf prerequisites_policy follow o conf commit |
cpan>install Config::IniFiles |
install Crypt::CBC install Crypt::DES install Authen::Radius install Asterisk::AGI |
cpan>q q |
{code} |
Для отправки CDR записей на биллиг используется Radius |
{code} |
# wget http://prdownload.berlios.de/radiusclient-ng/radiusclient-ng-0.5.6.tar.gz # tar zxvf radiusclient-ng-0.5.6.tar.gz # cd radiusclient-ng-0.5.6 # ./configure # ./make # ./make install {code} |
По умолчанию Asterisk не поддерживает авторизацию через Radius, для этого необходимо использовать специальный AGI скрипт основанный на разработке PortaOne, который находится в биллинге |
{code:title=На сервере биллинга} ls -l /app/asr_billing/usr/local/bin/agi-rad-auth.agi scp /app/asr_billing/usr/local/bin/agi-rad-auth.agi root@10.1.1.2:/var/lib/asterisk/agi-bin/ |
{code} |
# ls -l /usr/local/ics/bin/agi-rad-auth.agi # scp /usr/local/ics/bin/agi-rad-auth.agi <адрес сервера астериск>:/var/lib/asterisk/agi-bin/ |
После этого надо дать права на запуск этого файла Asterisk {code:title=На сервере Asterisk} chown asterisk:asterisk /var/lib/asterisk/agi-bin/agi-rad-auth.agi chmod o+x /var/lib/asterisk/agi-bin/agi-rad-auth.agi |
{code} Это скрипт вызывается перед набором номера и если биллинг разрешает звонок то Asterisk двигается дальше по цепочке. |
h3. *Настройка* |
h2. Настройка Asterisk |
|
В файл /etc/asterisk/modules.conf необходимо включить модуль поддержки AGI |
{code}load => res_agi.so{code} |
Примеры настройки: {color:#0000ff}IP Carbon Billing:10.1.1.1{color} {color:#0000ff}IP Asterisk:10.1.1.2{color} {color:#0000ff}Secret:servicem{color} {color:#0000ff}Порты Radius сервера:2812 и 2813{color} |
Настройте SIP-аккаунты |
{code:title=/etc/asterisk/sip.conf} [general] |
... |
pickupgroup=1 {code} |
{warning}Поле callerid это тот логин который проверяет биллинг, и который надо указывать при подключении услуги.{warning} Настройте диалплан |
{code:title=/etc/asterisk/extensions.conf} [general] |
... |
exten => _X.,n,Hangup exten => h,1,Hangup |
|
{code} |
|
Добавляем Добавьте Radius сервер в разрешенные и указываем укажите secret тот же что и указали в биллинге |
{code:title=/usr/local/etc/radiusclient-ng/servers} 10.1.1.1 servicem |
... |
{code:title=/etc/asterisk/cdr.conf} [radius] |
usegmtime=yes usegmtime=no ; Время по GMT |
loguniqueid=yes loguserfield=yes radiuscfg => /usr/local/etc/radiusclient-ng/radiusclient.conf {code} |
Добавьте загрузку специального словаря который можно взять из asterisk-1.8.17.0/contrib/ {code:title=/usr/local/etc/radiusclient-ng/dictionary} $INCLUDE /usr/local/etc/radiusclient-ng/dictionary.digium {code} |