ansible app -m user -a 'name=apple shell=/bin/bash home=/home/apple/ state=present'
---present, 增加用户, 当 state=absent 时,为删除用户
ansible-vault # 查看ansible加密模块的用法
# 编辑用户和密码.yml文件
vi userlist.yml
---
userlist:
- user: user1
pass: '123'
- user: user2
pass: '456'
- user: user3
pass: '789' #密码都引起来,字符串
# 编辑创建用户的.yml文件
vi createuser.yml
---
- hosts: test
vars_files:
- userlist.yml
tasks:
- name: create user
user:
name: "{{ item.user }}"
password: "{{ item.pass | password_hash('sha512') }}" #不引
state: present
loop: "{{ userlist }}"
# 对存放用户名和密码的.yml文件进行加密,并输入密码:
ansible-vault encrypt userlist.yml
cat userlist.yml
ansible-vault view userlist.yml # 输入密码后可以查看文件内容
ansible-vault edit userlist.yml # 编辑文件内容,用edit参数
# 使用加密的方式创建用户
ansible-playbook createuser.yml --ask-vault-pass
# cat /etc/shadow # 执行成功,在目标主机server2查看,发现密码已经是加密过的
# 给文件解密
ansible-vault decrypt userlist.yml
# 下面的命令用于修改已经存在的用户的密码也是可以的:
ansilbe apps -m user -a 'name=apple shell=/bin/bash password=pnK4rIpkaoHo update_password=always '
签名:这个人很懒,什么也没有留下!