服务器 频道

企业级Apache服务器安全防护要点剖析

  策略三:启用Apache自带安全模块保护

  Apache的一个优势便是其灵活的模块结构,其设计思想也是围绕模块(module)概念而展开的。安全模块是Apache Server中的极其重要的组成部分。这些安全模块负责提供Apache server的访问控制和认证,授权等一系列至关重要的安全服务。

  Apache下有如下几类与安全相关的模块:

  •mod_access模块能够根据访问者的IP地址(或域名,主机名等)来控制对Apache服务器的访问,称之为基于主机的访问控制。

  •mod_auth模块用来控制用户和组的认证授权(Authentication)。用户名和口令存于纯文本文件中。

  •mod_auth_db和mod_auth_dbm模块则分别将用户信息(如名称、组属和口令等)存于Berkeley-DB及DBM型的小型数据库中,便于管理及提高应用效率。

  •mod_auth_digest模块则采用MD5数字签名的方式来进行用户的认证,但它相应的需要客户端的支持。

  •mod_auth_anon模块的功能和mod_auth的功能类似,只是它允许匿名登录,将用户输入的E-mail地址作为口令。

  •mod_ssl被Apache用于支持安全套接字层协议,提供Internet上安全交易服务,如电子商务中的一项安全措施。通过对通信字节流加密来防止敏感信息的泄漏。但是,Apache这种支持是建立在对Apache的API扩展来实现的,相当于一个外部模块,通过与第三方程序(如openssl)的结合提供安全的网上交易支持。

  为了能够使用模块功能,模块通常以DSO(Dynamic Shared Object)的方式构建,用户应该在httpd.conf文件中使用LoadModule指令,使得能够在使用前获得模块的功能。下面是主配置文件中各个模块的情况,开启安全模块非常简单,即去掉在各安全模块所在行前的“#”符号即可,如下所示:

  LoadModule auth_basic_module modules/mod_auth_basic.so

  LoadModule auth_digest_module modules/mod_auth_digest.so

  LoadModule authn_file_module modules/mod_authn_file.so

  LoadModule authn_alias_module modules/mod_authn_alias.so

  。。。。。。

  只有将上述安全模块进行开启后,Apache才能实现相应的访问控制和通信加密功能。

0
相关文章