今天申请的verisign证书下来了,给一台服务器重新安装了apache,其中一些安全设置记录一下,已方便以后查询
1,禁用sslv2,由于sslv2有安全隐患,所以最好禁止使用,firefox是直接把sslv2去掉了的
以下为apache禁用sslv2的方法:
SSLProtocol -ALL +SSLv3 +TLSv1
SSLCipherSuite ALL:!aNULL:!ADH:!eNULL:!LOW:!EXP:RC4+RSA:+HIGH:+MEDIUM
测试是否已经关闭的方法:
#openssl s_client -ssl2 -connect virtualhost:443 #openssl s_client -ssl3 -connect virtualhost:443 #openssl s_client -tls1 -connect virtualhost:443
其中第一行应该不能成功建立连接了,就代表sslv2已经被禁用。
具体的说明可以参考这里:http://www.linux4beginners.info/node/disable-sslv2
2,更改Server Header,http里面的Server头表示你访问的服务器的版本信息,一般我们最好隐藏起一些必要的信息,使用以下设置:
ServerTokens Prod
ServerSignature Off
这样设置以后,Server头只会显示 Apache,如果这样你还是不满意,就只能更改源代码了(因为使用mod_headers 也不能修改了)
修改 ./include/ap_release.h
#define AP_SERVER_BASEPRODUCT “Apache”
改成你想要的东东即可,然后重新编译发布。
当然,如果你想改点其他Header,用mod_headers 设置即可,比如
Header add X-Powered-By “ASP.NET”
详细配置文档地址:for 2.2 http://httpd.apache.org/docs/2.2/mod/mod_headers.html
3,Apache官方于2011年8月24日公布漏洞:Range header DoS vulnerability Apache HTTPD 1.3/2.x \(CVE-2011-3192\)
说明:该漏洞可轻易被攻击工具占用大量内存和CPU,导致无法处理正常请求。
影响版本:Apache 1.3 all versions, Apache 2 all versions
临时解决方案:
RequestHeader unset Range
去掉Range请求,呵呵,一般不是下载站点的话,不需要断点续传的了。
漏洞地址:http://people.apache.org/~dirkx/CVE-2011-3192.txt