【发布时间】:2012-01-10 14:53:07
【问题描述】:
在我们最近对我们的服务器进行的安全扫描中,我们得到了以下评论:
通常,对于 Apache/mod_ssl,httpd.conf 或 ssl.conf 应该有以下几行: SSL 协议 -ALL +SSLv3 +TLSv1 SSLCipherSuite ALL:!aNULL:!ADH:!eNULL:!LOW:!EXP:RC4+RSA:+HIGH:+MEDIUM
对于 Apache/apache_ssl,在配置文件 (httpsd.conf) 中包含以下行: SSLRequireCipher ALL:!aNULL:!ADH:!eNULL:!LOW:!EXP:RC4+RSA:+HIGH:+MEDIUM
mod_ssl.conf 文件已按说明更新 用这一行更新 apache2.con:
SSLRequireCipher ALL:!aNULL:!ADH:!eNULL:!LOW:!EXP:RC4+RSA:+HIGH:+MEDIUM
然后重新启动 Apache2 ,我得到:
无效命令“SSLRequireCipher”,可能拼写错误或由 模块未包含在服务器配置中
我在 apache2.conf 中尝试了这一行:
SSLRequire %{SSL_CIPHER_USEKEYSIZE} >= 128
并且 Apache2 重新启动成功,但是在重新运行扫描时我得到了相同的结果: SSL 服务器允许匿名身份验证漏洞
【问题讨论】:
-
其实“按指示”应该是第一个选项(SSLProtocol 和 SSLCipherSuite),而不是 SSHRequireCipher。您正在使用 Apache2 及其(集成)mod_ssl(不是 Apache+SSL 或用于 Apache Httpd 1 的 mod_ssl 单独模块)。