воскресенье, 22 января 2012 г.

Новый сайт по грузовым перевозкам

Здравствуйте. Не так давно мои коллеги, занимающиеся логистикой и грузовыми перевозками по Европе, решили заявить о себе в интернете. Вот ссылка на их сайт, пока, правда на польском языке http://royalfracht.com

пятница, 21 октября 2011 г.

Настройка IP-телефона Cisco 7960


Настройка IP-телефона Cisco 7940 для работы по SIP

Как настроить IP-телефон Cisco 7940/7960 для работы по протоколу SIP.
Для работы IP-телефона Cisco 7940/7960 по протоколу SIP необходимо провести несколько подготовительных операций. Во-первых, скачать по адресу http://www.cisco.com/pcgi-bin/tablebuild.pl/sip-ip-phone7960 последнюю версию прошивки для телефона и создать конфигурационный файл на основе рассматриваемого шаблона. После того, как телефон будет включен и загрузит эту информацию с TFTP-сервера, он будет готов к работе. \
Рассмотрим настройку по шагам. Когда телефон инициализируется, он запрашивает с TFTP-сервера:
• Последний файл прошивки
• Dual-boot файл (OS79XX.TXT)
• Специально созданный для этого телефона конфигурационный файл (именуемый с учетом MAC-адреса)
• Конфигурационный файл по умолчанию
• Ring-list файл • Dial-plan файл DHCP-сервер должен отдавать следующие опции (или их придется настроить вручную): • dhcp option #1 (маска подсети)
• dhcp option #3 (шлюз по умолчанию)
• dhcp option #6 (адрес DNS-сервера) • dhcp option #15 (имя домена)
• dhcp option #50 (IP-адрес)
• dhcp option #66 (адрес TFTP-сервера)

Процесс инициализации IP-телефона Cisco
1. Телефон загружает файл прошивки.
2. Телефон получает номер своего VLAN – для того, чтобы получить параметры с DHCP-сервера, телефон, в случае подключения к коммутатору Cisco Catalyst, должен получить номер Voice-VLAN’а, настроенного на коммутаторе.
3. Телефон получает IP-адрес – с DHCP-сервера или из своих настроек.
4. Телефон скачивает с TFTP-сервера или загружает из памяти следующие файлы:
• SEP.cnf.xml – Созданный на TFTP-сервере файл SEP.cnf.xml в котором находится следующее содержимое (версия прошивки): P0S3-08-2-00 Телефон проверяет версию своей прошивки и, если она не совпадает с версией, указанной в секции , обновляет ее.
• <Версия прошивки>.loads – если версия совпадает, телефон использует уже имеющийся в памяти файл, указанный в файле SEP.cnf.xml.
• OS79XX.TXT – использование этого файла обеспечивает совместимость переключения телефонов между SIP, MGCP или SCCP с использованием одного и того же TFTP-сервера.
• SIPDefault.cnf – параметры по умолчанию для всех телефонов, настройки рассматриваются далее.
• SIP.cnf – параметры для одного телефона, структура рассматривается далее.
• RINGLIST.DAT – перечисляет файлы с мелодиями звонков и их местоположение.
• dialplan.xml - содержит примерный номерной план. Его можно отправить в телефон с помощью сообщения Notify (NTFY) через Event-заголовок.
5. Телефон проверяет версию прошивки. Конфигурационные файлы IP-телефонов Cisco Формат имени файла должен быть SIPXXXXYYYYZZZZ.cnf, где XXXXYYYYZZZZ – MAC-адрес телефона в верхнем регистре.
Пример имени файла: SIP00503EFFD842.cnf. Каждая строка файла должна иметь вид: имя_переменной : значение ; необязательный комментарий
      Необходимо изменить в следующем примере параметры:
• line1_name – номер или адрес электронной почты, используемый при регистрации. Номер вводится без дефисов, e-mail – без имени хоста.
• proxy1_address – IP-адрес прокси-сервера SIP, используемого телефоном.
• proxy1_port – Номер порта прокси-сервера SIP, используемого телефоном. Остальные параметры изменяются при необходимости.

