简体版  |  繁体版   推荐信息: 阅读排行 | 滚动 | 微软SOA高峰会 | 中型企业创新社区 | 随心所欲发新闻
服务器

安全Web服务器的安装(三)

出处:天极ChinaByte 作者:BULLY 2007-06-12 21:46 评论
字体大小: | |

  这样就会保证Apache、Scanlogd和SuSE防火墙在计算机启动时自动执行。现在我们继续配置本地防火墙,将/etc/rc.config.d/firewall.rc.config(个别变量的细节描述在这个文件中可以找到)文件中的对应行改成下面的形式:

  FW_DEV_WORLD=“eth0” # query no. 2

  FW_SERVICES_EXTERNAL_TCP=“www https” # query no. 9

  FW_SERVICES_TRUSTED_NETS=“1.1.1.0/24” # query no. 10 - 1.1.1.0 is the netswheresthe administrators connect from.

  FW_TRUSTED_SERVICES_TCP=“ssh” # query no. 10

  /sbin/SuSEfirewall命令可以更新防火墙规则。这些规则会在每个系统启动周期中载入。

  现在我们以下面的形式集成SuSE专用的安全模块:

  erde# cat >> /sbin/init.d/boot.local

  insmod secumod hardlink=1 symlink=1 pipe=1 trace=1 systable=1 logging=1

  ^D

  当系统引导时,这个模块会被加载,它配置用来防止Symlink、Hardlink、Pipe和一些 UNIX特有的攻击形式。

  第五步:配置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

相关文章
  • 本文关键字:
  • 服务器(14789)
  • 网友关注
    热门产品
    编辑推荐
    推荐专题
    更多
    思科
  • 打开网络创新之门
  • 思科公司于北京嘉里中心饭店成功举办了主题为“创新网络,绿色引擎”的思科创新日暨思科新品发布会。
  • 论坛热贴
    更多
    博客精选
    更多
    视频推荐
    更多
  • 杜青松:对IT人员要求别具一格
  • 在对杜青松的采访中,他透露出目前在中粮包装有限公司信息化建设的工作中的一个难点——IT人力资源短缺。
  • TMG

    Copyright (C) 1999-2008 Chinabyte.com, All Rights Reserved 版权所有 天极网络

    渝ICP证B2-20030003号 商务联系、网站内容、合作建议:010-82657868

    版权声明 在线提交意见反馈 Powered by 天极内容管理平台CMS4i

    经营性网站备案信息 网警备案 中国网站排名