保护Web服务器安全非常重要,这意味着只允许其他人查看部分信息并保护数据并限制访问。
这些是增强Apache Web服务器安全性的常见内容。 ( 推荐学习:Apache服务器 )
1. 隐藏Apache版本和操作系统信息Apache显示其版本和操作系统名称错误,如下面的屏幕截图所示。
黑客可以使用此信息使用特定版本的服务器或操作系统中的公开漏洞发起攻击。为了防止Apache webserver显示此信息,我们可以通过修改apache配置文件中提供了server signature选项。默认情况下,它是on(即打开),将它设置为off(即关闭)。
vim /etc/httpd/conf/httpd.conf<br/>
修改内容为:
ServerSignature Off<br/>ServerTokens Prod<br/>
我们还设置了“ServerTokens Prod”,它告诉Web服务器只返回apache并禁止操作系统主要版本和次要版本。修改配置文件后,必须重新启动/重新加载Apache Web服务器才能使其生效。
service httpd restart<br/>
修改并重启Apache服务器后,应该看到类似的结果 -
2. 禁用目录列表
如果文档根目录没有索引文件(如:index.html,index.php,index.html等),则默认情况下,apache Web服务器将显示文档根目录的所有内容。
可以通过Apache配置文件中提供的options directive关闭特定目录的此功能。
<Directory /var/www/html><br/> Options -Indexes<br/></Directory><br/>
3. 禁用不必要的模块
最好禁用所有未使用的不必要模块,可以在apache配置文件中看到已启用模块的列表 -
[root@amsterdam ~]#httpd –M<br/>perl_module (shared)<br/>php5_module (shared)<br/>proxy_ajp_module (shared)<br/>python_module (shared)<br/>ssl_module (shared)<br/>
许多列出的模块可以被禁用,如mod_imap,mod_include,mod_info,mod_userdir,mod_autoindex,因为它们几乎不被任何生产Web服务器使用。
vi /etc/httpd/conf/httpd.conf<br/>
然后注释掉 -
#LoadModule auth_digest_module modules/mod_auth_digest.so<br/>
注释模块后,保存文件。使用以下命令重启apache服务。
/etc/init.d/httpd restart/<br/>
4. 使用mod_evasive来反驳DoS攻击
如果希望保护Web服务器免受Dos(即拒绝服务)的影响,则必须启用模块mod_evasive。它是一个第三方模块,可以检测Dos攻击,并防止攻击造成的损害程度远远超过其运行过程。
5. 限制请求大小
Apache对可能导致DoS攻击的http请求的总大小没有任何限制。可以使用目录标记限制Apache指令LimitRequestBody的请求大小。
根据要求,该值可以设置为0到2GB(即2147483647字节)。
<Directory "/var/www/html/uploads"><br/> LimitRequestBody 512000<br/></Directory><br/>
以上是Apache服务器的安全设置的详细内容。更多信息请关注PHP中文网其他相关文章!