Пример конфигурационного файла
# SIP Default Configuration File
# Image Version
image_version: P0S3-08-3-00
# Proxy Server
proxy1_address: 172.16.255.255
proxy2_address: ""; Can be dotted IP or FQDN
proxy3_address: ""; Can be dotted IP or FQDN
proxy4_address: ""; Can be dotted IP or FQDN
proxy5_address: ""; Can be dotted IP or FQDN
proxy6_address: ""; Can be dotted IP or FQDN
# Proxy Server Port (default - 5060)
proxy1_port: 5060
proxy2_port: 5060
proxy3_port: 5060
proxy4_port: 5060
proxy5_port: 5060
proxy6_port: 5060
# Proxy Registration (0-disable (default), 1-enable)
proxy_register: 0
# Phone Registration Expiration [1-3932100 sec] (Default - 3600)
timer_register_expires: 3600
# Codec for media stream (g711ulaw (default), g711alaw, g729a)
preferred_codec: g711ulaw
# TOS bits in media stream [0-5] (Default - 5)
tos_media: 5
# Inband DTMF Settings (0-disable, 1-enable (default))
dtmf_inband: 1
# Out of band DTMF Settings
#(none-disable, avt-avt enable (default), avt_always-always avt)
dtmf_outofband: avt
# DTMF dB Level Settings
#(1-6dB down, 2-3db down, 3-nominal (default), 4-3db up, 5-6dB up)
dtmf_db_level: 3
# SIP Timers
timer_t1: 500; Default 500 msec
timer_t2: 4000; Default 4 sec
sip_retx: 10; Default 10
sip_invite_retx: 6; Default 6
timer_invite_expires: 180  ; Default 180 sec
####### New Parameters added in Release 2.0 #######
# Dialplan template (.xml format file relative to the TFTP root directory)
dial_template: dialplan
# TFTP Phone Specific Configuration File Directory
tftp_cfg_dir: ""; Example:  ./sip_phone/
# Time Server
#(There are multiple values and configurations refer to Admin Guide for Specifics)
sntp_server: ""; SNTP Server IP Address
sntp_mode: anycast (default); unicast, multicast, or directedbroadcast
time_zone: EST; Time Zone Phone is in
dst_offset: 1; Offset from Phone's time when DST is in effect
dst_start_month: April; Month in which DST starts
dst_start_day: ""; Day of month in which DST starts
dst_start_day_of_week: Sun; Day of week in which DST starts
dst_start_week_of_month: 1; Week of month in which DST starts
dst_start_time: 02; Time of day in which DST starts
dst_stop_month: Oct; Month in which DST stops
dst_stop_day: ""; Day of month in which DST stops
dst_stop_day_of_week: Sunday; Day of week in which DST stops
dst_stop_week_of_month: 8; Week of month in which DST stops 8=last week of month
dst_stop_time: 2; Time of day in which DST stops
dst_auto_adjust: 1; Enable(1-Default)/Disable(0) DST automatic adjustment
time_format_24hr: 1; Enable(1 - 24Hr Default)/Disable(0 - 12Hr)
# Do Not Disturb Control
#(0-off (default), 1-on, 2-off with no user control, 3-on with no user control)
dnd_control: 0;
# Caller ID Blocking
#(0-disabled, 1-enabled, 2-disabled no user control, 3-enabled no user control)
callerid_blocking: 0; (Default is 0 - disabled and sending all calls as anonymous)
# Anonymous Call Blocking
#(0-disabled, 1-enabled, 2-disabled no user control, 3-enabled no user control)
anonymous_call_block: 0; (Default is 0 - disabled and blocking of anonymous calls)
# DTMF AVT Payload (Dynamic payload range for AVT tones - 96-127)
dtmf_avt_payload: 101; Default 101
# Sync value of the phone used for remote reset
sync: 1; Default 1
####### New Parameters added in Release 2.1 #######
# Backup Proxy Support
proxy_backup: ""; Dotted IP of Backup Proxy
proxy_backup_port: 5060; Backup Proxy port (default is 5060)
# Emergency Proxy Support
proxy_emergency: ""; Dotted IP of Emergency Proxy
proxy_emergency_port: 5060; Emergency Proxy port (default is 5060)
# Configurable VAD option
enable_vad: 0; VAD setting 0-disable (Default), 1-enable
####### New Parameters added in Release 2.2 ######
# NAT/Firewall Traversal
nat_enable: 0; 0-Disabled (default), 1-Enabled
nat_address: ""; WAN IP address of NAT box (dotted IP or DNS A record only)
voip_control_port: 5060; UDP port used for SIP messages (default - 5060)
start_media_port: 16384; Start RTP range for media (default - 16384)
end_media_port: 32766; End RTP range for media (default - 32766)
nat_received_processing: 0; 0-Disabled (default), 1-Enabled
# Outbound Proxy Support
outbound_proxy: ""; restricted to dotted IP or DNS A record only
outbound_proxy_port: 5060; default is 5060
####### New Parameter added in Release 3.0 #######
# Allow for the bridge on a 3way call to join remaining parties upon hangup
cnf_join_enable: 1; 0-Disabled, 1-Enabled (default)
####### New Parameters added in Release 3.1 #######
# Allow Transfer to be completed while target phone is still ringing
semi_attended_transfer: 1; 0-Disabled, 1-Enabled (default)
# Telnet Level (enable or disable the ability to Telnet into the phone)
telnet_level: 1; 0-Disabled (default), 1-Enabled, 2-Privileged
####### New Parameters added in Release 4.0 #######
# XML URLs
services_url: ""; URL for external Phone Services
directory_url: ""; URL for external Directory location
logo_url: ""; URL for branding logo to be used on phone display
# HTTP Proxy Support
http_proxy_addr: ""; Address of HTTP Proxy server
http_proxy_port: 80; Port of HTTP Proxy Server (80-default)
# Dynamic DNS/TFTP Support
dyn_dns_addr_1: ""; restricted to dotted IP
dyn_dns_addr_2: ""; restricted to dotted IP
dyn_tftp_addr: ""; restricted to dotted IP
# Remote Party ID
remote_party_id: 0; 0-Disabled (default), 1-Enabled

