踏雪寻梅 发表于 2018-11-22 06:03:29

烂泥:apache密码生成工具htpasswd的应用

本文首发于烂泥行天下。
  1、 htpasswd的作用与安装
  2、 htpasswd命令详解
  3、 htpasswd的实例
  4、 htpasswd的应用
  一、htpasswd的作用与安装
  htpasswd是apache的一个工具,该工具主要用于建立和更新存储用户名、密码的文本文件,主要用于对基于http用户的认证。
  htpasswd的安装很简单,它是随apache的安装而生成。这点与ab工具是一样的,如果哪位童鞋有不明白的地方可以查看《烂泥:apache性能测试工具ab的应用》这篇文章。
  如果apache是通过RPM的yum方式进行安装的话,该命令存放在/usr/bin/目录下,如下:
  which htpasswd
  /usr/bin/htpasswd
  
  如果apache是源码方式安装的话,该命令存放在apache安装目录的bin目录下,如下:
  /usr/local/apache2/bin
  
  htpasswd命令用法,我们可以通过htpasswd的帮助进行查看,如下:
  htpasswd -h
  
  二、htpasswd命令详解
  在第一部分中,我们查看了htpasswd的帮助信息。现在我们来讲解下帮助信息中的相关参数。
  htpasswd的帮助信息如下:
  htpasswd -h
  
  htpasswd [-cmdpsD] passwordfile username
  htpasswd -b passwordfile username password
  htpasswd -n username
  htpasswd -nb username password
  htpasswd命令选项参数说明:
  -c创建一个加密文件。
  -n不更新加密文件,只将htpasswd命令加密后的用户名和密码显示在屏幕上。
  -m默认htpassswd命令采用MD5算法对密码进行加密,该参数默认情况下可以不加。
  -d表示htpassswd命令采用CRYPT算法对密码进行加密。
  -s表示htpassswd命令采用SHA算法对密码进行加密。
  -p表示htpassswd命令不对密码进行进行加密,即明文密码。
  -b表示在htpassswd命令行中一并输入用户名和密码而不是根据提示输入密码。
  -D表示删除指定的用户。
  三、htpasswd的实例
  在第二步中,我们列出了htpasswd的参数说明,现在我们来通过实例,介绍如何使用这些参数。
  3.1利用htpasswd命令添加用户
  通过htpasswd命令来添加一个用户,我们可以使用-b和-c参数。如下:
  htpasswd -bc ilannifile ilanniuser 123456
  cat ilannifile
  
  htpasswd -bc ilannifile ilanniuser 123456
  表示在当前目录下生成一个ilannifile密码文件,并新增一个用户名为ilanniuser密码为123456的用户,默认采用MD5加密方式加密。
  3.2在原有密码文件中新增用户
  在原有的密码文件中新增一个用户,我们可以使用-b参数。如下:
  htpasswd -b ilannifile ilannitwo 123456
  cat ilannifile
  
  htpasswd -b ilannifile ilannitwo 123456
  表示在ilannifile密码文件中新增一个用户名为ilannitwo,密码为123456的用户。
  注意:此时-c参数一定不能添加,否则会覆盖原来的密码文件再创建一个新的密码文件。
  3.3不更新密码文件,只显示加密后的用户名和密码
  要不更新密码文件,而只显示加密后的用户名和密码,我们可以使用-n参数。如下:
  htpasswd -n ilannitwo
  
  注意-n参数后面一定要跟密码文件中已经存在的用户。说实话,这个参数没有多大的实际意义。
  3.4利用htpasswd命令删除用户名和密码
  要删除已经在密码文件存在的用户,我们可以通过-D参数来实现。如下:
  htpasswd -D ilannifile ilannitwo
  
  3.5利用htpasswd命令修改用户密码
  要达到这个目的,我们需要先利用htpasswd命令删除指定用户,然后再利用htpasswd创建用户即可实现修改密码的功能。如下:
  
  四、htpasswd的应用
  htpasswd可以与nagios、SVN、nginx、apache等进行集成使用,在此我们就不一一介绍。我们后续会单独介绍htpasswd与以上几个程序的集成使用。
  



页: [1]
查看完整版本: 烂泥:apache密码生成工具htpasswd的应用