В статье опишу как настроить Asterisk в качестве SIP-клиента с SIP TLS и SRTP. Нужно учесть что это сработает если ваш оператор связи поддерживает такие методы шифрования, а так же он должен вам выдать клиентский сертификат и если необходимо, корневой. Далее под катом конфиг с описанием.
Для начала нам нужно включить поддержку TLS, а так же прописать путь к клиентскому сертификату и если необходимо, то к корневому, все это делается в секции General файла sip.conf. Оба эти сертификата вам должен выдать ваш провайдер.
1 2 3 |
tlsenable=yes ; Включаем поддержку TLS tlscertfile=/home/asterisk/101.pem ; Путь до клиентского сертификата tlscafile=/home/asterisk/cacert.pem ; Путь до корневого сертификата (не обязательно) |
Так же нужно учесть, что должны быть разрешения на чтение этих сертификатов для пользователя от чьего имени запущен Asterisk.
Далее прописываем регистрацию на сервере:
1 |
register => tls://101:Lbrbqgfhjkm@10.10.10.10:5061/101 |
Внимание тут нужно обратить на tls:// и порт 5061 (порт может отличатся от данного, но для SSIP обычно используется именно 5061).
Затем создаем непосредственно пира:
1 2 3 4 5 6 7 8 9 10 11 |
[101] username=101 fromuser=101 type=peer secret=Lbrbqgfhjkm context=common host=10.10.10.10 transport=tls ; говорим пиру что нужно работать по протоколу TLS encryption=yes ; именно эта команда включает SRTP port=5061 ; порт скорее всего будет не 5060, а чаще всего это 5061, однако он может отличатся insecure=port,invite |
Все по большому счету стандартно, однако нужно обратить внимание на transport=tls, encryption=yes, port=5061.
Далее в консоли Asterisk делаем sip reload и смотрим что он нам ответит. Если увидели что то такое:
1 2 |
== TLS/SSL ECDH initialized (secp256r1), faster PFS cipher-suites enabled == TLS/SSL certificate ok |
то все ок, сертификаты принялись. И убеждаемся, что регистрация прошла успешно командой sip show peers и sip show registry.
Пробуем делать звонок, если есть какие то проблемы, то смотрим дебаг и выясняем причину.
Одна мысль по поводу “Asterisk клиент SRTP + SSIP”