Перейти к содержимому

Приём и отправка SIP через TLS

Этот перевод выполнен автоматически и ещё не вычитан. Читать английскую версию

TLS шифрует сигнализацию SIP между коммутатором и клиентом или вендором, поэтому номера и заголовки невозможно прочитать по пути. На этой странице настраиваются оба направления: входящие TLS-звонки от клиентов и исходящие TLS-звонки к вендору. Заложите 30 минут.

  • У вас есть доступ Administrator (администратор) к среде.
  • У вас есть действующий сертификат и его закрытый ключ для SIP-имени коммутатора, или вы можете выпустить его через Let’s Encrypt, как описано в разделе Установка SSL-сертификата для веб-интерфейса. Сертификат с истёкшим сроком действия не может установить TLS-соединение.
  • Вы знаете IP-адреса клиентов и вендоров, которые будут использовать TLS.
  • Для исходящих звонков: TLS-адрес и порт вендора, а также его сертификат CA, если вы хотите проверять вендора.

SIP через TLS использует TCP, по умолчанию порт 5061, и IP Firewall (IP-фаервол) закрывает его для всех, пока вы его не разрешите.

  1. Откройте System Management → IP Firewall и выберите вкладку SIP.
  2. Нажмите Add Rule (добавить правило), выберите Type (тип) SIP/TLS, введите IP Address (IP-адрес) и Netmask (маска сети) клиента или вендора и установите Rule (правило) в Allow (разрешить).
  3. Повторите для каждого участника соединения и нажмите Save.

Результат: участники соединения перечислены под SIP/TLS. См. Настройка фаервола.

  1. Откройте System Management → SSL Management → SSL Certificates (SSL-сертификаты) и нажмите Add.
  2. Введите Name (название) и Common Name (общее имя) - SIP-имя коммутатора.
  3. Выберите Use Domain (область использования) SIP TLS и Type: Uploaded (загруженный) с сертификатом и ключом в разделе Advanced Parameters (дополнительные параметры) или Issued by LetsEncrypt.org (выпущен LetsEncrypt.org).
  4. Нажмите Save & Close.

Результат: сертификат есть в списке с его Expiration Date (дата окончания срока действия).

Коммутатор принимает TLS на TCP 5061 каждого IP-адреса среды. Слушателю нужен сертификат, прежде чем он начнёт отвечать.

  1. Откройте System Management → SIP Features → Incoming SIP TLS Connections (входящие соединения SIP TLS).
  2. Нажмите Add.
  3. Выберите Network Listener (сетевой слушатель) - IP-адрес и порт, которые будут принимать TLS.
  4. Выберите SSL Certificate (SSL-сертификат) из шага 2 и TLS Method (метод TLS).
  5. Нажмите Save.
Screenshot "operations/incoming-sip-tls" has not been generated yet — see scripts/screenshots/screens.yml.
TLS Method Принимаемые протоколы
SSLv23 Любые: SSLv2, SSLv3, TLSv1, TLSv1.2, TLSv1.3
TLSv1_3 Только TLSv1.3
TLSv1_2 Только TLSv1.2
TLSv1 Только TLSv1

Используйте TLSv1_2 или TLSv1_3, если участник соединения их поддерживает; SSLv23 принимает также протоколы, которые больше не являются безопасными.

Результат: примерно через минуту слушатель принимает TLS-звонки. Клиенты направляют свои устройства на этот адрес и порт с транспортом TLS.

  1. Необязательно: чтобы проверять сертификат вендора, откройте System Management → SSL Management → CA Lists (списки CA), нажмите Add, введите Name, выберите Use Domain SIP TLS, загрузите сертификат CA вендора в Upload CA List (загрузить список CA) и сохраните.
  2. Откройте Vendors → Vendors и нажмите Connections (подключения) в строке вендора.
  3. Откройте подключение или добавьте новое. Установите Protocol (протокол) в SIP/TLS, введите TLS-адрес и порт вендора и нажмите Save & Close. SIP/TLS предлагается, только когда существует хотя бы один SSL-сертификат.
  4. В списке подключений нажмите SIP TLS Options (параметры SIP TLS) в строке подключения.
  5. Выберите SSL Certificate из шага 2, CA List (список CA), если вы его добавили, и TLS Method.
  6. Нажмите Save.
Screenshot "operations/connection-sip-tls" has not been generated yet — see scripts/screenshots/screens.yml.

Результат: примерно через минуту звонки, маршрутизированные на это подключение, уходят через TLS. Соединения TLS и TCP всегда используют один исходящий порт.

  1. Сделайте тестовый звонок с устройства клиента, настроенного на TLS. Откройте Reports → Call Records (CDRs) и проверьте, что звонок есть в списке.
  2. Сделайте тестовый звонок, маршрутизированный на TLS-подключение, и проверьте его CDR под вендором.
  3. Если TLS-звонок не доходит до коммутатора или до вендора, проверьте правило фаервола SIP/TLS, Expiration Date сертификата и то, что обе стороны принимают одинаковый TLS Method.