今天上去机器时候发现提示如下:
密码快要过期。由于机器数量众多,因此采用批量修改密码的方式来进行处理。
下面是具体步骤:
-
配置ssh免key
# ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
# ssh-copy-id 10.230.86.64
(由于只是需要单向的copy文件,因此我们配置63与64到91的boco用户免key即可) -
测试免key是否配置成功
-
编写密码文件
将所有需要修改的用户与密码按下面格式写到文件里,注意中间不要有空行vi userpasswdfile.txt
root:xxxxxx
boco:xxxxxx
security:xxxxxx
注:上面之所以在boco用户下写文件,是因为我要批量做,而我们的root用户不能直接登录,所以,如果你们是单台机器或者root可以直接登录的话,就直接在root用户下操作就行。 -
切到root用户下,执行下面命令修改密码
sudo su -
cp /home/boco/userpasswdfile.txt /root/
chmod 777 userpasswdfile.txt
chpasswd<userpasswdfile.txt
(该命令就是修改密码的命令) - 重新登录测试,不提示密码过期了
-
编写脚本准备批量执行
编写两个脚本,一个用于循环将密码文件和执行脚本传输过去,另一个就是执行脚本。
传输脚本:
执行脚本:由于普通用户是没有chpasswd的权限的,因此需要
chmod 755 chpasswd
来对普通用户赋权限。 -
执行脚本,进行批量修改
-
测试验证,脚本是否生效
随便抽几台机器,看是否还有密码过期的提示:
至此,批量修改机器用户密码完成!
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。