Asterisk™: будущее телефонии Второе издание - Меггелен Джим Ван
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:
# anonymous_enable=NO
Перезапустите сервер с помощью команды service vsftpd restart. Чтобы гарантировать запуск демона после каждой перезагрузки, выполняем команду chkconfig vsftpd on.
Теперь необходимо создать пользовательскую учетную запись и группу, которые будут использоваться для телефонных аппаратов. В данном случае мы создадим учетную запись для аппаратов Polycom.
# groupadd PlcmSpIp
# useradd PlcmSpIp -g PlcmSpIp -p PlcmSpIp
# passwd PlcmSpIp
Задаем пароль PlcmSpIp (стандартный пароль FTP для аппаратов Polycom). Его можно изменить, но после этого придется вручную настраивать каждый аппарат, чтобы сообщить ему его нестандартные учетные данные[63].
Для большей безопасности убедимся, что FTP-сервер хранит эту учетную запись в «темнице» chroot:
# echo PlcmSpIp >> /etc/vsftpd/vsftpd.chroot_list
Вот примерно то, что должно быть сделано, чтобы подготовить операционную систему к предоставлению необходимых сервисов телефонам. В следующих нескольких разделах даются рекомендации для различных популярных SIP-телефонов. Выберите самый подходящий раздел исходя из того, какой телефон вы собираетесь использовать (неважно, будет ли это аппаратный или программный телефон). Вы заметите, что всем этим телефонам мы присвоили один и тот же уникальный идентификатор. Если планируется установка нескольких телефонов, каждому из них должно быть дано уникальное имя. И не забудьте внести описания этих устройств в файл sip.conf.
Программный телефон X-Lite производства CounterPath
Программный телефон X-Lite компании CounterPath стал очень популярным в сообществе разработчиков Asterisk. Он прост, функционален, приятен на вид и, что самое главное, распространяется бесплатно. В этом разделе мы займемся конфигурацией программного телефона X- Lite для подключения к Asterisk. IP-адрес этого телефона - 192.168.1.250, Asterisk располагается по адресу 192.168.1.100. Доступен X-Lite для Microsoft Windows, Mac и Linux. Копию X-Lite можно скачать по адресу http://www.counterpath.com/index.php?menu=download.
Теперь давайте сконфигурируем программный телефон для установления соединения с сервером Asterisk. Чтобы сконфигурировать X-Lite, нажмите кнопку Settings (Настройки), которая показана на рис. 4.2. Выберите пункты System Settings ^ SIP Proxy ^ [Default] (Настройки системы ^ SIP-прокси ^ [По умолчанию]). При этом на экран будет выведена стандартная конфигурация программного телефона. Измените настройки, как показано на рис. 4.3.
Если система Asterisk не запущена, запустите ее сейчас (информацию по установке и запуску Asterisk можно найти в главе 3). Если Asterisk выполняется в фоновом режиме, вызвать ее CLI можно, выполнив следующую команду:
# asterisk -rvvv
■ Кнопка Settings
Рис. 4.3. Пользовательская конфигурация X-Lite
CLI Asterisk будет предоставлен следующим образом:
*CLI>
Рис. 4.2. Конфигурация X-Lite
Если Asterisk уже была запущена до изменения sip.conf, как рекомендуется в данной главе, перезагрузите диалплан и SIP-канал с помощью следующих двух команд:
*CLI> dialplan reload *CLI> sip reload
В клиенте программного телефона X-Lite закройте окно Settings (Настройки), щелкая по кнопке BACK (НАЗАД) до тех пор, пока не будут закрыты все окна. Вы должны увидеть, что X-Lite пытается зарегистрироваться в Asterisk, и в случае успеха в CLI Asterisk будет выведено следующее:
- Registered SIP '1000' at 192.168.1.250 port 5061 expires 3600 Проверить статус регистрации можно в любой момент следующим образом:
*CLI> sip show peers
Name/username Host Dyn Nat ACL Port Status
1000/1000 192.168.1.250 D N 5061 OK (63 ms)
1 sip peers [1 online , 0 offline]
Более подробная информация, представленная ниже, может быть получена с помощью команды sip show peer 1000: *CLI> sip show peer 1000
* Name 1000 Secret : <Not set> MD5Secret <Not set> Context phones Subscr.Cont. <Not set> Language AMA flags Unknown Transfer mode open CallingPres Presentation Allowed, Not Screened Callgroup : Pickupgroup : Mailbox : VM Extension asterisk LastMsgsSent : 32767/65535 Call limit : 0 Dynamic : Yes Callerid : "" <> MaxCallBR 384 kbps Expire : 1032 Insecure : no Nat : RFC3581 ACL : No T38 pt UDPTL No CanReinvite : Yes PromiscRedir : No User=Phone No Video Support No Trust RPID : No