使用ansible的用户管理模块user,ansible不支持明文密码,所以在创建一个用户时,需设置密码的话需要预先将密码加密为密文才可以,使用加密库passlib加密,如下。
加密:python -c "from passlib.hash import sha512_crypt; import getpass; print(sha512_crypt.using(rounds=5000).hash(getpass.getpass()))"
有一个模块raw可以实现直接明文,如:
$ ansible -i /ansible/host host1 -b -m raw -a "sudo echo 'password'| passwd --stdin username"