basic认证:
(1) 定义安全域
[root@bluee htdocs]# mkdir admin
[root@bluee htdocs]# vim admin/index.html
刷新浏览器,可以看到admin/index.html文件内容“Page FOR Adminstration”
编辑配置文件:
找个位置增加一个Directoty:
<Directory "/www/htdocs/admin">
Options None
AllowOverride None
AuthType Basic
AuthName "Administrator private"
AuthUserFile "/etc/httpd/conf.d/.htpasswd"
Require valid-user
</Directory>
保存退出,reload
刷新浏览器,会跳出对话框,让你输入用户名,密码。
(2) 提供账号和密码存储(文本文件)
创建2个用户,tom,jerry:
[root@bluee htdocs]# htpasswd -c -m /etc/httpd/conf.d/.htpasswd tom
New password:
Re-type new password:
Adding password for user tom
[root@bluee htdocs]# htpasswd -m /etc/httpd/conf.d/.htpasswd jerry
New password:
Re-type new password:
Adding password for user jerry
[root@bluee htdocs]# tail /etc/httpd/conf.d/.htpasswd
tom:$apr1$uVF1Y2Md$4nvTGjFgHkDQmtWqtns5C/
jerry:$apr1$2a/r7qbi$08LEFNgWKCcfn0oCJKaUg0
[root@bluee htdocs]#
浏览器的对话框中输入账号:tom,密码:tom,可以登陆。
换个浏览器,仍然会提示登陆的。
配置文件中Require valid-user 改为 Require user tom,
reload
再次打开浏览器,输入jerry的账号,密码,并不能登陆。tom的账号密码是可以登陆的。
(3) 实现基于组进行认证
要提供:用户账号文件和组文件;
再创建个用户,obama:
htpasswd -m /etc/httpd/conf.d/.htpasswd obama
New password:
Re-type new password:
Adding password for user obama
[root@bluee htdocs]# tail /etc/httpd/conf.d/.htpasswd
tom:$apr1$uVF1Y2Md$4nvTGjFgHkDQmtWqtns5C/
jerry:$apr1$2a/r7qbi$08LEFNgWKCcfn0oCJKaUg0
obama:$apr1$IRjBDVjX$cQwfp8jt9mZ0uWVqyaVlU0
vim /etc/httpd/conf.d/.htgroup
webadmin: jerry obama
保存退出,
reload
修改配置文件,
添加一行:AuthGroupFile "/etc/httpd/conf.d/.htgroup"
并修改为:Require webadmin
<Directory "/www/htdocs/admin">
Options None
AllowOverride None
AuthType Basic
AuthName "Administator private"
AuthUserFile "/etc/httpd/conf.d/.htpasswd"
AuthGroupFile "/etc/httpd/conf.d/.htgroup"
Require group webadmin
</Directory>
刷新浏览器,输入账号密码,jerry ,obama是可以访问的。
原创文章,作者:mississippi,如若转载,请注明出处:http://www.178linux.com/27904