客户端问候后 OpenSSL “挂起”-更新 LetsEncrypt 证书后

客户端问候后 OpenSSL “挂起”-更新 LetsEncrypt 证书后

我在虚拟 Linux 机器上运行基于 Linux CentOS 7.6 的 Apache。我使用 LetsEncrypt 证书进行 HTTPS。半年来,它运行良好。最近我不得不再次更新证书。这也进展顺利。

我仍然可以通过 HTTPS 连接并查看网页。但是,一旦我开始通过 HTTPS 下载(不依赖于客户端),下载就会在几兆字节后停止。从此刻起,我无法建立任何基于 SSL 的连接,因为 TLS 握手失败 - 客户端 Hello 不再得到答复,无论是通过 HTTPS 还是通过 SSH。此外,Apache 完全没有响应,即使在 HTTP 上也是如此。

我尝试了不同的端口,并从不同的网络下载,以排除最终存在的网络代理。我甚至在从本地主机下载时触发​​了该问题。

我通过 wireshark 跟踪了网络接口上的传出数据包,并且可以确认,服务器 hello 未被发送。

如果我阻止客户端通过 HTTPS 下载,则需要几分钟,然后才会发送来自 TLS 握手的 Server Hello 数据包!

因此,从我的角度来看,使用新证书的 TLS 安全连接在整体加密少量兆字节后被阻止。几分钟后它似乎又恢复了活力。我完全不知道现在该做什么,而且我在内核或 Apache 日志中找不到任何能给我线索的提示。

你有什么想法吗?

更新

<VirtualHost *:443>
  Include /etc/letsencrypt/options-ssl-apache.conf
  Include /etc/letsencrypt/options-ssl-apache.conf
  SSLCertificateFile /etc/letsencrypt/live/mydomain/cert.pem
  SSLCertificateKeyFile /etc/letsencrypt/live/mydomain/privkey.pem
  SSLCertificateChainFile /etc/letsencrypt/live/mydomain/chain.pem
</VirtualHost>

选项-ssl-apache.conf

SSLEngine on
SSLProtocol             all -SSLv2 -SSLv3
SSLCipherSuite          ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:ECDHE-ECDSA-DES-CBC3-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA:!DSS
SSLHonorCipherOrder     on

SSLOptions +StrictRequire

相关内容