httpd网页身份认证
2017/10/7 10:26:19

本文目录:
1.1 htpasswd命令
1.2 身份认证类基本指令
1.3 Require指令
1.4 web身份认证示例 
httpd对web身份认证的支持很丰富,提供的控制也非常细致。无疑,功能丰富意味着模块多。关于完整的模块,见http://httpd.apache.org/docs/2.4/mod/ ,其中mod_authX_XXX都是和认证有关的模块。要实现最基本的帐户认证访问控制,只需几个常见的模块即可:mod_authz_core,mod_authz_user,mod_authz_host...。
  1.1 htpasswd命令
htpasswd用于为指定用户生成基于网页用户身份认证的密码,由httpd-tools软件包提供。支持3种加密算法:MD5、SHA和系统上的crypt()函数,不指定算法时,默认为md5。
htpasswd [ -c ] [ -m ] [ -D ] passwdfile username htpasswd -b [ -c ] [ -m | -d | -p | -s ] [ -D ] passwdfile username password htpasswd -n [ -m | -d | -s | -p ] username htpasswd -nb [ -m | -d | -s | -p ] username password 选项说明: passwdfile:包含用户名及其密码的用户密码文件。如果使用了"-c"选项,则会创建或覆盖文件。不使用"-n"选项时必须指定passwdfile参数。 username:为指定的用户名创建密码。如果该用户记录已存在,则更新。 -c:创建用户密码文件passwdfile,如果文件已经存在则会覆盖已存在的文件。不能和"-n"一起使用。 -n:在标准输出中输出结果,而不是将其写入到用户密码文件中。该选项会忽略用户密码文件passwdfile参数。不能和"-c"选项一起使用。 -m:使用MD5加密算法。默认。 -d:使用crypt()函数计算密码,不安全。 -s:使用SHA加密算法。安全。 -P:强制不加密密码,保持明文状态,不安全。 -B:强制bcrypt加密密码,非常安全。 -D:从用户密码文件中删除指定的用户及其密码。 -b:使用批处理模式,即非交互模式,可以直接待加密的传递明文密码。 password:指定要输入的明文密码。只能在批处理模式中使用,即和"-b"一起使用。 
例如:
(1).使用"-n"选项直接将结果输出到标准输出而不创建passwdfile。
[root@linuxidc ~]# htpasswd -n Jim New password:  Re-type new password:  Jim:ZKHud9tziGucY 
(2).使用批处理模式直接传递密码。
[root@linuxidc ~]# htpasswd -nb Jim 123456 ; htpasswd -nb Jim 123456 Jim:r.BF8RVw56BOA  Jim:xXoNgOS8nN3LQ 
发现密码完全是随机的。
(3).创建用户密码文件passwdfile。
[root@linuxidc ~]# htpasswd -cb Bobfile Bob 123456 [root@linuxidc ~]# cat Bobfile  Bob:fvUxzB3kcnDPk 
(4).删除用户文件中的某用户。
[root@linuxidc ~]# htpasswd -D Bobfile Bob 
(5).使用sha和md5加密算法计算密码。
[root@linuxidc ~]# htpasswd -mb Bobfile Bob 123456 [root@linuxidc ~]# cat Bobfile  Bob:$apr1$bllkodFt$GUmeb8hXngOAschs1SBgq0 [root@linuxidc ~]# htpasswd -sb Bobfile Bob 123456  [root@linuxidc ~]# cat Bobfile  Bob:{SHA}fEqNCco3Yq9h5ZUglD3CZJT4lBs= 
1.2 身份认证类基本指令
AuthType:指定web身份认证的类型。有效值为none、basic、digest以及form。通常最基本的认证使用的是文件认证,所以通常使用basic。
AuthName:设置身份认证时的提示信息。
AuthUserFile file-path:指定web用户认证列表。由htpasswd命令生成。
AuthGroupFile file-path:指定组认证文件,文件中分组格式为"mygroup: Jim Bob Alice"。如果文件路径为相对路径,则相对于ServerRoot
基于basic类型的认证就这么几个指令,最主要的还是require指令的使用。更多的认证方法见官方手册的auth类模块。
1.3 Require指令
该指令只能放在Directory容器中,用于控制对目录的访问权限。它的主要功能是由mod_authz_core模块提供,但有些身份认证类模块也提

下一页
返回列表
返回首页
©2017 Linux公社 - Linux系统门户网站 电脑版