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 ...
随机推荐
- 字符串-回文-Manacher算法
http://blog.csdn.net/zzkksunboy/article/details/72600679 https://segmentfault.com/a/1190000008484167 ...
- HDU 1542 - Atlantis - [线段树+扫描线]
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1542 Time Limit: 2000/1000 MS (Java/Others) Memory Li ...
- Python:正则表达式概念
#正则表达式内容非常多,网上的学习资源也是目不暇接,我从中筛选学习并且整理出以下 的学习笔记 一.正则表达式匹配过程: 1.依次拿出表达式和文本中的字符比较 2.如果每一个字符都能匹配,则匹配成功:一 ...
- h5地理位置API
h5地理位置API 地理API允许javascript程序向浏览器询问用户的真实地理位置,支持地理位置API的浏览器在访问前总是会询问用户是否允许. 获取用户地理的途径有: 1.ip地 ...
- pip或easy_install安装库报错:SSL: CERTIFICATE_VERIFY_FAILED
使用pip和easy_install安装那个lxml.pyspider这些库或者框架一直提示以下错误: Collecting pyspider Could not fetch URL https:// ...
- 洛谷P3826 蔬菜 [NOI2017] 贪心
正解:贪心 解题报告: umm,,,其实我还不会 废话我这么菜怎么可能懂QAQ 先占坑,想学习这题很久了呢QAQ
- Python之Pandas使用教程(转)
https://blog.csdn.net/XiaoYi_Eric/article/details/79506660
- 【Pyton】【小甲鱼】正则表达式(一)
正则表达式学习: >>> import re >>> re.search(r'FishC','I love FishC.com!') <_sre.SRE_Ma ...
- 开机自启:bat实现一次性打开win7中的常用软件和文件夹
需求说明: 我们电脑(windows)办公,经常上班前一开机,就要手动打开很多文件夹和程序. 想节省时间,一键打开常用的文件夹和程序,研究了一下bat命令,于是mystart.bat产生了. myst ...
- python中实现mysql连接池
python中实现mysql连接池 import pymysql from DBUtils.PooledDB import PooledDB MYSQL_HOST = 'localhost' USER ...