Настройка файла конфигурации для отдельного IP-телефона

В файле можно изменить следующие параметры: anonymous_call_block, autocomplete, callerid_blocking, call_hold_ringback, call_waiting, dnd_controlостальные при необходимости. Файлу нужно присвоить имя вида SIP<MAC-адрес>.cnf. Пример файла конфигурации для отдельного телефона:
# SIP Configuration Generic File
# Line 1 appearance
line1_name: 1234567
# Line 1 Registration Authentication
line1_authname: "UNPROVISIONED"
# Line 1 Registration Password
line1_password: "UNPROVISIONED"
# Line 2 appearance
line2_name: football
# Line 2 Registration Authentication
line2_authname: "UNPROVISIONED"
# Line 2 Registration Password
line2_password: "UNPROVISIONED"
####### New Parameters added in Release 2.0 #######
# Phone Label (Text desired to be displayed in upper right corner)
phone_label: ""; Has no effect on SIP messaging
# Line 1 Display Name (Display name to use for SIP messaging)
line1_displayname: "User ID"
# Line 2 Display Name (Display name to use for SIP messaging)
line2_displayname: ""
####### New Parameters added in Release 3.0 ######
# Phone Prompt (The prompt that will be displayed on console and Telnet)
phone_prompt: "SIP Phone"; Limited to 15 characters (Default - SIP Phone)
# Phone Password (Password to be used for console or Telnet login)
phone_password: "cisco"; Limited to 31 characters (Default - cisco)
# User classification used when Registering [ none (default), phone, ip ]
user_info: none

Настройка параметров из меню IP-телефона Cisco

