日期:2012-04-19 22:02:00  来源:本站整理

apache安全战略[服务器安全]

赞助商链接



  本文“apache安全战略[服务器安全]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

  1、 勤打补钉

  在www.apache.org上最新的changelog中都写着:bug fix、security bug fix的字样.所以,Linux网管员要常常关注相关网站的缺陷改正和进级,及时进级系统或增添补钉.利用最高和最新安全版本关于加强Apache Web服务器的安满是至关重要的.

  2、 躲藏Apache的版本号

  普通,软件漏洞信息和特定版本是相关的,因此,版本号对黑客来说是最有代价的.默许情形下,系统会把Apache版本系统模块都显示出来(http返回头).假如摆列目录的话,会显示域名信息(文件列表正文)去除Apache版本号:改正配置文件:/etc/httpd.conf.找到关键字ServerSignature,将其设定为:   ServerSignature Off    ServerTokens Prod   然后重新启动Apache服务器.

  3.成立一个安全的目录构造

  Apache服务器包含四个主要目录:  (1)ServerRoot:保存配置文件(conf子目录)二进制文件和其他服务器配置文件.  (2)DocumentRoot:保存Web站点的内容,包含HTML文件和图片等.  (3)ScripAlias:保存CGI脚本.  (4)Customlog和Errorlog:保存拜候日记和错误日记.  倡议设定这样一个目录构造,以上四个主要目录像互独立并且不存在父子逻辑关系.  小提醒:ServerRoot目录应当被配置为只能由root用户拜候;DocumentRoot应当可以被管理Web站点内容的用户拜候和被 Apache服务器利用Apache用户和Apache用户组拜候;ScriptAlias目录应当只能被CGI开辟人员和Apache用户拜候;只有 root用户拜候日记目录.  下面是笔者利用的目录构造快照,如图1所示.   这样的目录构造是对比安全的,因为目录之间是独立的,某个目录的权限错误不会影响其他目录.

  4、 Apache利用专门的用户和组

  按照最小特权原则,需求给Apache分配一个符合的权限,让其可以完成Web服务.小提醒:最小特权原则是系统安全中最基本的原则之一,它限制了利用者对系统及数据举行存取所需求的最小权限,既保证了用户可以完成所操作的任务,同时也确保不法用户或非常操作所造成的丧失最小.必须保证 Apache利用一个专门的用户和用户组,不要利用系统预定义的账号,比方nobody用户和nogroup用户组.  因为只有root用户可以运行 Apache,DocumentRoot应当可以被管理Web站点内容的用户拜候和Apache服务器利用Apache用户和Apache用户组拜候.所以,假如但愿“cao”用户在Web站点公布内容,并且可以以httpd身份运行Apache服务器,普通可以这样: groupadd webteam     usermod -G webteam cao     chown -R httpd.webteam /www/html     chmod -R 2570 /www/htdocs   只有root用户拜候日记目录,这个目录的举荐权限:    chown -R root.root /etc/logs     chmod -R 700 /etc/logs

  5、 Web目录的拜候战略

  关于可以拜候的Web目录,要利用相对保守的途径举行拜候,不要让用户察看任何目录索引列表.  (1)设定禁止利用目录索引文件   Apache服务器在接纳到用户对一个目录的拜候时,会查找Directorylndex指令指定的目录索引文件.默许情形下该文件是 index.html.假如该文件不存在,那么Apache会成立动态列表为用户显示该目录的内容.普通这样的设置会表露Web站点构造,因此需求改正配置文件禁止显示动态目录索引.改正配置文件httpd.conf:        Options -Indexes FollowSymLinks       Options指令告诉Apache禁止利用目录索引.FollowSymLinks表示不答应利用标记链接.  (2)禁止默许拜候  一个好的安全战略是禁止默许拜候的存在.首先禁止默许拜候,只对指定目录开启拜候权限,假如答应拜候/var/www/html目录,利用以下设定:        Order deny,allow     Allow from all       (3)禁止用户重载  为了禁止用户对目录配置文件(.htaccess)举行重载(改正),可以这样设定:         AllowOverride None

  6、 Apache服务器拜候掌握战略

  Apache的access.conf文件负责设置文件的拜候权限,可以实现互联网域名和IP地址的拜候掌握.它包含一些指令,掌握答应什么用户拜候Apache目录.应当把deny from all设为初始化指令,再利用allow from指令翻开拜候权限.假如答应192.168.1.1到192.168.1.254的主机拜候,可以这样设定:      order deny,allow    deny from all    allow from pair 192.168.1.0/255.255.255.0

  7、记录全部情形  一个优异的Linux网络管理员会密切记录服务器日记系统,这些日记可以记录非常拜候的线索.Apache可以记录全部的拜候恳求,一样,错误的恳求也会记录.    CustomLog /logs/access.log common ? #记录对Web站点的每个进入恳求#     ErrorLog /logs/error.log ? ?#记录产生错误状况的恳求# 小提醒:这里举荐利用一个优异的日记解析工具Wusage(www.boutell.com)举行例行解析和监督日记文件.

  8、 Apache服务器的密码保护

  .htaccess文件是Apache服务器上的一个设置文件.它是一个文本文件,可以利用文本编辑器举行编写..htaccess文件供应了针对目录改变配置的办法,即通过在一个特定的文档目录中安排一个包含一个或多个指令的文件(.htaccess文件),以作用于此目录及其全部子目录.  .htaccess的功效包含设置网页密码、设置发生错误时呈现的文件、改变首页的文件名(如index.html)、禁止读取文件名、重新导向文件、加上MIME类别、禁止列目录下的文件等.通过.htaccess来保护网站更为便利和安全,因为操纵.htaccess文件实现密码保护是很难破解的.

  9.削减CGI和SSI风险

  CGI脚本的漏洞已经成为Web服务器的主要安全隐患,普通是程序编写CGI程序中产生了很多的后门和漏洞.掌握CGI脚本的漏洞除了在编写时需求注意对输人数据的合理性查抄、对系统调用的谨严利用等因素外,首先利用CGI程序全部者的UID来运行这些程序,是一个好办法.这些CGI程序即便存在某些漏洞,那么其危害也仅限于该UID所可以拜候的文件当中.也就是说,这样只能毁伤用户的文件,而不会对整个系统带来致命的影响.  通过安装和利用 suEXEC的利用程序,可认为Apache服务器供应CGI程序的掌握支持(从Apache l.3版今后,suEXEC已经作为Apache服务器的一部份),可以把suEXEC看做一个包装器,在Apache接到对CGI程序的调用恳求后,它将这个调用恳求交给suEXEC来负责完成具体的调用,并且从这里得到返回的后果.  suEXEC能办理一些安全问题,但也会降低服务性能,因为它只能运行在CGI版本的PHP上,而CGI版本比模块版本运行速度慢.缘由是模块版本利用了线程,而利用CGI版本的是进程.在差别线程之间的环境转换和拜候公用的存储区域明显要比在差别的进程之间要快得多.  倡议在对安全性能要求对比高时利用suEXEC,为此您还要以牺牲速度为代价.别的可以尝试别的一个软件CGIWrap,它的安全性能高于suEXEC.官方网址为:ftp://ftp.cc.umr.edu/pub/cgi/cgiwrap.  削减SSI脚本的风险:假如用exec等SSI号令运行外部程序,也会存在近似CGI脚本程序的危险,除了内部调试程序时都该当可以利用Option号令禁止利用.      Options IncludesNOEXEC

  10、 Apache服务器在监牢中运行

  所谓“监牢”是指通过chroot机制来更改某个软件运行时所能看到的根目录,行将某软件运行限制在指定目录中,保证该软件只能对该目录及其子目录的文件有所行动,从而保证整个服务器的安全.这样即便被破坏或侵入,所受的毁伤也不大.  将软件chroot化的一个问题是该软件运行时需求的全部程序、配置文件和库文件都必须事前安装到chroot目录中,普通称这个目录为chroot jail(chroot“监牢”).假如要在“监牢”中运行Apache,而事实上根本看不到文件系统中那个真正的目录,就需求事前成立目录,并将 httpd复制到此中.同时,httpd需求库文件,可以利用ldd(Library Dependency Display缩写)号令查看,ldd作用是显示一个可执路程序必须利用的同享库.这意味着还需求在“监牢”中成立lib目录,并将库文件复制到此中.手工完成这一工作是非常麻烦的,此时可以用jail软件包来帮忙简化chroot“监牢”成立的历程.Jail官方网站是:http://www.jmcresearch.com/,最新版本为1.9a.

  11、 利用SSL加固Apache

  利用具有SSL(安全套接字协议层)功效的Web服务器,可以提高网站的安全性能.SSL协议工作在Linux TCP/IP协议和HTTP协议之间,其关系如图2所示.   SSL利用加密办法来保护Web服务器和浏览器之间的信息流.SSL不但用于加密在互联网上传送的数据流,并且还供应双方身份考证.这样,您便可以安全地在线购物而没必要耽忧别人盗取您信誉卡的信息.这种特点使得SSL实用于那些交换重要信息的地方,像电子商务和基于Web的邮件. S  SL利用大众密钥加密技术,服务器在衔接完毕时给客户端发送公用密钥用来加密信息,而加密的信息只有服务器用它自己持有的专用密钥才能解开.客户端用公用密钥加密数据,并且发送给服务端自己的密钥,以惟一肯定自己,避免在系统两头之间有人假充服务端或客户端举行拐骗.加密的HTTP衔接用443端口号替换80端口号,以辨别于普通的不加密的HTTP.客户端利用加密HTTP衔接时会自动利用443端口而不是80端口,这使得服务端更简单作出呼应的呼应.SSL运行构造见图3.   Apache服务器利用SSL时普通有两种挑选,即主服务器或虚拟Web站点.

  12、 Apache服务器防备DoS

  Apache服务器对回绝攻击的防备主要通过软件Apache DoS Evasive Maneuvers Module 来实现.它是一款mod_access的替换软件,可以抵挡DoS攻击.该软件可以快速回绝来自相同地址对同一URL的反复恳求,通过内部一张各子进程的哈希表查询来实现.软件下载链接:http://online.   securityfocus.com/data/tools/dospatch.tar.gz.软件安装的配置可以察看Linux中文主页http: //www.linux.gov.cn/:Apache性能和安全指南,历程很简单,限于篇幅这里就不介绍了.同时可以利用Linux系统强盛的号令手段 Apache服务器防备Dos攻击.netstat -an | grep -i “服务器ip地址:80” | awk '{print $6}' | sort | uniq -c | sort -n 这个号令会自动统计TCP衔接各个状况的数目,假如SYN_RECV很高的话,就不能解除有基于TCP协议的回绝服务攻击的大概.这样的话,您需求翻开 tcp_syncookies: echo 1 > /proc/sys/net/ipv4/tcp_syncookies  假如没有 /proc/sys/net/ipv4/tcp_syncookies,阐明您的内核不支持syncookies,需求重新编译内核,同时降低syn重试次数.echo “1” > /proc/sys/net/ipv4/tcp_syn_retries echo “1” > /proc/sys/net/ipv4/tcp_synack_retries   同时加大syn_backlog,以保证用户的拜候: echo “2048” > /proc/sys/net/ipv4/tcp_max_syn_backlog 13、其他安全工具利用TCP_wrappers和AIDE可认为您的系统供应额外的保护.利用TCP_wrappers可以进一部掌握拜候权限. AIDE是一个数据完好性检测工具,可以帮忙系统管理员监督系统能否被窜改过,您可以在AIDE的配置文件中编制特定的战略,监督Web服务器的配置文件、数据和CGI文件能否被改正.

  实际上,大部份Web站点被破坏者恶意攻击是因为利用程序或脚本中的漏洞.Web安全专家认为,运行在Web服务器上的脚本或利用程序是最大的危险因素.因为CGI脚本普通负责产活泼态内容,它们常常招致大部份的侵害.关于大部份Web服务器来说,首先应当考虑如作甚加强安全配置.


  以上是“apache安全战略[服务器安全]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
  • 教您玩转Apache服务器及虚拟主机
  • Linux下Apache自动监测重启脚本(智能化程度较高)
  • 配置Apache避免webshell上传
  • apache限制某个目录下的php文件没有履行权限
  • Apache+Mysql+PHP搭建LAMP平台
  • Ubuntu Apache Rewrite 加载
  • Ubuntu下Apache的Rewrite若何启用
  • Ubuntu 10.10安装Apache等环境
  • Ubuntu Server+Apache 运行 asp.net
  • Ubuntu Apache 伪静态配置 url重写
  • Ubuntu + Apache2编写简单的cgi脚本
  • Ubuntu下配置Apache2.0及其相关安装
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .