我想从源代码编译OpenSSL。在编译它时,我可以使用许多配置选项。我希望它尽可能的安全和坚固,并最终在编译Apache时使用它。对于这个目标,有些配置选项似乎是显而易见的,比如no-ssl2和no-ssl3。我还应该使用哪些其他选项?为什么?这些选项都被记录在OpenSSL网站上,但对于其中一些选项,我很难辨别使用每一个选项的效果或利弊。
选择哪些务实的选项将使OpenSSL变得更硬?
发布于 2017-01-27 22:52:43
这完全取决于您预期的客户端和您使用的证书。如果您同时控制客户端和服务器,只选择TLS1.2(或者可能选择TLS 1.3 (一旦它是最终版本),将一些ECDHE的东西用于完美的前向保密,使用组装版本(它可以使用Intel的AESNI指令,而不会变慢),并丢弃所有您不需要的东西。尽可能小。
如果您不控制客户端,请使用客户端所需的内容,但要使用常识(例如,如果您的客户端是Windows XP上的IE,则没有一个安全密码,因此这是一个失败的原因)。
确切的标志列表取决于许多因素:例如openssl版本、操作系统、编译器/CPU等等。
通常,linux发行版在挑选不太糟糕的编译标志、企业级标志(RHEL、SLES等)方面做得相当好。通常使用openssl的FIPS模式,这意味着要稍微加强一些(请参阅https://www.openssl.org/docs/fips.html )。
https://serverfault.com/questions/829033
复制相似问题