Чтение онлайн

ЖАНРЫ

Asterisk™: будущее телефонии Второе издание
Шрифт:

Если вы не доверяете своей сети, вероятно, следует задать пароль. Для этого в описание устройства добавляется следующая строка. Это один из тех параметров, которые не являются обязательными, но желательны:

secret=guessthis

Конфигурация самого устройства

В меню конфигурации телефона (которые могут быть предоставлены через графический веб-интерфейс пользователя, меню самого телефона или, возможно, посредством использования конфигурационных файлов, хранящихся на сервере) уникальный идентификатор (в данном случае 1000) является составной частью мандатов, используемых для процесса аутентификации. Естественно, чтобы соединение было успешным, идентификатор в Asterisk должен совпадать с идентификатором телефонного аппарата.

Забавно, что формального названия для этого идентификатора не существует. Мы решили называть его просто уникальным идентификатором.

В SIP RFC в разделе 19.1 этот токен пользователя назван «идентификатором конкретного ресурса хоста, к которому выполняется обращение». Эта формулировка соответствует нашему применению [ 1000 ] в качестве идентификатора аппарата в файле Asterisk sip.conf.

Вероятно, вам привычнее было бы видеть поля user name, auth name, authentication name и т. д. Здесь необходимо помнить, что на стороне Asterisk все сконфигурировано просто и правильно и поэтому можно экспериментировать с настройками телефона, пока не будет найдена работоспособная комбинация. Такой вариант намного лучше, потому что обычно новые пользователи проходят через невероятные мучения, меняя настройки и там и тут, и не могут зарегистрировать телефон.

Повторим еще раз: задайте в sip.conf максимально простую конфигурацию Asterisk и после этого не меняйте ничего. Поверьте, то, что написано здесь, будет работать. Приведите свой телефон в рабочее состояние (то есть чтобы он мог принимать и делать вызовы) и только после этого начинайте экспериментировать с разными настройками. Мы видели слишком много страданий (включая собственные) и хотим положить им конец.

Упрощение sip.conf

Файл sip.conf (который был скопирован в папку /etc/asterisk с помощью команды make samples в предыдущей главе) содержит большое количество опций и документации, но сам файл на самом деле очень небольшой, если убрать из него все закомментированные параметры. Стандартный файл сводится всего лишь к следующим нескольким строкам, незакомментированным по умолчанию: [general]

context=default ; Контекст по умолчанию для входящих ; вызовов

allowoverlap=noallowoverlap=no Отключить поддержку набора номера
в режиме overlap.
(Значение по умолчанию - yes)
bindport=5060 Используемый UDP-порт 5060 (стандартный SIP-порт) bindport - локальный UDP-порт, который будет слушать Asterisk
bindaddr=0.0.0.0 Используемый IP-адрес 0.0.0.0 (все доступные адреса)
srvlookup=yes Активировать поиск DNS SRV-записей для исходящих вызовов Примечание: Asterisk использует только первый хост в SRV-записях Деактивация поиска DNS SRV-записей отключает возможность размещать SIP-вызовы к другим SIP-пользователям в Интернете на основании доменных имен
[authentication]

В разделе [general] находятся опции, которые будут применяться ко всем клиентам и каналам SIP. Некоторые настройки задаются только в разделе [general], другие могут задаваться в разделе [general] как применяемые по умолчанию для всех условных инструкций и могут быть переопределены в другом месте. Эти опции перечислены в столбцах [users] и [peers] под заголовком [authentication].

Как правило, закомментированные опции являются используемыми Asterisk по умолчанию или значение по умолчанию указано в описании опции.

Также можно

проверить текущее состояние SIP-канала в Asterisk с помощью CLI-команды sip show settings.

Если Asterisk и программный телефон выполняются в одной системе (то есть программный телефон X-Lite и Asterisk выполняются на портативном или настольном компьютере), придется изменить SIP-порт, который слушает клиент. Его надо будет заменить с 5060 на 5061 (или любой другой свободный порт), чтобы Asterisk и программный телефон не мешали друг другу.

Основные компоненты сервера

Перед тем как углубиться в описание следующих файлов, осталось определить еще несколько параметров на сервере. Выполнение соответствующих сервисов в собственной сети обеспечит возможность автоматической настройки аппаратов Polycom при их подключении. Работыздесь немного, и, поверьте, результат того стоит. Потренируйтесь немного - и в будущем для любой новой системы на это будет уходить лишь несколько минут, что сохранит вам массу времени и избавит от «борьбы» с веб-интерфейсами. Когда вы возьмете новенький телефон Polycom, подключите его в свою сеть, посмотрите, как он сам себя настроит и успешно зарегистрируется на сервере Asterisk, вы испытаете наслаждение, которое доступно только истинным компьютерщикам1. На самом деле все не так сложно. На наш взгляд, можно запутаться только в доступных вам способах, потому что их выбор действительно огромен.

DHCP-сервер

Обычно DHCP-сервер используется для конфигурации основных настроек протокола IP для устройства (IP-адрес, шлюз по умолчанию и DNS), но протокол DHCP (Dynamic Host Configuration Protocol - протокол динамической конфигурации хоста) на самом деле может передавать множество других параметров. В нашем случае мы хотим, чтобы он передал в телефонные аппараты некоторую информацию с указанием, откуда они могут загрузить конфигурационные файлы. Вот пример настроек DHCP-сервера Linux, которые обеспечат то, что нам требуется:

ddns-update-style interim;

ignore client-updates;

subnet 192.168.1.0 netmask 255.255.255.0 { option routers 192.168.1.1; option subnet-mask 255.255.255.0; option domain-name-servers 192.168.1.1; option ntp-servers pool.ntp.org; option time-offset -18000;

range dynamic-bootp 192.168.1.128 192.168.1.254;

default-lease-time 21600;

max-lease-time 43200;

}

Помните, здесь предполагается, что все устройства данной сети относятся к телефонной системе (при такой настройке IP-адрес предоставляется любому запрашивающему его устройству). Для более сложного окружения придется сконфигурировать демон DHCP для обработки различных обслуживаемых им устройств. Например, можно придумать диапазон IP-адресов, которые будут использоваться только для телефонов Polycom в локальной телефонной сети. Поскольку уникальный идентификатор организации (Organizationally Unique Identifier, OUI) всех IP-телефонов Polycom для настольных компьютеров - 00:04: f2, исходя из этого можно выбрать диапазон.

В DHCP-средах Microsoft имя tftp-сервера называют именем хоста сервера загрузки (Boot server host name). Оно определено как опция 66.

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

FTP-сервер

В настоящее время мы предпочитаем использовать для конфигурации аппаратов Polycom протокол FTP (File Transfer Protocol - протокол передачи файлов)1. Мы бы рекомендовали выбрать его, а не TFTP и для устройств, которые могут работать с обоими протоколами. В системе CentOS при выполнении следующей команды будет установлен VSFTPD, Very Secure FTP Daemon (очень безопасный демон FTP):

# yum -y install vsftpd

Затем для обеспечения защиты необходимо предотвратить анонимные входы в систему. Для этого вносим простое изменение в конфигурационный файл vsftpd, находящийся в папке /etc/vsftpd/vsftpd.conf:

Поделиться с друзьями: