htpasswd命令的使用
htpasswd的基本用法
htpasswd是Apache服务器中生成用户认证的一个工具,仅说明htpasswd的用法:
htpasswd参数
-c 创建passwdfile.如果passwdfile 已经存在,那么它会重新写入并删去原有内容.
-n 不更新passwordfile,直接显示密码
-m 使用MD5加密(默认)
-d 使用CRYPT加密(默认)
-p 使用普通文本格式的密码
-s 使用SHA加密
-b 命令行中一并输入用户名和密码而不是根据提示输入密码,可以看见明文,不需要交互
-D 删除指定的用户
#创建密码文件,创建用户test
[root@os1 ~]# htpasswd -c passwd test
New password:
Re-type new password:
Adding password for user test
[root@os1 ~]# cat passwd
test:$apr1$plhRTg52$UQMbT9r/hO2iRlM8E9y8/.
[root@os1 ~]#
##命令行中输入用户名和密码
[root@os1 ~]# htpasswd -cb passwd ceshi
Adding password for user ceshi
[root@os1 ~]# cat passwd
ceshi:$apr1$1863a7z7$qiOe9pcK6x/G2a2TYjWoM0
###在原有的文件中添加用户
[root@os1 ~]# htpasswd passwd test
New password:
Re-type new password:
Adding password for user test
[root@os1 ~]# cat passwd
ceshi:$apr1$1863a7z7$qiOe9pcK6x/G2a2TYjWoM0
test:$apr1$0V/OaCvu$jLgbFOGrVLucReDgwiuto.
[root@os1 ~]#
#删除用户
[root@os1 ~]# htpasswd -D passwd test
Deleting password for user test
[root@os1 ~]# cat passwd
ceshi:$apr1$1863a7z7$qiOe9pcK6x/G2a2TYjWoM0
[root@os1 ~]# #直接在命令行显示用户名和密码
[root@os1 ~]# htpasswd -nb wxly
wxly:$apr1$PkB0SZse$iZeKC3qrRGp080ySit04E1
一个需求实例:
有很多个用户,需要添加web的用户认证。
这时候我们可以采用expect的方式进行,如下:
[root@os1 htpassword]# tree
.
├── exce.sh # 执行的shell脚本
├── one.exp # 进行自动交互的expect脚本
├── passwd # 存放加密后密码的文件
└── user # 添加的用户名和密码 directories, files
脚本内容依次如下:
用户名和密码文件如下:
cat user
cdw
ywj
zjf
mfj
dsx
dsl
tx1
expect脚本内容如下:
cat one.exp
#!/usr/bin/expect -f
set name [lindex $argv ]
set passwd [lindex $argv ]
spawn /usr/bin/htpasswd -d passwd $name
expect "password:"
send "passwd\r"
expect "password:"
send "passwd\r"
expect eof
需要执行的shell脚本如下:
cat exce.sh
#!/bin/bash
if [ -e passwd ]; then
echo -e "\033[32;1m The file is exiting \033[0m"
else
touch passwd # 创建存储密码的文件
fi cat user | while read line
do
name=$(echo $line | awk '{print $1}') # 提取用户名
password=$(echo $line | awk '{print $2}') # 提取密码
/usr/bin/expect one.exp $name $password # 执行expect脚本
[ $? -eq ] && echo -e "\033[32;2m add the account successfully!\033[0m"
sleep
done
htpasswd命令的使用的更多相关文章
- Apache htpasswd命令用法详解
		
一. 基础 htpasswd建立和更新存储用户名.密码的文本文件, 用于对HTTP用户的basic认证. # /usr/local/apache/bin/htpasswd –help Usage: h ...
 - htpasswd命令
		
htpasswd命令是Apache的Web服务器内置工具,用于创建和更新储存用户名.域和用户基本认证的密码文件. 语法 htpasswd(选项)(参数) 选项 -c:创建一个加密文件:-n:不更新加密 ...
 - htpasswd 命令详解
		
