VIDEOCHAT  ::   FAQ  ::   Поиск  ::   Регистрация  ::   Вход

Asterisk 13.7.0 + WebRTC через WSS

Проблемы Asterisk без вэб-оболочек и их решения

Модераторы: april22, Zavr2008

Ответить
goffman
Сообщения: 7
Зарегистрирован: 03 мар 2016, 23:31

Asterisk 13.7.0 + WebRTC через WSS

Сообщение goffman »

Всем привет! Столкнулся с проблемой настройки астера через WSS. Через обычный WS все работает без проблем. Для подключения использую sipml5. При подключении через WSS астер не пишет вообще никаких логов, а вебфон Disconnected: Failed to connet to the server. Ниже конфиги астериска:
http.conf
PRIME_BBCODE_SPOILER_SHOW PRIME_BBCODE_SPOILER:
[general]
enabled=yes
bindaddr=0.0.0.0
bindport=8088
tlsenable=yes
tlsbindaddr=0.0.0.0:8089
;tlscertfile=/etc/asterisk/keys/asterisk.crt
tlscertfile=/etc/asterisk/keys/asterisk.pem
tlscafile=/etc/asterisk/keys/ca.crt
tlsprivatekey=/etc/asterisk/keys/asterisk.key
;tlscipher=ALL
;tlsclientmethod=tlsv1
sip.conf
PRIME_BBCODE_SPOILER_SHOW PRIME_BBCODE_SPOILER:
[webrtc](!)
host=dynamic
context=from-internal
type=friend
encryption=yes
avpf=yes
force_avp=yes
icesupport=yes
nat=force_rport,comedia
directmedia=no
disallow=all
qualify=yes
videosupport=yes
allow=ulaw,alaw,vp8,h264,h263p,mpeg4
dtlsenable=yes
dtlsverify=no
tlsenable=yes
tlsbindaddr=0.0.0.0
tlscertfile=/etc/asterisk/keys/more/asterisk.pem
tlscafile=/etc/asterisk/keys/more/ca.crt
tlscipher=ALL
tlsclientmethod=tlsv1
dtlscertfile=/etc/asterisk/keys/asterisk.pem
dtlscafile=/etc/asterisk/keys/ca.crt
dtlssetup=actpass
transport=tls,udp,ws,wss
http show status
PRIME_BBCODE_SPOILER_SHOW PRIME_BBCODE_SPOILER:
HTTP Server Status:
Prefix:
Server: Asterisk/13.7.0
Server Enabled and Bound to 0.0.0.0:8088

HTTPS Server Enabled and Bound to 0.0.0.0:8089

Enabled URI's:
/httpstatus => Asterisk HTTP General Status
/phoneprov/... => Asterisk HTTP Phone Provisioning Tool
/static/... => Asterisk HTTP Static Delivery
/ari/... => Asterisk RESTful API
/ws => Asterisk HTTP WebSocket

Enabled Redirects:
None.
в вебфоне пишу wss://my.ip:8089/ws порт открыт, телнетом видит.
может кто настраивал такое - подскажите, что делаю не так. Если нужна дополнительная инфа - предоставлю. Спасибо!
Vlad1983
Сообщения: 4251
Зарегистрирован: 09 авг 2011, 11:51

Re: Asterisk 13.7.0 + WebRTC через WSS

Сообщение Vlad1983 »

Код: Выделить всё

openssl s_client -connect my.ip:8089
ЛС: @rostel
goffman
Сообщения: 7
Зарегистрирован: 03 мар 2016, 23:31

Re: Asterisk 13.7.0 + WebRTC через WSS

Сообщение goffman »

В общем найдено решение, которое позволяет двигаться дальше. Так как сертификаты подписаны астером, в мозиле добавил их в исключение. Теперь все коннектится и даже звонит, но голос не проходит.
[Mar 4 10:44:03] ERROR[4335][C-00000006]: res_rtp_asterisk.c:2129 __rtp_recvfrom: DTLS failure occurred on RTP instance '0x7f20440190e8' due to reason 'sslv3 alert bad certificate', terminating
[Mar 4 10:44:03] WARNING[4335][C-00000006]: res_rtp_asterisk.c:4332 ast_rtp_read: RTP Read error: Unspecified. Hanging up.
вот такое в логах, когда берешь трубку
Vlad1983
Сообщения: 4251
Зарегистрирован: 09 авг 2011, 11:51

Re: Asterisk 13.7.0 + WebRTC через WSS

Сообщение Vlad1983 »

потому что с самоподписанными сертификатами DTLS ходить не будет
ЛС: @rostel
goffman
Сообщения: 7
Зарегистрирован: 03 мар 2016, 23:31

Re: Asterisk 13.7.0 + WebRTC через WSS

Сообщение goffman »

