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

  1. # /usr/local/apache/bin/htpasswd --help
  2. Usage:
  3. htpasswd [-cmdpsD] passwordfile username
  4. htpasswd -b[cmdpsD] passwordfile username password
  5.  
  6. htpasswd -n[mdps] username
  7. htpasswd -nb[mdps] username password
  8. -c Create a new file.
  9. -n Don't update file; display results on stdout.
  10. -m Force MD5 encryption of the password (default).
  11. -d Force CRYPT encryption of the password.
  12. -p Do not encrypt the password (plaintext).
  13. -s Force SHA encryption of the password.
  14. -b Use the password from the command line rather than prompting for it.
  15. -D Delete the specified user.
  16. On other systems than Windows, NetWare and TPF the '-p' flag will probably not work.
  17. The SHA algorithm does not use a salt and is less secure than the MD5 algorithm.

htpasswd参数

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

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

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

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

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

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

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

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

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

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

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

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

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

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

htpasswd建立和更新存储用户名、密码的更多相关文章

  1. 【从业余项目中学习1】C# 实现XML存储用户名密码(MD5加密)

    最近在写一个C#的项目,用户需求是实现Winform的多文档界面与Matlab算法程序之间的交互.做了一段时间发现,这既能利用业余时间,实战中也可学习一些技术,同时刚毕业也增加一份收入.所以后面会不断 ...

  2. 验证码的设计与记住我存储用户名密码cookie的技术及单选按钮选择登录人身份的实现

    login.jsp页面 <head> <script type="text/javascript" src="js/captcha.js"&g ...

  3. svn服务器用户名密码更改后,如何更新本地用户名密码

    在提交时,IDE会给出这样的提示,说明用户名密码已更改 在命令行输入 svn ls https:XXX(项目的地址),具体步骤如下图

  4. nginx配置访问密码,让用户输入用户名密码才能访问

    如果我们在 nginx 下搭建了一些站点,但是由于站点内容或者流量的关系,我们并不想让所有人都能正常访问,那么我们可以设置访问认证.只有让用户输入正确的用户名和密码才能正常访问.效果如下: 在 ngi ...

  5. Android简易实战教程--第七话《在内存中存储用户名和密码》

    首先是配置文件: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns ...

  6. git 解决每次更新代码都要输入用户名密码的解决方案

    使用git pull或者git push每次都需要输入用户名和密码很繁琐,耽误时间,现在教大家一条命令实现保存用户名和密码不用再输入 git config --global credential.he ...

  7. git存储用户名和密码

    git config --global credential.helper store 输入一次用户名和密码后,git会自动记录用户名密码

  8. 快Key:按一下鼠标【滚轮】,帮你自动填写用户名密码,快速登录,可制作U盘随身(开源免费-附安装文件和源代码)

    * 代码以本文所附下载文件包为准,安装文件和源文件包均在本文尾部可下载. * 快Key及本文所有内容仅供交流使用,使用者责任自负,由快Key对使用者及其相关人员或组织造成的任何损失均由使用者自负,与本 ...

  9. Ansible批量更新远程主机用户密码 (包括Ansible批量做ssh互信)

    按照集团运维信息安全制度, 需要每个一段时间对线上服务器密码进行一次变更,通过shell脚本部署比较繁琐,所以决定采用ansible脚本对远程主机root密码进行批量重置,该脚本已经在稳定运行在正式环 ...

随机推荐

  1. 洛谷3119 [USACO15JAN]草鉴定Grass Cownoisseur

    原题链接 显然一个强连通分量里所有草场都可以走到,所以先用\(tarjan\)找强连通并缩点. 对于缩点后的\(DAG\),先复制一张新图出来,然后对于原图中的每条边的终点向新图中该边对应的那条边的起 ...

  2. PHP学习笔记(二)

    1.表单 PHP 的 $_GET和 $_POST用于检索表单中的值,比如用户输入. $_GET和$_POST变量分别用于收集来自 method="get" 和method=&quo ...

  3. word2vec_文本相似度

    #提取关键词#关键词向量化#相似度计算 from jieba import analyseimport numpyimport gensim # 实现给出任意字符串,获取字符串中某字符的位置以及出现的 ...

  4. Clover相关知识

    -f 重建驱动缓存 darkwake=4 有深度睡眠有关的设置,不懂 kext-dev-mode=1 启用第三方驱动,比较重要. dart=0 修复因开启 VT-d 导致系统启动时SMC五国错误,系统 ...

  5. 图解http学习笔记【一】

    不想单纯的把书里的知识点罗列一遍 这周,我们的安全代码终于改完了.我在微信上报了个叫 一修读书的课程,现在已经听了6天.感觉并不是很神奇,聊胜于无.倒是趁着当当搞活动买回来好几本书,其中就有这本图解h ...

  6. java面试感悟【一】

    我最终选择不包装工作经验,或许是因为我怂,或许是因为一些莫名其妙的坚持…… 然而结果就是在boss上沟通了20多家,只有7家让我投了简历,1家跟我说要我发个时间段给他稍后告诉我面试时间,然后就没有然后 ...

  7. SpringBoot 多环境配置

    转载:https://www.cnblogs.com/gdpuzxs/p/7191436.html 在我们的实际开发中,一般都有三套环境,开发环境,测试环境,生产环境,三套环境的数据库连接配置也有所不 ...

  8. oracle 替换字符 replace

    替换字符: select replace('xxyyzz','zz','') from dual >> xxyy   同时替换多个字符: select replace(replace('x ...

  9. set集合的排序

    在hibernate的OneToMany的实体关联的时候,one端的set是无序的,可是需要按照顺序来搞的话就比较麻烦了. 下面给出一个例子. Set<DiaryPicture> diar ...

  10. [转]图解CSS的padding,margin,border属性(详细介绍及举例说明)

    图解CSS的padding,margin,border属性 W3C组织建议把所有网页上的对像都放在一个盒(box)中,设计师可以通过创建定义来控制这个盒的属性,这些对像包括段落.列表.标题.图片以及层 ...