Linux下批量修改服务器用户密码方法

今天上去机器时候发现提示以下:
图片描述
密码快要过时。因为机器数量众多,所以采用批量修改密码的方式来进行处理。ssh

下面是具体步骤:测试

  1. 配置ssh免key

    # ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
    # ssh-copy-id 10.230.86.64
    (因为只是须要单向的copy文件,所以咱们配置63与64到91的boco用户免key便可)
    图片描述spa

  2. 测试免key是否配置成功
    图片描述
  3. 编写密码文件
    将全部须要修改的用户与密码按下面格式写到文件里,注意中间不要有空行
    vi userpasswdfile.txt
    root:xxxxxx
    boco:xxxxxx
    security:xxxxxx
    注:上面之因此在boco用户下写文件,是由于我要批量作,而咱们的root用户不能直接登陆,因此,若是大家是单台机器或者root能够直接登陆的话,就直接在root用户下操做就行。
  4. 切到root用户下,执行下面命令修改密码

    sudo su -
    cp /home/boco/userpasswdfile.txt /root/
    chmod 777 userpasswdfile.txt
    chpasswd<userpasswdfile.txt (该命令就是修改密码的命令)
    图片描述3d

  5. 从新登陆测试,不提示密码过时了

    图片描述

  6. 编写脚本准备批量执行
    编写两个脚本,一个用于循环将密码文件和执行脚本传输过去,另外一个就是执行脚本。
    传输脚本
    图片描述
    执行脚本
    图片描述

    因为普通用户是没有chpasswd的权限的,所以须要chmod 755 chpasswd 来对普通用户赋权限。code

  7. 执行脚本,进行批量修改
    图片描述
  8. 测试验证,脚本是否生效
    随便抽几台机器,看是否还有密码过时的提示:
    图片描述
    图片描述 至此,批量修改机器用户密码完成!
相关文章
相关标签/搜索