黑客防线网安之Apache服务器安全防护要点剖析_WIN2003服务器维护_黑客防线网安服务器维护基地--Powered by WWW.RONGSEN.COM.CN

黑客防线网安之Apache服务器安全防护要点剖析

作者:黑客防线网安Apache教程网 来源:黑客防线网安Apache教程网 浏览次数:0

本篇关键词:服务器安全Apache
黑客防线网安网讯:除了使用业界流行的防火墙、IDS/IPS(入侵检测系统/入侵防御系统)、WAF(Web应用防火墙)、UTM(统一威胁管理)等外部安全设备对Apache服务进行安全防护外,作为一种优秀的开源服务器软件,Apache本身就具有很多优秀的特

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才能实现相应的访问控制和通信加密功能。

 

策略四:访问控制策略设置

在开启了相应的安全模块后,还需要对Apache的访问控制策略进行设定。

1.认证和授权指令

目前,有两种常见的认证类型,基本认证和摘要认证:

(1)基本认证(Basic):使用最基本的用户名和密码方式进行用户认证。

(2)摘要认证(Digest):该认证方式比基本认证要安全得多,在认证过程中额外使用了一个针对客户端的挑战(challenge)信息,可以有效地避免基本认证方式可能遇到的“重放攻击”。值得注意的是:目前并非所有的浏览器都支持摘要认证方式。

所有的认证配置指令既可以出现在主配置文件httpd.conf中的Directory容器中,也可以出现在单独的.htaccess文件中,这个可以由用户灵活地选择使用。在认证配置过程中,需要用到如下指令选项:

•AuthName:用于定义受保护区域的名称。

•AuthType:用于指定使用的认证方式,包括上面所述的Basic和Digest两种方式。

•AuthGroupFile:用于指定认证组文件的位置。

•AuthUserFile:用户指定认证口令文件的位置。

使用上述的认证指令配置认证后,需要为Apache服务器的访问对象,也就是指定的用户和组进行相应的授权,以便于他们对Apache服务器提供的目录和文件进行访问。为用户和组进行授权需要使用Require指令,主要可以使用以下三种方式进行授权:

•授权给指定的一个或者多个用户:使用Require user 用户名1 用户名2 …。

•授权给指定的一个或者多个组:使用Require group 用户名1 用户名2 …。

•授权给指定口令文件中的所有用户:使用Require valid-user。

2.管理认证口令文件和认证组文件

要实现用户认证功能,首先要建立保存用户名和口令的文件。Apache自带的htpasswd命令提供了建立和更新存储用户名、密码的文本文件的功能。需要注意的是,这个文件必须放在不能被网络访问的位置,以避免被下载和信息泄漏。建议将口令文件放在/etc/httpd/目录或者其子目录下。

下面的例子在/etc/httpd目录下创建一个文件名为passwd_auth的口令文件,并将用户rhel5添加入认证口令文件。使用以下命令建立口令文件(过程中还会提示输入该用户的口令):

# touch passwd_auth

# htpasswd -c /etc/httpd/passwd_auth rhel5

New password:

Re-type new password:

Adding password for user rhel5

命令执行的过程中系统会要求用户为rhel5用户输入密码。上述命令中的-c选项表示无论口令文件是否已经存在,都会重新写入文件并删去原有内容。所以在添加第2个用户到口令文件时,就不需要使用-c选项了,如下命令所示

# htpasswd /etc/httpd/passwd_auth testuser

3.认证和授权使用实例

(1)使用主配置文件配置用户认证及授权

在本例子中,用户可以在Apache的主配置文件httpd.conf中加入以下语句建立对目录/var/www/html/rhel5访问的用户认证和授权机制:



AllowOverride None

AuthType Basic

AuthName "rhel5"

AuthUserFile /etc/httpd/passwd_auth

Require user rhel5 testuser



在上述例子中,使用了如下指令:

•AllowOverride:该选项定义了不使用.htaccess文件。

•AuthType Basic:AuthType选项定义了对用户实施认证的类型,最常用的是由mod_auth提供的Basic。

•AuthName:定义了Web浏览器显示输入用户/密码对话框时的领域内容。

•AuthUserFile:定义了口令文件的路径,即使用htpasswd建立的口令文件。

•Require user:定义了允许哪些用户访问,各用户之间用空格分开。

需要注意的是:在AuthUserFile选项定义中,还需要使用如下语句事先建立认证用户patterson和testuser,该选项中的定义才能生效:

#htpasswd -c /etc/httpd/passwd_auth rhel5

#htpasswd /etc/httpd/passwd_auth testuser

(2)使用.htaccess文件配置用户认证和授权

在本例子中,为了完成如上述例子同样的功能,需要先在主配置文件中加入如下语句:



AllowOverride AuthConfig



上述语句中的AllowOverride选项允许在.htaccess文件中使用认证和授权指令。

然后,在.htaccess文件中添加如下语句即可:

AuthType Basic

AuthName "Please Login:"

AuthUserFile /etc/httpd/passwd_auth

Require user rhel5 testuser

同理,在AuthUserFile选项定义中,还需要使用如下语句事先建立认证用户patterson和testuser,该选项中的定义才能生效:

#htpasswd -c /etc/httpd/passwd_auth rhel5

#htpasswd /etc/httpd/passwd_auth testuser
    黑客防线网安服务器维护方案本篇连接:http://www.rongsen.com.cn/show-17267-1.html
网站维护教程更新时间:2012-09-12 00:35:49  【打印此页】  【关闭
我要申请本站N点 | 黑客防线官网 |  
专业服务器维护及网站维护手工安全搭建环境,网站安全加固服务。黑客防线网安服务器维护基地招商进行中!QQ:29769479

footer  footer  footer  footer