htpasswd建立和更新存储用户名、密码的文本文件, 用于对HTTP用户的basic认证。
htpasswd -mb file user password
/usr/local/apache/bin/htpasswd --helpUsage:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
htpasswd [-cmdpsD] passwordfile username htpasswd -b[cmdpsD] passwordfile username password htpasswd -n[mdps] username htpasswd -nb[mdps] username password -c Create a new file.-n Don't update file; display results on stdout. -m Force MD5 encryption of the password (default). -d Force CRYPT encryption of the password. -p Do not encrypt the password (plaintext). -s Force SHA encryption of the password. -b Use the password from the command line rather than prompting for it. -D Delete the specified user. On other systems than Windows, NetWare and TPF the '-p' flag will probably not work. The SHA algorithm does not use a salt and is less secure than the MD5 algorithm. |
htpasswd参数
1 2 3 4 5 6 7 8 |
-c 创建passwdfile.如果passwdfile 已经存在,那么它会重新写入并删去原有内容. -n 不更新passwordfile,直接显示密码 -m 使用MD5加密(默认) -d 使用CRYPT加密(默认) -p 使用普通文本格式的密码 -s 使用SHA加密 -b 命令行中一并输入用户名和密码而不是根据提示输入密码,可以看见明文,不需要交互 -D 删除指定的用户 |
实例 1.如何利用htpasswd命令添加用户?
1 2 3 4 5 |
#/usr/local/apache/bin/htpasswd -bc auth.conf suvan_user suvan_password Adding password for user linuxeye_user # cat auth.conf suvan_user:$apr1$Mugpp3FE$zGsi7/JfQIhFXPlgqo/Wx/ 生成当前目录下生成一个auth.conf文件,用户名suvan_user,密码:suvan_password,默认采用MD5加密方式 |
2.如何在原有密码文件中增加下一个用户?
1 2 3 4 5 6 |
# /usr/local/apache/bin/htpasswd -b auth.conf suvan_user2 suvan_password Adding password for user suvan_user2 # cat auth.conf suvan_user:$apr1$Mugpp3FE$zGsi7/JfQIhFXPlgqo/Wx/ suvan_user2:$apr1$/8EUOPYI$4MBxYpzotrSDcTTDZvTeT0 一定要去掉-c选项,否则覆盖密码文件再创建 |
3.如何不更新密码文件,只显示加密后的用户名和密码?
1 2 3 4 5 |
# /usr/local/apache/bin/htpasswd -n suvan New password:Re-type new password: suvan:$apr1$bZ6Gclc4$zKRap.0BADzZIxLoxpDNv0 # /usr/local/apache/bin/htpasswd -nb suvan suvan_password suvan:$apr1$yvngdKGV$QrnlriJ.MxIu52Vmo.ROE1 |
4.如何利用htpasswd命令删除用户名和密码?
1 2 3 4 |
# /usr/local/apache/bin/htpasswd -D auth.conf suvan_user Deleting password for user suvan_user # cat auth.conf suvan_user2:$apr1$/8EUOPYI$4MBxYpzotrSDcTTDZvTeT0 |
5.如何利用htpasswd命令修改密码?
1 2 3 4 5 6 7 8 |
# /usr/local/apache/bin/htpasswd -D auth.conf suvan_user2 Deleting password for user suvan_user2 # /usr/local/apache/bin/htpasswd -b auth.conf suvan_user2 suvan_passwd Adding password for user suvan_user2 # cat auth.conf suvan_user2:$apr1$74ZvB1vC$/b7ETmg8xhDPieYj0b0cE. 需要先利用htpasswd命令删除指定用户,再利用htpasswd添加用户命令创建用户即可实现修改密码的功能。 |