AF
Asterisk Forum
обсуждения телефонии, VoIP и IP-PBX
12разделов
5 423тем
34 385сообщений
← К списку тем

Без использования TLS ошибка: tcptls.c:684 handle_tcptls_connection: FILE * open failed!

Newbies/FAQ Forum 18 сообщений -
#1

Добрый день!

Третий год использую Asterisk13 на Openwrt.
Всё замечательно работало.

Сейчас апгрейдил Openwrt на LEDE. По новой установил Asterisk, файлы конфигурации(sip, extension) взял старые. Версия пакетов Asterisk - 13.9.1-1.
Всё работает, за исключением одного клиента: CSIPSimple на Андроид - при подключении по TCP Asterisk выдаёт:
tcptls.c:684 handle_tcptls_connection: FILE * open failed!

По UDP работает, но мне нужно именно TCP. TLS я не использую. И в клиенте и в sip.conf transport=TCP.

Ошибка появляется как при подключении через NAT, так и при локальном подключении.

В чём может быть проблема? Может быть не хватает какого-нибудь пакета? К сожалению на Openwrt я не записал, какие были установлены пакеты Asterisk13.
#2

Вот кусок sip.conf

Код:
[general]
disallow=all
allow=alaw
allow=ulaw
allow=gsm
dtmfmode=rfc2833
videosupport=no
canreinvite=no
directmedia=no

; Network Settings
nat=auto_force_rport,auto_comedia
realm=dir835.lan
qualify=yes
defaultexpiry=180

tcpenable=yes
tlsenable=no
bindport = 5260
port = 5260
bindaddr = 0.0.0.0

useragent = PBX

; Register peers
registerattempts=0
registertimeout=20

[21]
type=peer
context=my-phones
secret=xxxxx
transport=tcp,udp
host=dynamic
videosupport=yes
allow=h264
allow=h263p
allow=vp8
dial=SIP/21
nat=comedia
qualify=10000
qualifyfreq=120
#3

а зачем вы биндите на 5260 ?
#4

april22 @ Вт Авг 08, 2017 10:39 писал(а):
а зачем вы биндите на 5260 ?


Я сменил порт, чтобы меньше людей ломилось. На 5060 непрерывно валятся запросы, на нестандартный порт - нет.
#5

добейтесь нормальной работы на стандартных портах .
потом будете тюнить как вам надо .
#6

april22 @ Вт Авг 08, 2017 12:26 писал(а):
добейтесь нормальной работы на стандартных портах .
потом будете тюнить как вам надо .


У меня нормально работает и на этих портах - я это написал в первом посте. И данная ошибка вообще не связана с портом.
Но чтобы вас успокоить прямо сейчас сменю порт.

Added after 4 minutes:

Порт сменил - ничего не изменилось, естественно!
#7

меня не надо ускорять Smile я и так быстрый Wink

ищите по конфигам . что и где прописано ... наверняка хвосты какие то есть .
#8

april22 @ Вт Авг 08, 2017 14:33 писал(а):
меня не надо ускорять Smile я и так быстрый Wink

Я написал "успокоить", а не "ускорить".

april22 @ Вт Авг 08, 2017 14:33 писал(а):
ищите по конфигам . что и где прописано ... наверняка хвосты какие то есть .

Спасибо, очень полезный совет. Как в анекдоте "дяденька, я знаю, что у вас сломалось - АВТОБУС". Я уже написал, что эти конфиги работали на том же Астериск13 только на Openwrt. Сейчас поставил на LEDE(это клон Openwrt) и там такое случилось.
#9

А вы разбирались с этим ?
я вот тоже на Open WRT не смог толком обработать сертификаты телеграмма на HTTPS. и кажется ни чего сверх естественного ... да . просто на втором этапе обработки - ошибка .. причем ошибкой пестрит интернет ... и нет решения ....
предполагаю - что может быть, что сама система требует какие то сертификаты , или старается их проверить , и не может . и ошибка системная а не астериска.

хотите помочь - отрапартуйте об вашей проблеме на asterisk.org , разработчики может посмотрят . если захотят ...

и чем было обусловлен переход , если ТРИ года работало ?!
#10

april22 @ Вт Авг 08, 2017 15:11 писал(а):


и чем было обусловлен переход , если ТРИ года работало ?!


Openwrt постепенно умирает, LEDE - наоборот. Надо обновляться периодически.

Не умею хорошо по-английски писать, иначе давно бы уже написал разработчикам Астерикса.

Дело в том, что я не использую TLS - для TCP вообще никаких сертификатов не должно быть.
#11

Покажите
Код:
core show settings

и
Код:

sip show settings

