我应该为nginx ssl设置diffie helman参数吗?

我用ssl设置了nginx。 一切工作都完美无缺,在线工具使域名得分高。

现在我想知道一个特定的nginxconfiguration选项; ssl_dhparam 。 我应该生成并设置这些参数吗? 它对ssl的安全性或计算量有没有影响?

我应该生成并设置这些参数吗?

是。

它对ssl的安全性有什么影响吗?

是的,当启用完美转发保密 。 一个合适的 密码套件也必须configuration。

如果未来的攻击者妥协了你的TLS,那么在PFS过去的stream量下,他们截获并保留的内容仍然不能被解密。

生成一个 不小于您的SSL证书RSA私钥的DHE素数 。 给定一个2048位的私钥:

$ openssl dhparam -out dhparam.pem 2048 Generating DH parameters, 2048 bit long safe prime, generator 2 ..+..+...............+ 

它对ssl的计算量有什么影响吗?

太担心了。

  • TLS慢的传统观点已经过时
  • PFS的优势大于成本
  • TLS 由现代CPU处理得很好 ; 与TLS的总成本相比,增加DH具有较小的增量成本
  • 这个成本只是在TLS握手期间发生的; 经过良好调整的TLS很less进行握手,或者通过会话恢复 , 错误启动 , OCSP装订等方式降低成本

Google I / O 2014有一个很好的HTTPS Everwhere谈话,广泛涉及这些和相关的话题。

Diffie helman是一个很好的密钥交换algorithm,但是需要花费太多的时间来减慢你的网站速度。 我推荐使用比DH弱的RC4-SHA ,但是它的目的就在于此。 如果有帮助,google.com使用RC4-SHA 。 您可以使用以下方法查看任何网站的algorithm:

 openssl s_client -host HOSTNAME -port 443 

我build议你检查什么样的密钥交换和encryption其他网站类似于你正在使用和使用合适的algorithm。
也读同一个话题的这篇文章。