Apache默认是启用SSLv3和RC4的,但其实SSLv3和RC4都已经不够安全,应当禁用。而启用Forward Secrecy能够增强主流浏览器访问的前向安全性。方法很简单,首先修改网站的配置文件,下面以默认站点配置文件为例。
如果是Apache 2.4,编辑以下文件。
vi /etc/apache2/sites-available/default-ssl.conf
在文件最下方增加以下几行,第一行禁用SSLv3,同时也禁用了RC4等不安全的Cipher,第二行选择优先的Cipher,并为支持的浏览器启用Forward Secrecy,并保持向后兼容,第三行由服务器选择Cipher而不是客户端,第四行关闭SSL压缩,第五行关闭SSL Session Tickets。
SSLProtocol all -SSLv3 SSLCipherSuite ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:ECDHE-ECDSA-DES-CBC3-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA:!DSS SSLHonorCipherOrder on SSLCompression off SSLSessionTickets off
如果是Apache 2.2,有些地方有些变化,编辑以下文件。
vi /etc/apache2/sites-available/default-ssl
在文件最下方增加以下几行,第一行禁用SSLv3和SSLv2,同时也禁用了RC4等不安全的Cipher,第二行选择优先的Cipher,并为支持的浏览器启用Forward Secrecy,并保持向后兼容,第三行由服务器选择Cipher而不是客户端。
SSLProtocol all -SSLv2 -SSLv3 SSLCipherSuite ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:ECDHE-ECDSA-DES-CBC3-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA:!DSS SSLHonorCipherOrder on
重新启动Apache。
service apache2 restart
测试一下吧,应该这样就OK了。
这里选用的是一种较为常用的Cipher Suite,可以根据自己需要做进一步的优化。
发表评论