web-dev-qa-db-ja.com

gnutls_handshake()が失敗しました:プル関数のエラー

Ubuntu(Ubuntu 16.04.5 LTS)サーバーに問題があります。とても奇妙です。 ssl経由で特定のURLを取得するためのツールを使用しようとすると失敗します。例:

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
joscul

いくつかの分析の後、理由は次のいずれかでなければならないという結論に達しました。

  1. そのホストは、ポート443で接続を開くことから私のIPをブロックしました。
  2. ある種のファイアウォールにより、ポート443で接続を開くことができません。

別のサーバーを使用して解決しました。

5
joscul