Nginx SSL 握手错误

Lig*_*rge 5 linux ubuntu nginx server

我的服务器日志中出现以下错误:

[crit] 915#0:*46701 SSL_do_handshake() 失败(SSL:错误:140A1175:SSL 例程:SSL_BYTES_TO_CIPHER_LIST:不适当的回退),同时 SSL 握手,客户端:187.50.199.66,服务器:0.430。

这是什么意思 ?我该如何解决?

请帮我。

Paw*_*iel 3

看起来,它与OpenSSL 中的安全错误有关。这与你的 nginx 配置无关。这只是表明您的服务器有客户端未正确处理 SSL 握手。

什么是 SSL 握手?

基本上它是在每个会话开始时在客户端和服务器之间交换一些消息。它由 6 个阶段组成:

  1. 客户您好
  2. 服务器你好
  3. 身份验证和预主密钥
  4. 解密和主秘密
  5. 生成会话密钥
  6. 使用会话密钥加密

了解更多信息,请访问http://www.symantec.com/connect/blogs/how-does-ssl-work-what-ssl-handshake

总而言之 - 您的服务器发出此警告表明某些客户端(非)故意破坏此过程(例如,过早结束连接,或尝试在一个会话中多次打开它)。

怎么解决呢?

如果您确实想摆脱此消息(不推荐),您可以将 nginx.conf 文件中的错误日志记录级别更改为 9),如下所示:

error_log logs/error.log alert;
Run Code Online (Sandbox Code Playgroud)

*可用级别有:调试| 信息 | 通知 | 警告| 错误| 暴击| 警报 | 新兴

http://nginx.org/en/docs/ngx_core_module.html#error_log