ansible 批量修改root密码

[root@sz_fy_virt_encrypt_33_239 fetch]# cat /opt/passwd.yml 
- hosts: web
  vars:
    path: /home/opsadmin
  remote_user: opsadmin
  become: yes
  become_method: sudo
  become_user: root
  tasks:
  - name: Generate random number
    shell: openssl rand -base64 12 | cut -b 1-12 > /tmp/.openssl

  - name: modify passwd
    shell: echo `cat /tmp/.openssl`|passwd --stdin root

  - name: fetch remote file
    fetch: 
      src: /tmp/.openssl
      dest: "{{ path }}/fetch/passwd-{{ inventory_hostname }}" 
      flat: yes

  - name: delete passwd file
    shell: rm -f /tmp/.openssl
    
  - name: create pssswd file   
shell: for i in `ls  ~/fetch`;do echo -e ${i##passwd-},`cat ~/fetch/$i` >> ~/fetch/.`date +%F`-passwd;done


vim /etc/ansible/hosts
10.8.20.200 ansible_user=xxx ansible_sudo_pass="xxx"  ansible_ssh_port=123455

ssh-copy-id -i  /home/opsadmin/.ssh/id_rsa.pub  '-p 37600 opsadmin@172.20.51.73'

执行效果

原文地址:https://www.cnblogs.com/hellojackyleon/p/9515850.html