岁月联盟 - 技术社区 - BBS.SYUE.COM's Archiver

hongker 发表于 2006-6-27 18:17

轻轻松松把 Apache 配置安全

<p>下面介绍20种让你的Apache配置更安全的方法。 </p><p>声明:关于安全的事情没有保证的或者绝对的。这些建议可以让你的<a class="channel_keylink" href="http://www.3800hk.com/"><font color="#000000">服务</font></a>器更安全,但不要认为遵循这些建议后你的<a class="channel_keylink" href="http://www.3800hk.com/"><font color="#000000">服务</font></a>器就理所当然是安全的。 </p><p>另外,在这些建议中有的建议可能会降低<a class="channel_keylink" href="http://www.3800hk.com/"><font color="#000000">服务</font></a>器性能或者因为你的环境引起问题。我建议所作的任何改变是否适合你的需求完全由你决定。换句话说,那是你的风险。 </p><p>一、确保你安装的是最新的补丁 </p><p>如果门是敞开的话,在窗户上加锁就毫无意义。同样道理,如果你没有打补丁,继续下面的操作就没有什么必要。 </p><p>二、隐藏Apache的版本号及其它敏感信息 </p><p>默认情况下,很多Apache安装时会显示版本号及操作系统版本,甚至会显示<a class="channel_keylink" href="http://www.3800hk.com/"><font color="#000000">服务</font></a>器上安装的是什么样的Apache模块。这些信息可以为<a class="channel_keylink" href="http://www.3800hk.com/"><font color="#000000">黑客</font></a>所用,并且<a class="channel_keylink" href="http://www.3800hk.com/"><font color="#000000">黑客</font></a>还可以从中得知你所配置的<a class="channel_keylink" href="http://www.3800hk.com/"><font color="#000000">服务</font></a>器上的很多设置都是默认状态。 </p><p>这里有两条语句,你需要添加到你的httpd.conf文件中: </p><p>ServerSignature Off </p><p>ServerTokens Prod </p><p>ServerSignature出现在Apache所产生的像404页面、目录列表等页面的底部。ServerTokens目录被用来判断Apache会在Server HTTP响应包的头部填充什么信息。如果把ServerTokens设为Prod,那么HTTP响应包头就会被设置成: </p><p>Server:Apache </p><p>如果你非常想尝试其它事物,你可以通过编辑源代码改成不是Apache的其它东西,或者你可以通过下面将要介绍的mod_security实现。 </p><p>三、确保Apache以其自身的用户账号和组运行 </p><p>有的Apache安装过程使得<a class="channel_keylink" href="http://www.3800hk.com/"><font color="#000000">服务</font></a>器以nobody的用户运行,所以,假定Apache和你的邮件<a class="channel_keylink" href="http://www.3800hk.com/"><font color="#000000">服务</font></a>器都是以nobody的账号运行的,那么通过Apache发起的攻击就可能同时攻击到邮件<a class="channel_keylink" href="http://www.3800hk.com/"><font color="#000000">服务</font></a>器,反之亦然。 </p><p>User apache </p><p>Group apache </p><p>四、确保web根目录之外的文件没有提供<a class="channel_keylink" href="http://www.3800hk.com/"><font color="#000000">服务</font></a>
        </p><p>我们不让Apache访问web根目录之外的任何文件。假设你的所以web站点文件都放在一个目录下(例如/web),你可以如下设置: </p><p><br/>Order Deny,Allow </p><p>Deny from all </p><p>Options None </p><p>AllowOverride None </p><p>&nbsp;</p><p>Order Allow,Deny </p><p>Allow from all </p><p><br/>注意,因为我们设置Opitins None 和AllowOverride None,这将关闭<a class="channel_keylink" href="http://www.3800hk.com/"><font color="#000000">服务</font></a>器的所有Option和Override。你现在必须明确把每个目录设置成Option或者Override。 </p><p>五、关闭目录浏览 </p><p>你可以在Directory标签内用Option命令来实现这个功能。设置Option为None或者-Indexes。 </p><p>Options -Indexes </p><p>六、关闭includes </p><p>这也可以通过在Directory标签内使用Option命令来实现。设置Option为None或者-Includes。 </p><p>Options -Includes </p><p>七、关闭CGI执行程序 </p><p>如果你不用CGI,那么请把它关闭。在目录标签中把选项设置成None或-ExecCGI就可以: </p><p>Options -ExecCGI </p><p>八、禁止Apache遵循符号链接 </p><p>同上,把选项设置成None或-FollowSymLinks: </p><p>Options -FollowSymLinks </p><p>九、关闭多重选项 </p><p>如果想关闭所有选项,很简单: </p><p>Options None </p><p>如果只想关系一些独立的选项,则通过将Options做如下设置可实现: </p><p>Options -ExecCGI -FollowSymLinks -Indexes </p><p>十、关闭对.htaccess文件的支持 </p><p>在一个目录标签中实现: </p><p>AllowOverride None </p><p>如果需要重载,则保证这些文件不能够被下载,或者把文件名改成非.htaccess文件。比如,我们可以改成.httpdoverride文件,然后像下面这样阻止所有以.ht打头的文件: </p><p>AccessFileName .httpdoverride </p><p><br/>Order allow,deny </p><p>Deny from all </p><p>Satisfy All </p><p>十一、运行mod_security </p><p>Run mod_security是O’Reilly出版社出版的Apache Security一书的作者,Ivan Ristic所写的一个非常好用的一个Apache模块。可以用它实现以下功能: </p><p>·简单过滤 </p><p>·基于过滤的常规表达式 </p><p>·URL编码验证 </p><p>·Unicode编码验证 </p><p>·审计 </p><p>·空字节攻击防止 </p><p>·上载存储限制 </p><p>·<a class="channel_keylink" href="http://www.3800hk.com/"><font color="#000000">服务</font></a>器身份隐藏 </p><p>·内置的Chroot支持 </p><p>·更多其它功能 </p><p>十二、关闭任何不必要的模块 </p><p>Apache通常会安装几个模块,浏览Apache的module documentation,了解已安装的各个模块是做什么用的。很多情况下,你会发现并不需要激活那些模块。 </p><p>找到httpd.conf中包含LoadModule的代码。要关闭这些模块,只需要在代码行前添加一个#号。要找到正在运行的模块,可以用以下语句: </p><p>grep LoadModule httpd.conf </p><p>以下模块通常被激活而并无大用:mod_imap, mod_include, mod_info, mod_userdir, mod_status, mod_cgi, mod_autoindex。 </p><p>更多方法请见<a href="http://www.petefreitag.com/item/505.cfm"><font color="#000000">http://www.petefreitag.com/item/505.cfm</font></a>
        </p>

yzhuhu 发表于 2006-12-3 06:11

学习····

feox 发表于 2006-12-6 19:38

看看

yzy888 发表于 2006-12-7 03:06

学习一下了啊,

feox 发表于 2006-12-7 14:54

谢谢楼主拉,学习学习啊

页: [1]

Powered by Discuz! Archiver 7.0.0  © 2001-2009 Comsenz Inc.