Подключение SIP-устройств/программного телефона

В данном примере к Asterisk будет подключаться программный телефон Linphone.

Сперва укажем настройки на Asterisk в файле sip.conf

Коротко о конфигурационном файле sip.conf. Конфигурационный файл SIP (sip.conf) содержит информацию о конфигурации для каналов, работающих по протоколу SIP. Заголовки описаний каналов формируются словом, заключённым в квадратные скобки [], за исключением раздела [general], в котором задаются глобальные параметры SIP. Не скупитесь на комментарии в файле sip.conf. Текст комментариев начинается с точки с запятой; всё, что располагается справа от неё, будет проигнорировано.

Не храните пароли пользователей в открытом виде! Не используйте опцию secret! Используйте опцию md5secret, которая хранит хеш строки '<extension>:<realm>:<password>'. Причём realm почти всегда равен 'asterisk', если вы ничего не меняли.

Генерируем хеш для аутентификации каждого нового пользователя. Опции secret оставлены для примера:

host$ echo -n '1000:asterisk:pass1' | md5sum 458cb347d4f3cb5a9ab794a77371eb63 - host$ echo -n '1001:asterisk:pass2' | md5sum e87d475a8fbe123136717b5140acefc1 -

Для команды echo в обязательном порядке указывать параметр -n, иначе к строке прибавится символ переноса.

Создаём описания каналов пользователей (настройки экстеншенов):

[general] [1000] type=friend ;secret=pass1 ;этой строки в конфиге быть не должно! md5secret=458cb347d4f3cb5a9ab794a77371eb63 context=phones host=dynamic [1001] type=friend ;secret=pass2 ;этой строки в конфиге быть не должно! md5secret=e87d475a8fbe123136717b5140acefc1 context=phones host=dynamic

type=(friend|peer|user)

user - может только совершать вызовы, все входящие обрубаются
peer - для подключения провайдеров. Аутентификация по IP.
friend - (peer и user вместе) может и сам звонить и принимать вызовы. Для пользователей, которые аутентифицируются по логину и паролю. Если для такого типа указать конкретный IP в параметре host, то получим ошибку при регистрации.

md5secret=458cb347d4f3cb5a9ab794a77371eb63

Это хеш строки вида '<extension>:<realm>:<password>' для аутентификации абонента.

Придумывайте сложные пароли, чтобы избежать оплаты междугородних звонков, которые будут совершать мошенники, сумевшие подобрать пароль к вашей учётке. Использование пароля повторяющего логин (типа логин 1001 и пароль 1001) совсем не редкость. Также неплохо было бы прикрыться списками контроля доступа по IP и фаирволом самой операционной системы, например, iptables.

context=phones

В этом контексте диалплана будет начинаться обработка звонков.

host=dynamic

Конфигурирует хост, с которым должен соединяться данный равноправный участник сети. В данном случае хост любой.

Теперь настроим Linphone

Софтфон бесплатен и его можно скачать с офсайта www.linphone.org

1. Указываем идентификатор в формате sip:1000@pbx.example.ru

2. Указываем адрес SIP-прокси в формате sip:pbx.example.ru

3. Ставим флаг "Регистрация"

СОФТФОН ПОДКЛЮЧЕН

Далее

Настройка диалплана
Другие сценарии

Поддержите проект, если он помог вам

Проект продвигается за счёт личных средств и времени авторского коллектива. Если вы нашли здесь то, что искали, то вы можете выразить свою благодарность финансово. Даже небольшой платёж помогает авторам в их труде, сохраняя их вовлечённость и высокую мотивацию чтобы строить открытый мир равных возможностей для всех неравнодушных людей вокруг.