Asterisk: iax.conf

Inter-Asterisk eXchange используется как для соединения серверов Asterisk, так и для подключения клиентов.

Файл iax.conf начинается с общего раздела в котором определены глобальные настройки севера. Также там можно настроить регистрацию на другом сервере Asterisk для совместного использования плана набора (диалплана).

Следующие опции используются в iax.conf.

port: порт для прослушивания входящих подключений. Не должен использоваться другими службами.
bindaddr: Если в системе используется несколько IP адресов, эта опция привязывает Asterisk к одному интерфейсу.
amaflags: устанавливает AMA (Automated Message Accounting) флаги для Call Detail Records. Также могут быть установлены для каждого абонента. Имеет следующие значения:

billing: Пометить для биллинга
documentation: пометить для документации.
omit: не делать запись.
default: использовать значение по умолчанию.

accountcode: Устанавливает код счета по умолчанию. Также может быть установлен индивидуально для каждого клиента (канала).

accountcode = wmeadows
amaflags = documentation

bandwidth: эта опция используется для управления использованием кодеков, но не методом запрещения того или иного кодека, а ограничением пропускной способности. Принимает значения 'low' и 'high'.
disallow - запрещает использование конкретных кодеков. Принимает название кодека или 'all'.
allow - Разрешает использование конкретного кодека.

bandwidth=low
disallow=all
allow=gsm

jitterbuffer - включает или выключает использование джиттер-буфера. Буфер используется для настройки качества звука, балансируя между задержкой и количеством пропущенных пакетов. (Если задержка слишком велика, часть пакетов может быть удалена, что приведет к проглатыванию звуков. Если задержка слишком велика, но пакеты не будут удалены, возникнет сильное эхо.):!: Для уверенного прохождения факсов пакеты не должны удаляться.
dropcount: устанавливает максимальное количество пакетов, которые могут быть отброшены, чтобы уменьшить время отклика.
maxjitterbuffer: Устанавливает максимальный размер jitterbuffer.
maxexcessjitterbuffer: Устанавливает максимальный размер джиттера, при превышении которого, буфер будет постепенно уменьшаться для улучшения отклика.
register: используется для регистрации на другом сервере Asterisk.Полезно если локальный сервер имеет динамический IP и должен указать удаленному серверу, где его искать.

register => username:secret@server

Поле 'secret' не является обязательным. Если используется RSA шифрование пошлите ключ RSA в следующем формате:

register => username:[key]@server

tos: установите требуемые биты, чтобы улучшить маршрутизацию пакетов. Возможны следующие значения:

lowdelay: свести к минимуму задержки 
troughput: максимальная пропускная способность 
reliability: максимальная надежность 
mincost: использование самой низкой стоимости маршрута 
None: не использовать маршрутизацию флагов 

Настройки каждого канала начинаются с имени заключенного в квадратные скобки. Далее следуют опции и их значения:

type: Устанавливает тип канала. Возможны следующие типы:

user: пользователь может осуществлять звонки.
peer: принимает звонки.
friend: осуществляет вызовы через Asterisk.Если вы сомневаетесь ставьте friend.

context: Определяет правила набора и приема вызовов для канала. Перекрывает значение по умолчанию в секции general.
CallerID: Устанавливает Caller ID, который будет использоваться для этого канала. Этот CallerID будет использоваться внутри системы, и будет послан в ТфОП, если линия используется как транк. Если оставить пустым, будет использован полученный Caller ID.

callerid => “Katia” <812 321-6111>

Auth: Устанавливает тип аутентификации. IAX поддерживает три метода аутентификации. Первый (и наименее безопасный) является открытым текстом. пароли передаются в незашифрованном виде по сети. Второй MD5, который использует MD5 Challenge алгоритм ответа. Обе машины будут иметь доступ к записаным открытым текстом паролям, но они будут зашифрованы с помощью MD5 при прохождении через сеть. Самым безопасным вариантом является использование RSA открытый / закрытый ключ шифрования. Открытый / закрытый пары ключей могут быть сгенерированы помощью программы astgenkey. Публичный ключ необходимо вручную передать на сервер,где он хранится в /var/lib/asterisk/keys/name.pub. Закрытые ключи хранятся там же, как name.key.

inkeys: публичные ключи используемые для аутентификации входящих запросов клиента или регистрации.
outkey: закрытый ключ исходящей аутентификации для шифрования связи этого клиента.

auth=md5
secret=password
auth=rsa
inkeys=theirkey
outkey=mykey

permit: хосты с которых разрешено регистрироваться. Может иметь значение host или host/netmask
deny: хосты с которых запрещена регистрация.

deny = 0.0.0.0/0.0.0.0
permit=192.168.0.1/255.255.255.0
permit=216.207.245.45

host: ожидаемый IP адрес с которого будет произведена регистрация. Указывается IP или 'dynamic'.
defaultip: IP-адрес по умолчанию для клиентов IAX. Если Asterisk получает вызов для динамического и не зарегистрированого IAX клиента, указывает на предположительный IP адрес клиента.

host=dynamic
defaultip=192.168.0.1

accountcode: станавливает код счета только для этого канала. Это используется при вызове регистрации услуги.
qualify: проверяет доступен ли клиент для вызовов. Аргумент устанавливает кол-во миллисекунд прежде чем будет установлен статус «недоступен» (unavailable)

qualify=300

mailbox: определяет голосовой почтовый ящик для данного клиента

mailbox=1234@device

.

trunk: включает и выключает режим соединительной линии для канала.

IAX2 channels

Настройка Asterisk

  • asterisk/cf/asterisk_iax2.txt
  • Последние изменения: 2016/11/09