专注于互联网--专注于架构

最新标签
网站地图
文章索引
Rss订阅

首页 »服务器技术 » apachewebserver:安全配置及维护Apache WEB Server »正文

apachewebserver:安全配置及维护Apache WEB Server

来源: 发布时间:星期四, 2009年2月12日 浏览:19次 评论:0


  、Apache服务器介绍

  Apache服务器它是Internet网上应用最为广泛Web服务器软件Software的Apache服务器源自美国国家超级技术计算应用中心(NCSA)Web服务器项目中目前已在互联网中占据了领导地位Apache服务器得经过精心配置的后才能使它适应高负荷大吞吐量互联网工作快速、可靠、通过简单API扩展Perl/Python解释器可被编译到服务器中且完全免费完全源代码开放如果你需要创建个每天有数百万人访问Web服务器Apache可能是最佳选择

   2、Apache服务器主要安全缺陷

  正如我们前言所说尽管Apache服务器应用最为广泛设计上非常安全但是同其它应用Apache也存在安全缺陷毕竟它是完全源代码Apache服务器安全缺陷主要是使用HTTP协议进行拒绝服务攻击(denial of service)、缓冲区溢出攻击以及被攻击者获得root权限 3缺陷和最新恶意攻击者进行“拒绝服务”(DoS)攻击合理网络配置能够保护Apache服务器免遭多种攻击我们来介绍下主要安全缺陷:

  (1)使用HTTP协议进行拒绝服务攻??(denial of service)安全缺陷

  这种思路方法攻击者会通过某些手段使服务器拒绝对HTTP应答这样会使Apache对系统资源(CPU时间和内存)需求剧增最终造成Apache系统变慢甚至完全瘫痪

  (2)缓冲区溢出安全缺陷

  该思路方法攻击者利用编写些缺陷使偏离正常流程使用静态分配内存保存请求数据攻击者就可以发送个超长请求使缓冲区溢出比如些Perl编写处理用户请求网关脚本旦缓冲区溢出攻击者可以执行其恶意指令或者使系统宕机

  (3)被攻击者获得root权限安全缺陷

  该安全缺陷主要是Apache服务器般以root权限运行(父进程)攻击者会通过它获得root权限进而控制整个Apache系统

  (4)恶意攻击者进行“拒绝服务”(DoS)攻击安全缺陷

  这个最新在6月17日发现漏洞它主要是存在于Apachechunk encoding中这是个HTTP协议定义用于接受web用户所提交数据功能 利用黑客可以对于运行在FreeBSD 4.5, OpenBSD 3.0 / 3.1, NetBSD 1.5.2平台上Apache服务器均可进行有效攻击.

  所有说使用最高和最新安全版本对于加强Apache Web服务器安全是至关重要请广大Apache服务器管理员去http://www.apache.org/dist/httpd/下载补丁以确保其WEB服务器安全!

3、正确维护和配置Apache服务器

  虽然Apache服务器开发者非常注重安全性由于Apache服务器其庞大项目难免会存在安全隐患正确维护和配置Apache WEB服务器就很重要了我们应注意些问题:

  (1)Apache服务器配置文件

  Apache Web服务器主要有 3个配置文件位于/usr/local/apache/conf目录下这 3个文件是:

  httpd.con----->主配置文件

  srm.conf------>填加资源文件

  access.conf--->设置文件访问权限

  注:具体配置可以参考:http://httpd.apache.org/docs/mod/core.html

  (2)Apache服务器日志文件

  我们可以使用日志格式指令来控制日志文件信息使用LogFormat "%a %l"指令可以把发出HTTP请求浏览器IP地址和主机名记录到日志文件出于安全考虑在日志中我们应知道至少应该那些验证失败WEB用户在http.conf文件中加入LogFormat "%401u"指令可以实现这个目这个指令还有其它许多参数用户可以参考Apache文档另外Apache日志文件对于系统管理员来说也是非常重要日志文件中包括服务器启动、停止以及CGI执行失败等信息更多请参看Apache日志系列1-5

  (3)Apache服务器目录安全认证

  在Apache Server中是允许使用 .htaccess做目录安全保护欲读取这保护目录需要先键入正确用户帐号和密码这样可做为专门管理网页存放目录或做为会员区等

  在保护目录放置个档案档名为.htaccss

  AuthName "会员专区"

  AuthType "Basic"

  AuthUserFile "/var/tmp/xxx.pw" ----->把password放在网站WebSite外

  require valid-user   到apache/bin目录建password档

  % ./htpasswd-c/var/tmp/xxx.pw username1----->第次建档要用参数"-c"

  % ./htpasswd/var/tmp/xxx.pw username2

  这样就可以保护目录内内容进入要用合法用户.

  注:采用了Apache内附模组也可以采用在httpd.conf中加入:

  options indexes followsymlinks

  allowoverride authconfig

  order allow,deny

  allow from all

(4)Apache服务器访问控制

  我们就要看 3个配置文件中第 3个文件了即access.conf文件它包含些指令控制允许什么用户访问Apache目录应该把deny from all设为化指令再使用allow from指令打开访问权限

  order deny,allow

  deny from all

  allow from safechina.net

  设置允许来自某个域、IP地址或者IP段访问

  (5)Apache服务器密码保护问题

  我们再使用.htaccess文件把某个目录访问权限赋予某个用户系统管理员需要在httpd.conf或者srm.conf文件中使用AccessFileName指令打开目录访问控制如:

  AuthName PrivateFiles

  AuthType Basic

  AuthUserFile /path/to/httpd/users

  require Phoenix

  # htpasswd -c /path/to/httpd/users Phoenix
0

相关文章

读者评论

发表评论

  • 昵称:
  • 内容: