Linux/UNIX:使用加密之后的字符串修改用户密码

需求: 有时候需要在脚本里面使用root用户直接修改某个用户的密码,这种情况下有两个要求:

1. 不能有交互

2. 脚本里不能出现明文密码


那么可以先用openssl passwd先将明文密码加密,然后使用chpasswd的-e选项修改,示例如下

例如想要将用户qingsong的密码修改为myPasswd,可以先使用如下命令:

node01:~ # openssl passwd -salt 'abcd'
Password:  <-在这里输入待加密的密码myPasswd
abC3a7i.pGlkw

可以看到myPasswd加密之后的串为abC3a7i.pGlkw,然后使用这个加密串修改密码:
Linux:
node01:~ # echo "qingsong:abC3a7i.pGlkw" | chpasswd -e

AIX
node01:~ # echo "qingsong:abC3a7i.pGlkw" | chpasswd -e -c

备注1: openssl命令中可以不加salt参数,这样每次生成的密串就不一样。加了salt参数之后,对于同一个salt,同一个明文加密之后的串都是一样的。

备注2:如果是HP-UNIX,并且明文密码是8位(含)以下,那么可以使用/usr/sam/lbin/usermod.sam -p "加密后的密码" "用户名" 的方法来修改

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值