質問: gnutls_handshake()が失敗しました:プル関数のエラー ubuntu(ubuntu 16.04.5 lts)サーバーに問題があります。とても奇妙です。 ssl経由で特定のurlを取得するためのツールを使用しようとすると失敗します。例:curlcurl -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. wgetwget -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 ---
回答: いくつかの分析の後、理由は次のいずれかでなければならないという結論に達しました。 そのホストは、ポート443で接続を開くことから私のipをブロックしました。 ある種のファイアウォールにより、ポート443で接続を開くことができません。 別のサーバーを使用して解決しました。