htpasswd参数 -c 创建passwdfile.如果passwdfile 已经存在,那么它会重新写入并删去原有内容. -n 不更新passwordfile,直接显示密码 -m 使用MD5加密(默 ...
 - nginx用户认证与htpasswd命令
		
最近在搭建ELK,然后ELK的kibana界面想添加一个访问限制,看到kibana有个插件x-pack,本来想用用,发现是收费的,就放弃了,然后就想着想配置下nginx的认证访问来实现简单的访问登陆. ...
 - httpd htpasswd命令
		
apache httpd系列文章:http://www.cnblogs.com/f-ck-need-u/p/7576137.html htpasswd用于为指定用户生成基于网页用户身份认证的密码,由h ...
 - Apache htpasswd命令
		
一.简介 htpasswd是apache的一个工具,该工具主要用于建立和更新存储用户名.密码的文本文件,主要用于对基于http用户的认证. 二.语法 Usage: htpasswd [-cimBdps ...
 - 烂泥:apache密码生成工具htpasswd的应用
		
本文由秀依林枫提供友情赞助,首发于烂泥行天下. 1. htpasswd的作用与安装 2. htpasswd命令详解 3. htpasswd的实例 4. htpasswd的应用 一.htpasswd的作 ...
 - apache htpasswd.exe创建密码
		
一.使用apache htpasswd.exe创建密码文件,命令请看PHP推荐教程:apache htpasswd命令用法详解 apache htpasswd命令用法实例 1.如何利用htpasswd ...
 - htpasswd 详解
		
Apache htpasswd命令用法详解 htpasswd建立和更新存储用户名.密码的文本文件, 用于对HTTP用户的basic认证. # /usr/local/apache/bin/htpassw ...
 
随机推荐
- R中使用rvest爬取数据小试
			
总结R中使用 xpath 和 css selectors 获取标签内容(xpath功能强大,而CSS选择器通常语法比较简洁,运行速度更快些) 例:抓取下面标签的内容: <h3 class=&qu ...
 - 初识Spring Webflux
			
Important to know is that there are two ways to use Spring Webflux. One using annotations, which is ...
 - python3学习笔记(9)_closure
			
#python 学习笔记 2017/07/13 # !/usr/bin/env python3 # -*- conding:utf-8 -*- #从高阶函数的定义,我们可以知道,把函数作为参数的函数, ...
 - asm 32 /64
			
我使用NASM编写的,运行在32位windows和linux主机上,但后来需求增加了,需要在64位windows和linux上运行,windows自身有个wow(windows on windows) ...
 - Linux执行Cron Job失败,在Shell sh下执行却能成功 - 环境变量?
			
博客分类: Linux linuxcrontabpermissionetc/profile环境变量 一.我们常常碰到在shell下执行某个命令能够成功,比如执行一个java程序: java -jar ...
 - django模板语言的注释
			
就像HTML或者Python,Django模板语言同样提供代码注释. 注释使用 {# #} : ? 1 {# This is a comment #} 注释的内容不会在模板渲染时输出. 用这种语法的注 ...
 - idea导出war包并在tomcat上部署
			
生成war包 (一)进入项目配置页面 然后到达: (二)选择 设置好路径 然后apply (三)生成 然后再指定的目录就可以看见war包了. 部署到tomcat上 (一)将war包拷贝到tomcat的 ...
 - Shell的>/dev/null、2>&1、2>1
			
转载自:http://dos2unix.cn/link/480 1. 标准输入stdin文件描述符为0,标准输出stdout文件描述符为1,标准错误stderr文件描述符为2 2. /dev/null ...
 - Agreementhasbeenupdated--EditPhoneNumber
			
1.https://appleid.apple.com/#!&page=signin 登录appid账号 在账户里面的编辑 添加更多信息,新增手机号 2.如果不可以 可以试下这个https: ...
 - better-scroll一个好用的页面滑动工具
			
1.npm install better-scroll 2.引入:import BetterScrol from 'better-scroll' 3. 在需要设置页面滚动的地方添加 ref=&qu ...