Ошибка gnutls_handshake(): ошибка в функции извлечения

У меня проблема с моим сервером Ubuntu (Ubuntu 16.04.5 LTS). Это очень странно Когда я пытаюсь использовать какой-либо инструмент для извлечения определенного URL через ssl, он терпит неудачу. Примеры:

CURL

curl -v https://www.netonnet.se/
*   Trying 91.198.164.24...
* Connected to www.netonnet.se (91.198.164.24) port 443 (#0)
* found 148 certificates in /etc/ssl/certs/ca-certificates.crt
* found 596 certificates in /etc/ssl/certs
* ALPN, offering http/1.1
* gnutls_handshake() failed: Error in the pull function.
* Closing connection 0
curl: (35) gnutls_handshake() failed: Error in the pull function.

WGET

wget -v https://www.netonnet.se/
--2018-12-29 12:00:42--  https://www.netonnet.se/
Resolving www.netonnet.se (www.netonnet.se)... 91.198.164.24
Connecting to www.netonnet.se (www.netonnet.se)|91.198.164.24|:443... connected.
Unable to establish SSL connection

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

РЕДАКТИРОВАТЬ

Это то, что я получаю, когда пытаюсь открыть openssl. Кажется, что-то не так с получением сертификата с хоста.

# openssl s_client  -servername www.netonnet.se -connect www.netonnet.se:443
CONNECTED(00000003)
write:errno=104
---
no peer certificate available
---
No client certificate CA names sent
---
SSL handshake has read 0 bytes and written 317 bytes
Verification: OK
---
New, (NONE), Cipher is (NONE)
Secure Renegotiation IS NOT supported
Compression: NONE
Expansion: NONE
No ALPN negotiated
SSL-Session:
    Protocol  : TLSv1.3
    Cipher    : 0000
    Session-ID:
    Session-ID-ctx:
    Resumption PSK:
    PSK identity: None
    PSK identity hint: None
    SRP username: None
    Start Time: 1546109807
    Timeout   : 7200 (sec)
    Verify return code: 0 (ok)
    Extended master secret: no
    Max Early Data: 0
---

3 ответа

Решение

После некоторого анализа я пришел к выводу, что причина должна быть одной из:

  1. Этот хост заблокировал мой IP от открытия соединения через порт 443.
  2. Какой-то брандмауэр заблокировал мне возможность открывать соединения через порт 443.

Я решил это с помощью другого сервера.

Вам нужно уменьшить MTU.

ifconfig <Interface_name> mtu <mtu_size> up

В моем случае 1400 работало хорошо.

ifconfig ens3 mtu 1400 up

Моя среда — Ubuntu 20.04.

Была аналогичная ошибка при включении "proxy_protocol" и отключении протокола прокси на ELB. Включите протокол прокси ELB.

  • Проверьте журналы веб-сервера для получения более подробной информации, например /var/log/nginx/error.log

вы можете увидеть такую ​​ошибку

2020/06/20 20:31:02 [error] 12071#12071: *149 broken header: "" while reading PROXY protocol, client: 62.54.78.90, server: 0.0.0.0:3344
Другие вопросы по тегам