Добавление SIP клиентов в Asterisk

SIP клиенты в Asterisk указываются в файле sip.conf, поэтому откроем его например в текстовом редакторе nano (Ctrl+X для выхода из редактора, y или n для сохранения или отмены изменений):

sudo nano /etc/asterisk/sip.conf

Сначала укажем следующий параметр, запретив принимать анонимные звонки:

allowguest=no

Теперь в самом конце файла добавим клиента:

[6000]
type=friend
secret=ПАРОЛЬ 
nat=no
host=dynamic
dtmfmode=rfc2833
disallow=all
allow=ulaw
context=sip-dialout
callerid=6000
deny=0.0.0.0/0
permit=192.168.0.10/32

Кратко опишу параметры которые я указывал:
type — тип клиента, может быть user (идентификация по паролю), peer (идентификация по адресу хоста), fried (либо по паролю, либо по хосту).
secret — пароль пользователя.
nat=no — указывает, что клиент может быть за NAT, смотрите мою статью по поводу этого Звонок через NAT.
host=dynamic — нет привязки клиента к адресу хоста.
dtmfmode=rfc2833 — метод передачи dtmf тонов набора номера.
disallow=all — запрет всех кодеков.
allow=ulaw — разрешим только кодек ulaw
context=sip-dialout — имя диалплана (он описывается в extensions.conf)
callerid=6000 — внутренний номер телефона клиента.
deny=0.0.0.0/0 — запрещаем подключение со всех IP адресов.
permit=192.168.0.10/32 — разрешаем подключение только с указанного IP адреса.

После добавления клиента подключимся к Asterisk и обновим конфигурацию sip:

sudo asterisk -r
sip reload

Посмотреть список клиентов можно командой:

sip show users

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

quit

Теперь уже можно подключится добавленному клиенту к серверу Asterisk используя например программу X-Lite, Zoiper или VoIP телефон, но звонить пока некуда, поэтому добавим для теста второго клиента в sip.conf:

[6001]
type=friend
secret=ПАРОЛЬ
nat=no
host=dynamic 
dtmfmode=rfc2833
disallow=all
allow=ulaw
context=sip-dialout
callerid=6001
deny=0.0.0.0/0
permit=192.168.0.10/32

Откроем в редакторе файл extensions.conf:

sudo nano /etc/asterisk/extensions.conf

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

[sip-dialout]
exten => 6000,1,Dial(SIP/6000)
exten => 6001,1,Dial(SIP/6001)

Перезапустим Asterisk чтобы применить изменения:

sudo service asterisk restart

Все, мы добавили двух пользователей и они могут звонить друг другу.

Смотрите также:
Добавление SIP клиента во FreePBX

Добавить комментарий