【转】Apache Digest验证
Apache默认使用basic模块验证,都是明文传输,不太安全,所以本文使用Digest来验证,以提高安全性。
1.Apache配置:
A、目录权限配置
Alias /nagios "/usr/local/nagios/share"
<Directory "/usr/local/nagios/share">
Options None
AllowOverride None
Order allow,deny
Allow from all
</Directory>
B、认证配置
<Location /nagios>
AuthType Digest
AuthName "Nagios Access"
AuthDigestDomain /nagios http://192.168.0.205/nagios
AuthDigestProvider file
AuthUserFile /usr/local/nagios/etc/nagios.users
Require valid-user
</Location>
C、认证模块配置
查看httpd.conf里面是否有
LoadModule auth_digest_module modules/mod_auth_digest.so 和
LoadModule auth_basic_module modules/mod_auth_basic.so
首先确认要有mod_auth_digest.so,这个没有就要重新编译apache了。
其次确保把mod_auth_basic.so这行给注释掉。因为apache默认是用basic来认证的,如果不注释的话,即使你配置好了digest认证,也不会成功
2.创建密码文件
htdigest -c /usr/local/nagios/etc/nagios.users "Nagios Access" nagiosadmin
这句命令里面有几个要注意的,我测试了好长时间才发现。
Nagios Access-----这个解释为域 实现上是要和认证配置里面的 AuthName保持一致,不然认证失败
3.访问
在IE里输入http://192.168.0.205/nagios 就会弹出窗口,提示输入用户名和密码