[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 | cut -b - > /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'
执行效果