ansible 用户批量创建与管理
1. 安装 passlib 要求系统 python 版本在2.7以上。 2. 利用 pip 安装:pipinstallpasslib
3. 生成的经过加密的密码:
例如,我们想给 apple 设置的密码是 123456 ,那么我们在 ansible 命令中,不能直接使用 123456 这样的明
文传输,要对 123456 这个字符串进行加密再在 ansible 命令中使用。
那么,如何对密码 123456 进行加密呢?
4. 安装完 passlib 后,生成加密的密码:
4.1 python 3.x 版本(sha512 加密算法):
python -c 'frompasslib.hashimport sha512_crypt;importgetpass;print (sha512_crypt.encrypt(getpass.getpass()))'
Password:
$6$rounds=656000$3pLHgWNbPxYGlyvP$VsVlECg4v2Gr35XMzWCtLZyPO.l7Fg240/cGZbTI8qDea8fwY3ERSxAompHqQ4bjIlxeLPgWAUj64FMxunOCt.
说明: 在 Password 后输入我们的密码"123456",然后再按enter 键,就会生成经过加密的密码了,$6$round....... 这一串字符
4.2 python 3.x 版本(普通加密算法):
其实就是生成的加密密码短一点:
python -c 'import crypt; print (crypt.crypt("123456","apple"))'
apnK4rIpkaoHo
说明: "pnK4rIpkaoHo" 就是生成的经过加密的密码
4.3 python 2.x 版本(sha512 加密算法):
python -c 'frompasslib.hashimport sha512_crypt;importgetpass;print (sha512_crypt.encrypt(getpass.getpass()))'
4.4python 2.x 版本(普通加密算法):
python -c 'import crypt; print (crypt.crypt("123456","apple"))'
小结: 看到上面列出的4种加密方式,发现,其实python3.x 和 python2.x 版本的区别不大,只是加密算法是用 sha512 还是用普通算法的区别而已。
5.用ansible 设置用户密码,下面的命令用于修改已经存在的用户的密码也是可以的:
ansilbe apps -m user-a 'name=appleshell=/bin/bash password=pnK4rIpkaoHo
update_password=always '
这样,就可以修改密码了。使用了普通加密的密文密码。
页:
[1]