使用Ansible的user模块批量修改用户密码

介绍使用ansible批量修改用户密码的方法,因为在使用ansible修改用户密码的时候不能使用明文的方式,需要先加密,所以就需要使用一个方法对输入的明文的密码进行加密,下面就直接上干货。

方法一:
1、这个方法适用于更改多个固定的用户;playbook写法如下:

# cat play.yml
  ---
  - hosts: test
    gather_facts: false
    tasks:
    - name: change user passwd
      user: name={{ item.name }} password={{ item.chpass | password_hash('sha512') }}  update_password=always
      with_items:
           - { name: 'root', chpass: 'admin#123' }
           - { name: 'test', chpass: 'yjun@123' }

执行playbook如下:

# ansible-playbook play.yml

方法二:
2、这个方法更改单用户比较方便,从外面使用-e参数传递变量到playbook中,playbook写法如下:

  # cat  play.yml               
    ---
    - hosts: test
      gather_facts: false
      tasks:
      - name: Change password
        user: name={{ name1 }}  password={{ chpass | password_hash('sha512') }}  update_password=always

执行playbook脚本,使用-e参数传递用户名和密码给剧本,其中test为用户名,admin#123就是要设置密码,执行如下:

# ansible-playbook play1.yml -e "name1=test chpass=admin#123"

 

文章来源:https://www.cnaaa.net,转载请注明出处:https://www.cnaaa.net/archives/7778

(0)
杰斯的头像杰斯
上一篇 2023年3月27日 下午4:11
下一篇 2023年3月28日 下午4:58

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

在线咨询: QQ交谈

邮件:712342017@qq.com

工作时间:周一至周五,8:30-17:30,节假日休息

关注微信