我正在尝试让运行 Apache 2.2.17 的 Fedora 14 服务器通过 McAfee ScanAlert 的 PCI-DSS 合规性扫描。我第一次尝试使用在 ssl.conf 中设置的默认 SSLCipherSuite 和 SSLProtocol 指令...
SSLProtocol ALL -SSLv2
SSLCipherSuite ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP
失败,理由是启用了弱密码。使用 ssllabs 和 serversniff 工具进行的扫描显示 40 位和 56 位密钥确实可用。
然后我改成...
SSLProtocol -ALL +SSLv3 +TLSv1
并尝试了在各个站点上报告的所有以下字符串,以通过来自各种供应商的 PCI 扫描...
SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH
SSLCipherSuite ALL:!ADH:!NULL:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:-LOW:+SSLv3:+TLSv1:-SSLv2:+EXP:+eNULL
SSLCipherSuite ALL:!ADH:!NULL:!EXP:!SSLv2:!LOW:RC4+RSA:+HIGH:+MEDIUM
SSLCipherSuite ALL:!aNULL:!ADH:!eNULL:!LOW:!EXP:RC4+RSA:+HIGH:+MEDIUM
SSLCipherSuite ALL:!ADH:!NULL:!EXP:!SSLv2:!LOW:!MEDIUM:RC4+RSA:+HIGH
我在更新后重新启动 apache 并且 apachectl configtest 说我的语法没问题。随后的 ScanAlert 扫描均失败,其他扫描工具继续显示 40 位和 56 位密码可用。我尝试将 SSLProtocol 和 SSLCipherSuite 直接添加到 httpd.conf 中的 VirtualHost,但没有帮助。
实际上感觉某处的某些东西正在覆盖这些设置,但除了 ssl.conf 之外,我在任何地方都找不到设置这些值的任何东西。
如果有人可以提供一个已知良好的 SSLCipherSuite,它已经通过了最近的 PCI 扫描,这将有助于追踪我的问题。
谢谢。