Apache htpasswd命令用法详解

    htpasswd建立和更新存储用户名、密码的文本文件, 用于对HTTP用户的basic认证。

    # /usr/local/apache/bin/htpasswd --help
    Usage:
    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参数

    -c 创建passwdfile.如果passwdfile 已经存在,那么它会重新写入并删去原有内容.
    -n 不更新passwordfile,直接显示密码
    -m 使用MD5加密(默认)
    -d 使用CRYPT加密(默认)
    -p 使用普通文本格式的密码
    -s 使用SHA加密
    -b 命令行中一并输入用户名和密码而不是根据提示输入密码,可以看见明文,不需要交互
    -D 删除指定的用户

    实例
    1. 如何利用htpasswd命令添加用户?

    # /usr/local/apache/bin/htpasswd -bc linuxeye_pd linuxeye_user linuxeye_password
    Adding password for user linuxeye_user
    # cat linuxeye_pd
    linuxeye_user:$apr1$Mugpp3FE$zGsi7/JfQIhFXPlgqo/Wx/

    生成当前目录下生成一个linuxeye_pd文件,用户名linuxeye_user,密码:linuxeye_password,默认采用MD5加密方式

    2. 如何在原有密码文件中增加下一个用户?

    # /usr/local/apache/bin/htpasswd -b linuxeye_pd linuxeye.com linuxeye.com
    Adding password for user linuxeye.com
    # cat linuxeye_pd
    linuxeye_user:$apr1$Mugpp3FE$zGsi7/JfQIhFXPlgqo/Wx/
    linuxeye.com:$apr1$/8EUOPYI$4MBxYpzotrSDcTTDZvTeT0

    一定要去掉-c选项,否则覆盖密码文件再创建

    3. 如何不更新密码文件,只显示加密后的用户名和密码?

    # /usr/local/apache/bin/htpasswd -n linuxeye
    New password:
    Re-type new password:
    linuxeye:$apr1$bZ6Gclc4$zKRap.0BADzZIxLoxpDNv0
     
    # /usr/local/apache/bin/htpasswd -nb linuxeye linuxeye_password
    linuxeye:$apr1$yvngdKGV$QrnlriJ.MxIu52Vmo.ROE1

    4. 如何利用htpasswd命令删除用户名和密码?

    # /usr/local/apache/bin/htpasswd -D linuxeye_pd linuxeye_user
    Deleting password for user linuxeye_user
    # cat linuxeye_pd
    linuxeye.com:$apr1$/8EUOPYI$4MBxYpzotrSDcTTDZvTeT0

    5. 如何利用htpasswd命令修改密码?

    # /usr/local/apache/bin/htpasswd -D linuxeye_pd linuxeye.com
    Deleting password for user linuxeye.com
    # /usr/local/apache/bin/htpasswd -b linuxeye_pd linuxeye.com linuxeye_passwd
    Adding password for user linuxeye.com
    # cat linuxeye_pd
    linuxeye.com:$apr1$74ZvB1vC$/b7ETmg8xhDPieYj0b0cE.

    需要先利用htpasswd命令删除指定用户,再利用htpasswd添加用户命令创建用户即可实现修改密码的功能。

    Fri Jun 7 11:52:53 CST 2013

    • 本文由 发表于 2013-06-07
    • 转载请务必保留本文链接:https://linuxeye.com/333.html
    Apache mod_deflate压缩模块bug解决方法 Linux

    Apache mod_deflate压缩模块bug解决方法

    Apahce使用mod_deflate压缩模块,客户端(如浏览器)每次都会去服务器取数据(ps:Expires没有过期等情况下),即http请求头的状态码永远为200,而不会访回 304 Not Mo...
    CentOS6.6下安装Redmine2.6(整合Apache2.4) Linux

    CentOS6.6下安装Redmine2.6(整合Apache2.4)

    Redmine是一个开源的、基于Web的项目管理和缺陷跟踪工具。它用日历和甘特图辅助项目及进度可视化显示。同时它又支持多项目管理。Redmine是一个自由开放源码软件解决方案,它提供集成的项目管理功能...
    匿名

    发表评论

    匿名网友