и
Код:
sip show peer 21
#12

settings:
Код:
dir835*CLI> core show settings

PBX Core settings
-----------------
Version: 13.9.1
Build Options: LOADABLE_MODULES, OPTIONAL_API
Maximum calls: Not set
Maximum open file handles: Not set
Root console verbosity: 0
Current console verbosity: 0
Debug level: 0
Maximum load average: 0.000000
Minimum free memory: 0 MB
Startup time: 12:56:51
Last reload time: 12:56:51
System: Linux/3.16.0-4-amd64 built by buildbot on x86_64 2017-02-02 06:35:37 UTC
System name:
Entity ID: c8:be:19:5f:9f:1a
Default language: en
Language prefix: Enabled
User name and group: /
Executable includes: Disabled
Transcode via SLIN: Enabled
Transmit silence during rec: Disabled
Generic PLC: Disabled
Min DTMF duration:: 80

* Subsystems
-------------
Manager (AMI): Disabled
Web Manager (AMI/HTTP): Disabled
Call data records: Enabled
Realtime Architecture (ARA): Disabled

* Directories
-------------
Configuration file:
Configuration directory: /etc/asterisk
Module directory: /usr/lib/asterisk/modules
Spool directory: /var/spool/asterisk
Log directory: /var/log/asterisk
Run/Sockets directory: /var/run/asterisk
PID file: /var/run/asterisk/asterisk.pid
VarLib directory: /var/lib/asterisk
Data directory: /var/lib/asterisk
ASTDB: /var/lib/asterisk/astdb
IAX2 Keys directory: /var/lib/asterisk/keys
AGI Scripts directory: /var/lib/asterisk/agi-bin


sip settings:
Код:
dir835*CLI> sip show settings


Global Settings:
----------------
UDP Bindaddress: 0.0.0.0:5266
TCP SIP Bindaddress: 0.0.0.0:5266
TLS SIP Bindaddress: Disabled
Videosupport: No
Textsupport: No
Ignore SDP sess. ver.: No
AutoCreate Peer: Off
Match Auth Username: No
Allow unknown access: Yes
Allow subscriptions: Yes
Allow overlap dialing: Yes
Allow promisc. redir: No
Enable call counters: No
SIP domain support: No
Path support : No
Realm. auth: No
Our auth realm dir835.lan
Use domains as realms: No
Call to non-local dom.: Yes
URI user is phone no: No
Always auth rejects: Yes
Direct RTP setup: No
User Agent: PBX
SDP Session Name: Asterisk PBX 13.9.1
SDP Owner Name: root
Reg. context: (not set)
Regexten on Qualify: No
Trust RPID: No
Send RPID: No
Legacy userfield parse: No
Send Diversion: Yes
Caller ID: asterisk
From: Domain:
Record SIP history: Off
Auth. Failure Events: Off
T.38 support: No
T.38 EC mode: Unknown
T.38 MaxDtgrm: 4294967295
SIP realtime: Disabled
Qualify Freq : 60000 ms
Q.850 Reason header: No
Store SIP_CAUSE: No

Network QoS Settings:
---------------------------
IP ToS SIP: CS0
IP ToS RTP audio: CS0
IP ToS RTP video: CS0
IP ToS RTP text: CS0
802.1p CoS SIP: 4
802.1p CoS RTP audio: 5
802.1p CoS RTP video: 6
802.1p CoS RTP text: 5
Jitterbuffer enabled: No

Network Settings:
---------------------------
SIP address remapping: Disabled, no localnet list
Externhost:
Externaddr: (null)
Externrefresh: 10

Global Signalling Settings:
---------------------------
Codecs: (alaw|ulaw|gsm)
Relax DTMF: No
RFC2833 Compensation: No
Symmetric RTP: Auto (No)
Compact SIP headers: No
RTP Keepalive: 0 (Disabled)
RTP Timeout: 0 (Disabled)
RTP Hold Timeout: 0 (Disabled)
MWI NOTIFY mime type: application/simple-message-summary
DNS SRV lookup: Yes
Pedantic SIP support: Yes
Reg. min duration 60 secs
Reg. max duration: 3600 secs
Reg. default duration: 180 secs
Sub. min duration 60 secs
Sub. max duration: 3600 secs
Outbound reg. timeout: 20 secs
Outbound reg. attempts: 0
Outbound reg. retry 403:0
Notify ringing state: Yes
Include CID: No
Notify hold state: No
SIP Transfer mode: open
Max Call Bitrate: 384 kbps
Auto-Framing: No
Outb. proxy:
Session Timers: Accept
Session Refresher: uas
Session Expires: 1800 secs
Session Min-SE: 90 secs
Timer T1: 500
Timer T1 minimum: 100
Timer B: 32000
No premature media: Yes
Max forwards: 70

