Настройка SRTP и TLS/SSL в Asterisk::Журнал СА 7-8.2014
www.samag.ru
Журнал «БИТ. Бизнес&Информационные технологии»      
Поиск   
              
 www.samag.ru    Web  0 товаров , сумма 0 руб.
E-mail
Пароль  
 Запомнить меня
Регистрация | Забыли пароль?
Журнал "Системный администратор"
Журнал «БИТ»
Наука и технологии
Подписка
Где купить
Авторам
Рекламодателям
Магазин
Архив номеров
Вакансии
Контакты
   

Jobsora


  Опросы
1001 и 1 книга  
12.02.2021г.
Просмотров: 6623
Комментарии: 0
Коротко о корпусе. Как выбрать системный блок под конкретные задачи

 Читать далее...

11.02.2021г.
Просмотров: 7116
Комментарии: 0
Василий Севостьянов: «Как безболезненно перейти с одного продукта на другой»

 Читать далее...

20.12.2019г.
Просмотров: 13941
Комментарии: 0
Dr.Web: всё под контролем

 Читать далее...

04.12.2019г.
Просмотров: 13819
Комментарии: 9
Особенности сертификаций по этичному хакингу

 Читать далее...

28.05.2019г.
Просмотров: 15217
Комментарии: 2
Анализ вредоносных программ

 Читать далее...

Друзья сайта  

Форум системных администраторов  

sysadmins.ru

 Настройка SRTP и TLS/SSL в Asterisk

Архив номеров / 2014 / Выпуск №7-8 (140-141) / Настройка SRTP и TLS/SSL в Asterisk

Рубрика: IP-телефония /  HowTo

Сергей Яремчук СЕРГЕЙ ЯРЕМЧУК, автор более 800 статей и шести книг. С «СА» с первого номера. Интересы: сетевые технологии, защита информации, свободные ОС, grinder@samag.ru

Настройка SRTP и TLS/SSL в Asterisk

Одной из распространенных атак на VoIP является подбор регистрационной информации и перехват данных. В базовой настройке сервера Asterisk FreeSWITCH, как, впрочем, и у всех остальных, не используется шифрование

Поэтому реализовать MITM очень просто – достаточно изменить DNS или перехватить сеанс (SIP registration hijacking). Всех этих проблем можно избежать, настроив шифрование.

Использование VPN не всегда удобно для конечного пользователя, кроме этого, увеличиваются накладные расходы на передачу пакета, что нередко является причиной задержек и, как следствие, потери качества связи. Также в этом случае шифруется только канал VPN-серверами, внутри сети переговоры идут по незащищенному каналу, поэтому разговор легко перехватить. Кроме этого, для шифрования переговоров можно использовать «штатные» протоколы – SRTP (Secure Real Time Protocol) или ZRTP (Z and Real-time Transport Protocol).

Протокол SRTP (RFC 3711) позволяет шифровать (AES128) голосовой поток, обеспечивать проверку подлинности (HMAC-SHA1) и требует меньших ресурсов для работы. Но он не обеспечивает защиту процесса аутентификации, поэтому вместе с ним обычно задействуется TLS/SSL.

Протокол ZRTP (RFC 6189) специально для VoIP разработан Филиппом Циммерманом, создателем PGP. В отличие от SRTP он обеспечивает безопасную аутентификацию и шифрование данных, хотя и требует больших ресурсов. Во время инициализации звонка ZRTP использует метод обмена ключами Диффи – Хеллмана, для аутентификации применяется SAS (Short Authentication String). Весь разговор шифруется, пара ключей генерируется для каждого сеанса автоматически. Такой подход не требует PKI, и поддержку протокола легко встроить в уже существующие продукты.

VoIP-серверы Asterisk (от 1.8), FreeSWITCH поддерживают оба варианта: SRTP+TLS/SSL и ZRTP. Многие аппаратные и программные софтфоны также могут работать с защищенными данными: Linphone (TLS, SRTP, ZRTP), Blink (TLS, SRTP), Jitsi (TLS, SRTP, ZRTP), MicroSIP (TLS, SRTP).

Настройка TLS в Asterisk

Сервер Asterisk поддерживает TLS между серверами и сервер-клиент. RSA-ключи, используемые для шифрования, можно сгенерировать с помощью команды openssl genrsa, специальных скриптов astgenkey (astgenkey -n keyname) или ast_tls_cert (копируют ключи в /var/lib/asterisk/keys). Последние не всегда доступны в пакетах или специальных дистрибутивах вроде Elastix, взять их можно на SVN-сервере (svnview.digium.com/svn/asterisk/branches/12/contrib/scripts).

Для активации TLS достаточно прописать в настройках (sip.conf) всего несколько команд:

tcpenable=yes

tcpbindaddr=0.0.0.0

tlscertfile=/etc/asterisk/cert/asterisk.pem

tlscafile=/etc/asterisk/cert/ca.crt

tlsprivatekey=/var/lib/asterisk/keys/example.org.key

tlsclientmethod=tlsv1

Проверить подключение легко:

$ openssl s_client host localhost port 5061

В настройках клиентской части просто разрешаем использование TLS:

transport=tls

Теперь подключение безопасно, и подсмотреть регистрационные данные нельзя, хотя сами переговоры не шифруются. Чтобы включить SRTP, достаточно добавить одну строку в файле iax.conf или sip.conf:

encryption=yes

Перезапускаем настройки командой sip reload/iax2 reload, опционально можно провериться, загружен ли модуль

CLI> module show like res_srtp.so

Это все. Снифер покажет, что используется SRTP и перехват пакетов невозможен. Буква «Е» напротив подключенных клиентов в выводе iax show peers, означает, что шифрование активно.


Комментарии отсутствуют

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

Комментарии могут оставлять только зарегистрированные пользователи

               Copyright © Системный администратор

Яндекс.Метрика
Tel.: (499) 277-12-41
Fax: (499) 277-12-45
E-mail: sa@samag.ru