HTTPS соединение закрыто после SSL рукопожатия без исключения - PullRequest
0 голосов
/ 25 сентября 2019

Я использую библиотеку (sentry.io наблюдатель), которая должна подключаться к удаленному серверу через https и загружать некоторые данные.Я не контролирую сервер, но вижу, что данные не загружены.Я установил уровень ведения журнала urllib на отладку и вижу два сообщения журнала

DEBUG:urllib3.connectionpool:Starting new HTTPS connection (1): <server_url>:443
DEBUG:urllib3.connectionpool:Starting new HTTPS connection (2): <server_url>:443

, но исключение не выдается.Я использовал wireshark для перехвата пакетов и вижу, что выполняется два рукопожатия SSL, но пакет FIN отправляется сразу после того, как сервер завершает рукопожатие.Обмен пакетами выглядит следующим образом:

< - client sends message
> - server sends message

< TCP handshake [syn, syn ack, ack]
< Client hello
> Server hello, certificate, server key exchange, server hello done
< Client key exchange, change cipher spec, finished
> New session ticket, change cipher spec, finished
< TCP connection termination [fin ack, fin ack, ack]

Этот обмен пакетами выполняется дважды, так как urllib пытается подключиться к удаленному серверу дважды.Сертификат сервера действителен, но клиент отменяет соединение.Я настроил библиотеку и средства ведения журнала urllib на отладку, но не появляется никаких сообщений об ошибках или чего-либо, что могло бы помочь мне сузить проблему.

Эта проблема появляется только тогда, когда запросы выполняются из докера (на основе centos 7), нопри запуске приложения на хосте Ubuntu оно работает нормально, соединение установлено и данные загружены.В чем может быть причина проблемы?

...