Default Settings:
-----------------
Allowed transports: UDP
Outbound transport: UDP
Context: default
Record on feature: automon
Record off feature: automon
Force rport: Auto (No)
DTMF: rfc2833
Qualify: 2000
Keepalive: 0
Use ClientCode: No
Progress inband: No
Language:
Tone zone:
MOH Interpret: default
MOH Suggest:
Voice Mail Extension: asterisk


peer 21:

Код:
dir835*CLI> sip show peer 21


* Name : 21
Description :
Secret :
MD5Secret :
Remote Secret:
Context : my-phones
Record On feature : automon
Record Off feature : automon
Subscr.Cont. :
Language :
Tonezone :
AMA flags : Unknown
Transfer mode: open
CallingPres : Presentation Allowed, Not Screened
Callgroup :
Pickupgroup :
Named Callgr :
Nam. Pickupgr:
MOH Suggest :
Mailbox :
VM Extension : asterisk
LastMsgsSent : 0/0
Call limit : 0
Max forwards : 0
Dynamic : Yes
Callerid : ""
MaxCallBR : 384 kbps
Expire : -1
Insecure : no
Force rport : No
Symmetric RTP: Yes
ACL : No
DirectMedACL : No
T.38 support : No
T.38 EC mode : Unknown
T.38 MaxDtgrm: 4294967295
DirectMedia : No
PromiscRedir : No
User=Phone : No
Video Support: Yes
Text Support : No
Ign SDP ver : No
Trust RPID : No
Send RPID : No
Path support : No
Path : N/A
TrustIDOutbnd: Legacy
Subscriptions: Yes
Overlap dial : Yes
DTMFmode : rfc2833
Timer T1 : 500
Timer B : 32000
ToHost :
Addr->IP : (null)
Defaddr->IP : (null)
Prim.Transp. : TCP
Allowed.Trsp : TCP
Def. Username:
SIP Options : (none)
Codecs : (alaw|ulaw|gsm|h264|h263p|vp8)
Auto-Framing : No
Status : UNKNOWN
Useragent :
Reg. Contact :
Qualify Freq : 120000 ms
Keepalive : 0 ms
Sess-Timers : Accept
Sess-Refresh : uas
Sess-Expires : 1800 secs
Min-Sess : 90 secs
RTP Engine : asterisk
Parkinglot :
Use Reason : No
Encryption : No
#13

ok.
Цитата:
module show like rtp


Ну и давайте посмотрим на настройки CSIPSipmple режиме "Expert"
Кстати, почему именно CSIPSimple? С недавних пор sip клиент есть встроенный в номеронабиратель. Его пробовали?
#14

Код:
dir835*CLI> module show like rtp
Module Description Use Count Status Support Level
res_rtp_asterisk.so Asterisk RTP Stack 0 Running core
1 modules loaded


Встроенный очень ограничен в функционале. Например, там нет правил набора. И всяких других настроек.
Какие настройки смотреть в CSIPSimple?
#15

Так вот не вижу что бы где-то у вас что-то упоминалось про шифрование и TLS
Вероятно, TLS почему то хочет CSIPSimple.
Других вариантов я не вижу. Может бага в самом астере, вы пробовали ставить более старую версию? На трекере искать не пробовали? http://issues.asterisk.org
#16

xelas @ Ср Авг 09, 2017 10:02 писал(а):
Так вот не вижу что бы где-то у вас что-то упоминалось про шифрование и TLS
Вероятно, TLS почему то хочет CSIPSimple.
Других вариантов я не вижу. Может бага в самом астере, вы пробовали ставить более старую версию? На трекере искать не пробовали? http://issues.asterisk.org


В том то и дело, что TLS нигде и не включен - ни в астериске, ни в CSIPSimple. На клиенте вручную выставлен TCP.
Всё работало, пока не обновил ОС на роутере. Ну и версия пакетов астериска стала по-новее.
На трекере не искал. В сети таких ошибок много, но у всех они связаны с TLS, а у меня его вообще нет.
Включал sip debug, но он молчит - похоже, что это раньше когда-то происходит и дебаг никаких подробностей не пишет.
#17

сделайте дамп всего трафика, который приходит от клиента и в wireshark разберите по "косточкам".
так точно все чудеса должны выплыть наружу.

_________________
mega-net.ru - IT аутсорсинг
#18

Вернул Openwrt 15.05.1 и Asterisk 13.6.0-1 и всё сразу пошло без каких-либо перенастроек.
Проблема в 13.9.1-1