вот это я уже понял. купил сертификаты, но астер их не скушал. с ними даже https в астере не поднялся. продолжаю разбираться. может я их не так сгенирировал. не особо силен в сертификации
ded
Сообщения: 15628
Зарегистрирован: 26 авг 2010, 19:00

Re: Asterisk 13.7.0 + WebRTC через WSS

Сообщение ded »

goffman писал(а):купил сертификаты, но астер их не скушал. с ними даже https в астере не поднялся
Этак надо очень постараться!
А где и какие? Если по 5, вчера - до годные, а если по 3 рубля - не пойдут. (Это я Жванецкого цитирую).
Купленый серт открывается сам в себе, инфу про Certificate authority какую пишет? Valid not before? Not after?

Код: Выделить всё

openssl x509 -in certificate.crt -text -noout
goffman
Сообщения: 7
Зарегистрирован: 03 мар 2016, 23:31

Re: Asterisk 13.7.0 + WebRTC через WSS

Сообщение goffman »

Как я делал. - сгенерировал сертификаты, как описано тут -
PRIME_BBCODE_SPOILER_SHOW PRIME_BBCODE_SPOILER:
https://habrahabr.ru/post/186530/
, после подписал csr файл на ssls.com. Далее cert-server.crt key-server.pem записал в один файл asterisk.pem. в http.conf и sip.conf указал путь к asterisk.pem - так все работает. все всем звонит и голос ходит в обе стороны. Но все таки охота прикрутить сертификаты, что выдал ЦС. как я понял, астер кушает только pem сертификаты. ЦС выдал web-сертивикат и CA сертификат. как их в pem превратить?
Vlad1983
Сообщения: 4251
Зарегистрирован: 09 авг 2011, 11:51

Re: Asterisk 13.7.0 + WebRTC через WSS

Сообщение Vlad1983 »

снять пароль с ключа
содержимое серта и расшифрованного ключа в один файл
ЛС: @rostel
dvvelcerebro
Сообщения: 1
Зарегистрирован: 15 апр 2016, 05:53

Re: Asterisk 13.7.0 + WebRTC через WSS

Сообщение dvvelcerebro »

Всем хорошего настроения!

Решил не создавать новую тему а спросить в этой.
Установлен Asterisk PBX 13.5.0
Установил сертификаты для WSS.
Подключаюсь при помощи jssip.
Проблема заключается в следующем когда подключаюсь при помощи WSS могу звонить с браузера но при этом звонки в браузер не приходят.
Если использую WS то звонки ходят в обе стороны нормально.
Подскажите в чем может быть проблема, или хотя в какую сторону копать?

Конфиг файл http

Код: Выделить всё

[general]
enabled=yes
enablestatic=yes
bindaddr=::
bindport=8088
prefix=
tlsenable=yes
tlsbindport=8089
tlsbindaddr=0.0.0.0
tlscertfile=/var/www/html/smartasterbridge/d.pem
tlsprivatekey=/var/www/html/smartasterbridge/d.pem
конфиг файла sip

Код: Выделить всё

[1191]
deny=0.0.0.0/0.0.0.0
secret=77009215b4d475d5e31d4ef3f0a76909
dtmfmode=rfc2833
canreinvite=yes
context=from-internal
host=dynamic
trustrpid=yes
sendrpid=no
type=friend
nat=force_rport,comedia
port=5060
qualify=yes
qualifyfreq=60
transport=wss,udp,tcp,tls
avpf=yes
force_avp=yes
icesupport=yes
encryption=yes
namedcallgroup=
namedpickupgroup=
dial=SIP/1191
mailbox=1191@device
permit=0.0.0.0/0.0.0.0
callerid=9aec7fe9-5e12-4647-a175-7e6c21f0beb0 <1191>
callcounter=yes
faxdetect=no
cc_monitor_policy=generic
dtlsenable=yes
dtlsverify=no
dtlscertfile=/etc/asterisk/keys/aster2.pem
dtlscafile=/etc/asterisk/keys/ca.crt
dtlssetup=actpass
dtlsrekey=0
2Min
Сообщения: 1
Зарегистрирован: 18 окт 2016, 13:34

Re: Asterisk 13.7.0 + WebRTC через WSS

Сообщение 2Min »

Приветствую, коллеги.
У меня тоже только что была подобная ситуация как у dvvelcerebro
jssip при регистрации в asterisk передает параметр transport=ws а мы регистрируемся в WSS
database show покажет реальную ситуацию
для лечения я просто исправил в jssip все строки transport=ws на transport=wss ( решение конечно не очень, но у меня только WSS на клиентах)
после перезапуска клиента database show кажет уже нормальную строчку
и появились входящие на jssip клиенте
Сейчас буду думать как это изменить через методы и параметры jssip
Ответить
© 2008 — 2025 Asterisk.ru
Digium, Asterisk and AsteriskNOW are registered trademarks of Digium, Inc.
Design and development by PostMet-Netzwerk GmbH