第五步:配置Apache
WEB软件和页面时服务器的核心。我们必需确保没有人可以访问未授权的数据或者改变页面。为了这个目的,页面必需进行特殊的防护,然后要给予Apache安全的配置。
所有的页面都必需由网站管理员统一管理,并且对除他以外的所有人都是本地写保护 的。WEB服务器最好以非页面管理员身份运行,这样即使入侵者侵入WEB服务器,他也没有足够的权限更改页面。这样,就需要设置一个用户,还要产生一个cron工作,这个定时工作要保证所有的页面修改权只属于页面管理员并且具有正确的授权。
erde# useradd -m wwwdocs
erde# cat > /etc/cron.daily/wwwdocs
#!/bin/sh
/bin/chown -R -h wwwdocs /usr/local/httpd/htdocs/*
/bin/chmod -R go-w /usr/local/httpd/htdocs/*
/bin/chmod -R a+r /usr/local/httpd/htdocs/*
^D
erde# chmod 700 /etc/cron.daily/wwwdocs
由于Apache可能已经预先配置好了,所以可能根本不需要进行重新配置。当然,开始的时候/etc/httpd/httpd.conf文件中的MinSpareServers、MaxSpareServers和StartServers的值应该被正确设置。
MaxClients选项可以用来避免connect-denial-of-service攻击。应该注意的是:如果这个选项设置的太低,一般访问者的访问也可能会被拒绝;如果太高,管理员在日志跟踪和入侵事件发生时的应对就会显得比较困难。除了自己尝试以外,好象也没有什么确定合适数量的更好建议。
应该关掉ServerSignature选项,这样访问一个不存在的页面时就不会回应您所使用的软件和版本号信息。但是这样也解决不了多大的问题,因为HTTP头中包含这些——甚至更多——信息。
应该禁止/hilfe/、/doc/、/cgi-bin-sdb/、/sdb/和/manual/的别名。下面显示了标准配置更改后的大概样子:(“diff -u0”)
--- httpd.conf.orig Sun Apr 9 19:37:44 2000
+++ httpd.conf Sun Apr 9 19:42:57 2000
@@ -141,2 +141,2 @@
-MinSpareServers 1
-MaxSpareServers 1
+MinSpareServers 3
+MaxSpareServers 10
@@ -148 +148 @@
-StartServers 1
+StartServers 5
@@ -157 +157 @@
-MaxClients 150
+MaxClients 100
@@ -401 +401 @@
-ServerAdmin root@localhost
+ServerAdmin webdocs@echte-domain.de
@@ -415 +415 @@
-#ServerName hawking.suse.de
+ServerName www.echte-domain.de
@@ -485 +485 @@
-UserDir public_html
+#UserDir public_html
@@ -646 +646 @@
-ServerSignature On
+ServerSignature Off
@@ -665,11 +664,0 @@
-Alias /hilfe/ /usr/doc/susehilf/
-Alias /doc/ /usr/doc/
-Alias /cgi-bin-sdb/ /usr/local/httpd/cgi-bin/
-Alias /sdb/ /usr/doc/sdb/
-Alias /manual/ /usr/doc/packages/apache/manual/
-
-
- Options FollowSymLinks
- AllowOverride None
-
-
@@ -697,9 +685,0 @@
-# cgi-bin for SuSE help system
-# using SetHandler
-
-
-AllowOverride None
-Options +ExecCGI -Includes
-SetHandler cgi-script
-
-
@@ -981,4 +961,4 @@
-#
-# Deny from all
-# ErrorDocument 403
http://phf.apache.org/phf_abuse_log.cgi
-#
+
+ Deny from all
+ ErrorDocument 403
http://phf.apache.org/phf_abuse_log.cgi
+
SSL的激活和证书的产生在/usr/doc/packages/apache/README.SuSE文件中描述。
提示:SSL证书应该一个密码保护起来,以减少攻击者成功入侵后将其拷贝并滥用的可能性(很少发生!)。
作为一个一般的规则,应该保证没有在任何地方使用符号符号连接(Symlinks),因此要禁止FollowSymLinks选项。所有的CGI都放在cgi-bin目录下,不允许放在其它任何地方,甚至也不允许在其它目录下执行。为了做到这一点,请不要使用ExecCGI配置选项。
为了禁止访问某些文件区,应该在这些目录下分别加入一个命名为.htaccess的文件,并在中加入下面的文本行:order deny,allow deny from all
   手机铃声下载 快乐多多 快来搜索好歌!       新浪企业广场诚征全国代理
|