使用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

相关推荐

  • Redis数据备份与恢复

    一、备份 1、cmd命令下,找到redis安装目录 2、创建dump.rdb文件 该命令将在 redis 备份目录中创建dump.rdb文件。 3、查看备份路径 备份后的文件名:dump.rdb 二、恢复 1、将dump.rdb拷贝到目标机,备份文件的目录下 2、重启redis服务 3、打开客户端刷新就能看到新的数据了 PS: 如果电脑安装了两个redis客…

    2022年11月12日
    1.2K00
  • Shell脚本——提取目录名和文件名

    在许多场景下,我们都需要对文件名称或者文件所在的目录进行操作,已达到我们业务目的。通常的操作是由路径中提取文件名,从路径中提取目录名,提取文件后缀等等一系列的操作。 一、${} 1.${var##*/} 2.${var##*.} 3.${var#*.} 4.${var%/*} 5.${var%%.*} 6.总结 其实 ${} 并不是专门为提取文件名或目录名的…

    2024年2月18日
    1.4K00
  • 如何在 Ubuntu 22.04 上启用 BBR?

    由于购买的VPS或者主机数据中心都在国外,经常会发生网络拥堵的情况,我们可以通过启用BBR来优化。 在Ubuntu系统上启用BBR可以提升网络连接速度,优化网络拥堵情况。 BBR代表瓶颈带宽,RTT是拥塞控制系统。 您可以在 Linux 桌面上启用 TCP BBR 以改善整体网上冲浪体验。 默认情况下,Linux 使用 Reno 和 CUBIC 拥塞控制算法…

    2024年3月12日
    1.8K00
  • redis 集群 CLUSTERDOWN Hash slot not served 报错解决思路

    背景:  因机房故障,导致redis-cluster 集群中 有个节点 down 了 ,再从新拉起节点加入集群后,就没在意 过来小许,服务器磁盘告警来了,我看了下 应用服务器上的tomcat 的日志,不停的刷,日志内容 报redis 错误, CLUSTERDOWN Hash slot not served 吓得我 立马 去 redis 集群上去 检…

    2023年5月16日
    1.6K00
  • Expect解决shell脚本的交互需求

    在linux系统中,shell脚本可以大大提高我们的工作效率。但遇到需要交互的场景时,shell脚本却无法解决。 简介 Expect语言是基于Tcl的。Tcl实际上是一个子程序库,这些子程序库可以嵌入到程序里从而提供语言服务。 最终的语言有点象一个典型的 Shell语言。里面有给变量赋值的set命令,控制程序执行的if,for,continue等命令,还能进…

    2022年11月15日
    1.2K00

发表回复

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

在线咨询: QQ交谈

邮件:712342017@qq.com

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

关注微信