我的 Ubuntu(Ubuntu 16.04.5 LTS)服务器有问题。这很奇怪。当我尝试使用任何工具通过 SSL 获取特定 URL 时,都会失败。示例:
卷曲
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 -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
---
答案1
经过一番分析,我得出结论,原因一定是以下之一:
- 该主机已阻止我的 IP 在端口 443 上打开连接。
- 某种防火墙阻止我打开端口 443 上的连接。
我通过使用另一台服务器解决了这个问题。
答案2
您需要降低 MTU。
ifconfig <Interface_name> mtu <mtu_size> up
就我的情况来说,1400 效果很好。
ifconfig ens3 mtu 1400 up
我的环境是Ubuntu 20.04。
答案3
当打开“proxy_protocol”并在 ELB 上禁用代理协议时,也会出现类似的错误。启用 ELB 代理协议。
- 检查 Web 服务器日志以获取更多详细信息,例如 /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