Некоторые параметры можно настроить вручную, из меню IP-телефона Cisco. По умолчанию настройки в IP-телефоне Cisco 7940/7960 заблокированы. Для разблокирования нужно ввести пароль, заданный в конфигурационном файле телефона, нажав Settings > Unlock Config. Для блокировки нажмите Lock Config или Exit. После изменения параметров нужно их сохранить и телефон перезагрузится с новыми настройками. Помимо основный настроек, таких как IP-адрес или адрес TFTP-сервера, при настройке вручную нужно настроить параметры SIP. После разблокировки телефона выберите Settings > SIP Configuration. В появившемся меню установите line1_name, proxy1_address, proxy1_port – их формат описан выше. Если телефон должен авторизоваться на прокси-сервере SIP, введите также line1_authname и line1_password. По умолчанию их значение равно UNPROVISIONED.
Настройку времени рекомендуем задавать из общего конфигурационного файла, пример секции с такой настройкой для Москвы:
time_zone : BT
dst_offset : 01/00
dst_start_month : April
dst_start_day : 1
dst_start_time : 02/00
dst_stop_month : October
dst_stop_day : 1
dst_stop_time : 02/00
dst_stop_autoadjust : 1

DST – это даты перехода на летнее и зимнее время соответственно.

Настройка dial-plan для IP-телефонов Cisco

Номерные планы позволяют IP-телефонам Cisco, работающим по протоколу SIP поддерживать автоматический набор и генерировать вторичный тоновый сигнал. При использовании общего номерного плана его лучше всего задавать в общем конфигурационном файле. Правила в файле номерного плана анализируются с первого до последнего, пишутся в XML-формате и хранятся на TFTP-сервере.
Начало файла обозначается таким тэгом:
<DIALTEMPLATE>
Для каждой схемы нумерации добавьте строку:
<TEMPLATE MATCH="pattern" Timeout="sec" User="type" Rewrite="xxx" Route="route" Tone="tone" />
, где:
pattern может содержать: . (точка) для замены любого символа, * (звездочка) для замены одного или более символов, , (запятая) для генерации вторичного сигнала.
sec – время в секундах, после которого начинается набор.
type – может быть IP или Phone. Тэг, добавляемый к номеру, регистронезависим.
xxx – номер, который будет набираться вместо введенного пользователем при совпадении с pattern.
route – адрес прокси-сервера SIP, на который перенаправляется звонок, значение может быть default, emergency или имя прокси-сервера.
tone – если не задан, используется вторичный гудок по умолчанию, если стоит запятая и затем имя гудка, то проигрывает этот звук;
без запятой гудок игнорируется.
Также можно указать решетку (#) и звездочку (*) как набираемые символы. По умолчанию # означает «набрать сейчас», не дожидаясь совпадения с шаблоном из номерного плана. * по умолчанию означает * или . в шаблоне (wildcard-символ).
В качестве вторичного гудка можно использовать следующие значения (после запятой): Bellcore-Alerting, Bellcore-dr5, Bellcore-Reorder, Bellcore-Busy, Bellcore-dr6, Bellcore-Stutter, Bellcore-BusyVerify, Bellcore-Hold, CallWaiting-2, Bellcore-CallWaiting, Bellcore-Inside, CallWaiting-3, Bellcore-Confirmation, Bellcore-None, CallWaiting-4, Bellcore-dr1, Bellcore-Outside (default), Cisco-BeepBonk, Bellcore-dr2, Bellcore-Permanent, Cisco-Zip, Bellcore-dr3, Bellcore-Reminder, Cisco-ZipZip, Bellcore-dr4.  
При желании к каждому правилу можно добавить <!—комментарий --> в конце каждой строки.
Файл номерного плана заканчивается строкой
</DIALTEMPLATE>
После этого номерной план сохраняется в файл xml с уникальным именем и помещается на TFTP-сервер.
Примеры файлов с номерным планом:
С использованием решетки как набираемого символа:
<DIALTEMPLATE>
 <TEMPLATE MATCH="123#45#6" TIMEOUT="0" User="Phone"/> <!-- Match `#' -->
 <TEMPLATE MATCH="34#..."    TIMEOUT="0" User="Phone"/> <!-- Match `#' -->
 <TEMPLATE MATCH="*"      TIMEOUT="15" User="Phone"/>
</DIALTEMPLATE>

С использованием двух разных гудков:
<DIALTEMPLATE>
 <TEMPLATE MATCH="7,..." TIMEOUT="0" /> <!-- Default Secondary Dial Tone -->
 <TEMPLATE MATCH="9,..." TIMEOUT="0" Tone="Zip" /> <!-- Play Zip Tone -->
 <TEMPLATE MATCH="8,...." TIMEOUT="0" Tone="Hold" /> <!-- Play Hold Tone -->
 <TEMPLATE MATCH="8,123,...." TIMEOUT="0" Tone="Hold" Tone="Zip" /> <!--Play Hold Tone after 8, Play Zip Tone after 123-->
</DIALTEMPLATE>


Как проверить, что IP-телефон Cisco правильно инициализировался

После включения питания телефон проходит через следующие стадии. Сначала загораются и гаснут по очереди индикаторы: Headset, Mute, Speaker. Затем появляются сообщения:
  • Configuring VLAN – настройка Ethernet-соединения. 
  • Configuring IP – связь с DHCP-сервером для получения параметров. 
  • Requesting Configuration – связь с TFTP-сервером для сравнения и получения конфигурации и прошивки. 
  • Upgrading Software – обновление программного обеспечения и перезагрузка при необходимости.
После этого на главном экране отображается номер из конфигурации: если он появился, значит, телефон запустился успешно.
Дополнительно о настройке IP-телефонов Cisco для использования SIP можно почитать по адресу http://cisco.com/en/US/products/sw/voicesw/ps2156/products_administration_guide_book09186a00801d1978.html

пятница, 7 октября 2011 г.

Настройка 3G модемов

Перенастройка 3G модемов различных производителей для требуемых условий работы.
Для настройки модемов, подключаться нужно либо через гипертерминал, либо через putty.
Затем запускаем гипертерминал (Hyper Terminal). Он находится в меню Пуск > Программы > Стандартные > Связь > Hyper Terminal, либо вызовите апплет «Выполнить» и наберите команду hypertrm.
Здесь мы пытаемся настроить ZTE MF112, ZTE MF120, ZTE MF626, Huawei E150

1. ZTE MF112 (МТС) – не имеют возможности работать с передачей голоса с IP ATC
2. ZTE MF626 (Билайн) – Подходит для работы с IP ATC
Затем в окне задания настроек подключения нужно установить следующие параметры:
Скорость: 115200
Биты данных: 8
Четность: Нет
Стоповые биты: 1
Управление потоком: Нет
Откроется терминал, в котором вы сможете давать команды напрямую устройству. Для проверки, что вы именно к модему подключены, вводим команду AT и жмем Enter, вы должны получить ответ OK.
AT+ZCDRUN=8 (отключения автозапуска CD/Flashdrive)
AT+ZCDRUN=9 (включение автозапуска CD/Flashdrive)
AT+CUSD=1,»#102#»,15 (проверить баланс абонентам Билайн)
ATI (возвращает информацию о модеме)
AT+ZBANDI=0 (Automatic band selection (default))
AT+ZBANDI=1 (UMTS 850 + GSM 900/1800)
AT+ZBANDI=2 (UMTS 2100 + GSM 900/1800 (Europe))
AT+ZBANDI=3 (UMTS 850/2100 + GSM 900/1800)
AT+ZBANDI=4 (UMTS 850/1900 + GSM 850/1900)
AT+ZBANDI? (Report band selection mode)
AT+ZSNT=0,0,0 (AUTOMATIC network selection, GSM+WCDMA)
AT+ZSNT=0,0,1 (AUTOMATIC network selection, GSM+WCDMA,GSM preferred)
AT+ZSNT=0,0,2 (AUTOMATIC network selection, GSM+WCDMA,WCDMA preferred)
AT+ZSNT=1,0,0 (AUTOMATIC network selection, GSM only)
AT+ZSNT=2,0,0 (AUTOMATIC network selection, WCDMA only)
AT+ZSNT? (Returns network selection mode)
3. Huawei E150 – работает с IP ATC (голос ходит в одну сторону – проверено)
Инструкция:
Подключить модем к ПК под управлением Windows и убедиться, что он работает.
Сохранить все файлы, содержащиеся на виртуальном CD модема.
Отключить компьютер от сети и Интернета и запустить программу Hyper Terminal.
Программа Hyper Terminal находится в разделе Пуск > Программы > Стандартные > Связь > Hyper Terminal – в ос Windows XP, а для Windows7 ее нужно загрузить.
В окне «Описание подключения» пишем любое название, скажем «Huawei», и нажимаем ENTER. Ждем появления окна «Подключение». В его последней графе «Подключаться через” нужно выбрать «HUAWEI Mobile Connect – 3G Modem» и нажать ОК.
Следующее после этого окно с номерами телефона и прочими параметрами нужно просто закрыть, нажав кнопку «Отмена».
Теперь на панели программы следует нажать последнюю кнопку «Свойства»:
И в открывшемся окне «Свойства: модем» перейти на вкладку «Параметры:
Нажать кнопку «Параметры ASCII»:
Поставить галочку во второй сверху графе «Отображать вводимые символы на экране».
Нажать ОК. Верхнее окошко закроется. Нажать ОК. Последнее окошко закроется, и в главном окне программы замигает курсор.
Включаем CAPS LOCK и печатаем команду АТ. Нажимаем ENTER. Появляется ответ: ОК. Значит связь с модемом установлена. Вводим одну из следующих команд:
AT^U2DIAG=0 (устройство в режиме только модем)
AT^U2DIAG=1 (устройство в режиме модем + CD-ROM)
AT^U2DIAG=255 (устройство в режиме модем + CD-ROM + Card Reader)
AT^U2DIAG=256 (устройство в режиме модем + Card Reader)
Если возникнет необходимость вернуть модем в первоначальное состояние, необходимо повторить всю процедуру, но уже с командой AT^U2DIAG=255 (устройство в режиме модем + CD-ROM + Card Reader).

Установка модуля канала chan_dongle

1. Скачиваем модуль канала chan_dongle-1.1.r10.tgz
2. Распаковываем, собираем и ставим, копируем конфигурационный файл в директорию asterisk:

cd /tmp
wget asterisk-chan-dongle.googlecode.com/files/chan_dongle-1.1.r10.tgz
tar zxvf chan_dongle-1.1.r10.tgz
cd chan_dongle-1.1.r10
./configure
make install
cp etc/dongle.conf /etc/asterisk/




chmod 666 /dev/ttyUSB*

четверг, 6 октября 2011 г.

Установка ОС (ubuntu 10.04 LTS)


1. Скачиваем и устанавливаем: ubuntu
2. Обновляем систему apt-get update && apt-get upgrade
3. Обновляем релиз до Maverick:


1.apt-get install update-manager-core
2.
3.vim /etc/update-manager/release-upgrades
4.Prompt=normal
5.
6.do-release-upgrade

Установка asterisk из исходников

1. Скачиваем asterisk asterisk
2. Распаковываем, устанавливаем необходимые пакеты, собираем и ставим:
1.tar zxvf asterisk-1.8-current.tar.gz
2.cd asterisk-1.8-current.tar.gz
3.apt-get install g++ libncurses-dev libxml2-dev subversion
4../configure
5.make install
6.make config
7.make samples

Установка модуля канала chan_dongle

1. Скачиваем модуль канала chan_dongle-1.1.r10.tgz
2. Распаковываем, собираем и ставим, копируем конфигурационный файл в директорию asterisk:
1.tar zxvf chan_dongle-1.1.r10.tgz
2.cd chan_dongle-1.1.r10.tgz
3../configure
4.make install
5.cp etc/dongle.conf /etc/asterisk/

Убедимся что модем Huawei E1550 определился в системе


1.ls -la /dev/ttyUSB*
2.ttyUSB0
3.ttyUSB1
4.ttyUSB2

Проверка работы модулей

1.asterisk*CLI> dongle show devices
2.ID Group State RSSI Mode Submode Provider Name Model Firmware IMEI IMSI Number
3.dongle0 1 Free 15 3 3 MTS E1550

Для исходящей связи

1.exten => _X.,1,Dial(Dongle/dongle0/${EXTEN})

понедельник, 3 октября 2011 г.

Ubuntu 11.04 + Asterisk 1.8.6 + FreePBX 2.9

sudo -i
1. Теперь установим пакеты которые необходимы для работы Asterisk и FreePBX (во время установки пакетов потребуется ввести пароль для MySQL сервера в дальнейшем он нам понадобиться):
apt-get update
apt-get install php5-mysql libapache2-mod-php5 mysql-server libmysqlclient15-dev php-db php5-gd php-pear sox curl g++ libncurses-dev libxml2-dev subversion  openssh-server openssh-client
2. Установим пакеты необходимые для работы плат и модемов (если не планируется использовать платы или модемы с Asterisk то данный шаг можно пропустить):
apt-get install dahdi
/etc/init.d/dahdi start
cd /tmp
wget http://downloads.asterisk.org/pub/telephony/dahdi-linux-complete/releases/dahdi-linux-complete-2.5.0+2.5.0.tar.gz
cd /usr/src
tar -zxvf /tmp/dahdi-linux-complete-2.5.0+2.5.0.tar.gz
cd dahdi-linux-complete-2.5.0+2.5.0/
make
make install
make config
3. Качаем исходники Asterisk и FreePBX и распаковываем их:
cd /tmp
wget http://downloads.asterisk.org/pub/telephony/asterisk/releases/asterisk-1.8.6.0.tar.gz
wget http://mirror.freepbx.org/freepbx-2.9.0.tar.gz
cd /usr/src
tar xvfz /tmp/asterisk-1.8.6.0.tar.gz
tar xvfz /tmp/freepbx-2.9.0.tar.gz
4. А теперь устанавливаем Asterisk:
cd /usr/src/asterisk-1.8.6.0
./configure
Следующую команду выполняем в окне терминала размером 80×27 и выбираем модули Asterisk которые нам понадобятся для работы:
make menuselect
Выбираем модули в категори Add-ons – app_mysql, cdr_mysql, format_mp3, res_config_mysql. (Чтобы выбрать категорию нажмите – Enter, чтобы отметить модуль нажмите – Space(пробел), вернутся к выбору категорий – Стрелка Влево, чтобы сохранить изменения и выйти нажмите – X.)

Качаем файлы для поддержки mp3 формата:
contrib/scripts/get_mp3_source.sh
Собираем и устанавливаем Asterisk:
make
make install
make config
make samples
5. Начинаем настраивать Asterisk.
Создаем пользователя asterisk и добавляем пользователя www-data в группу asterisk:
adduser asterisk --disabled-password --gecos "Asterisk PBX"
adduser www-data asterisk
Теперь сделаем так чтобы Apache запускался от пользователя asterisk:
nano /etc/apache2/envvars
Закомментируем следующие строки поставив в начале строки символ #
#export APACHE_RUN_USER=www-data
#export APACHE_RUN_GROUP=www-data
И после них добавим новые строки
export APACHE_RUN_USER=asterisk
export APACHE_RUN_GROUP=asterisk
Чтобы сохранить изменения нажмите Ctrl+O и Ctrl+X для выхода.
Теперь применим изменения к Apache:
apache2ctl graceful
6Asterisk установлен переходим к установке FreePBX:
cd /usr/src/freepbx-2.9.0
Создадим и настроим базы MySQL необходимые для работы FreePBX. Выполним для этого следующие команды – где 377265 это ваш пароль к MySQL серверу указанный в пункте 1 при его установке:
mysqladmin create asterisk -p377265
mysqladmin create asteriskcdrdb -p377265
mysql asterisk < SQL/newinstall.sql -p377265
mysql asteriskcdrdb < SQL/cdr_mysql_table.sql -p377265
mysql -p377265
GRANT ALL PRIVILEGES ON asterisk.* TO asteriskuser@localhost IDENTIFIED BY '377265';                     
GRANT ALL PRIVILEGES ON asteriskcdrdb.* TO asteriskuser@localhost IDENTIFIED BY '377265';                   
flush privileges;
quit;
Перезапустим Asterisk:
/etc/init.d/asterisk start
И запускаем установку FreePBX:
./install_amp
Во время установки указываем только следующие параметры все остальные оставляем стандартными(не указываем).  Вместо 377265 ваш пароль, а вместо 192.168.0.101 – ваш ip.
Enter your PASSWORD to connect to the 'asterisk' database:
[amp109] 377265
Enter a PASSWORD to connect to the Asterisk Manager interface:
[amp111] 377265
Enter the path to use for your AMP web root:
[/var/www/html]
/var/www/freepbx
Enter the IP ADDRESS or hostname used to access the AMP web-admin:
[xx.xx.xx.xx]
192.168.0.101
Enter a PASSWORD to perform call transfers with the Flash Operator Panel:
[passw0rd]
377265
7. FreePBX установлена, теперь надо изменить настройки для её нормальной работы:
nano /etc/amportal.conf
Проверяем в этом конфиге установлена ли авторизация через базу данных.
AUTHTYPE=database
Если в AUTHTYPE выбран database всё ок. Если нет то меняем параметр на database.
Далее меняем пароль для доступ к админке записи разговоров для этого в следующей строке меняем 377265 на ваш пароль.
ARI_ADMIN_PASSWORD=377265
Сохраняем изменения нажав Ctrl+O и Ctrl+X для выхода.
Делаем исправление в конфиге кодировки, если вы в дальнейшем захотите использовать русский интерфейс в FreePBX (мне например удобнее оригинальный английский, но если вам будет нужен русский делаем следующее действие):
nano /usr/share/locale/locale.alias
Удаляем стандартную строку кодировки russian и вместо нее добавляем следующие строки:
russian     ru
ru       ru_RU
ru_RU      ru_RU.UTF-8
Сохраняем изменения нажав Ctrl+O и Ctrl+X для выхода.
Теперь сделаем автостарт FreePBX:
nano /etc/rc.local
Перед строкой exit 0 добавим следующую строку:
/usr/local/sbin/amportal start
Сохраняем изменения нажав Ctrl+O и Ctrl+X для выхода.
8. Выставим права на папки для нормальной работы:
chown -R asterisk:asterisk /var/run/asterisk
chown -R asterisk:asterisk /var/www/freepbx
chown -R asterisk:asterisk /var/lib/asterisk
9. Перезагрузим систему для применения всех изменений и проверки авто запуска:
reboot
Asterisk и FreePBX установлены. Зайдем в админку FreePBX по адресу – http://192.168.1.101/freepbx/ – где вместо 192.168.1.101 ваш ip. Логин и пароль по умолчанию – admin / admin.

Применим настройки нажав кнопку – Apply Confiruration Changes.
Если после этого появится ошибка связанная с файлом – sip_notify.conf:

Удалим файл – sip_notify.conf:
sudo -i
rm /etc/asterisk/sip_notify.conf
После этого установим и обновим модули FreePBX. Для этого перейдём в меню Admin > Module Admin и нажмем кнопку Check Online, выберем модули которые хотим обновить и установить и нажмем кнопку Process, по окончанию скачки, обновления и установки модулей нажмем кнопку Return и затем применим изменения Apply Configuration Settings.

Если после установки модулей появится ошибка связанная с файлом – ccss.conf, удалим его:
rm /etc/asterisk/ccss.conf
Ошибка исчезнет после следующего применения настроек или после перезагрузки.
Вот и всё Asterisk и FreePBX полностью установлены. О том как настроить FreePBX для работы с Sipnet и модемом Huawei E1750 читайте в следующих частях.