5、ansible-Ad-Hoc-点对点模式--m user-用户模块
1、在其它主机上批量创建用户
ansible webserver -m user -a 'name=pt state=present'
· name=创建用户的名字
· state=一个状态 //present是创建或确保某个资源存在的意思
============================================================================================
2、修改用户的密码
··先 生成加密的密码:
echo '303977143' | openssl passwd -1 -stdin
·这是一个使用 OpenSSL 的命令,它将字符串303977143加密为一个 MD5 哈希密码,并输出该密码
·openssl passwd 语句是将输出的数字进行加密 -1 是加密的算法中的一种、是md5算法
·-stdin 标准输入输出流

stdin的作用
stdin的作用 -stdin 参数告诉 OpenSSL 命令从标准输入流中读取要加密的密码。在命令行中,如果不使用 -stdin 参数,则需要在命令行中直接指定要加密的密码,如 openssl passwd -1 123456,其中 123456 是要加密的密码。但是,如果要加密的密码来自于其他命令的输出结果或者是用户输入的,那么就需要使用 -stdin 参数来告诉 OpenSSL 命令从标准输入流中读取密码。例如,echo '123456' | openssl passwd -1 -stdin 命令将字符串 123456 通过管道传递给 OpenSSL 命令,然后使用 -stdin 参数告诉 OpenSSL 命令从标准输入流中读取密码,最后输出加密后的密码。
·· 再将加密的密码给其他主机进行设置密码
ansible webserver -m user -a 'name=pt password=$1$Do0jXuTX$EMWBNwQh8WGz.RxUKtx2x.'
·将pt用户的密码改成$1$Do0jXuTX$EMWBNwQh8WGz.RxUKtx2x.这个被加密过的密码 然后通过-a传递给user模块

===============================================================================================================
3、修改用户的shll

将/bin/bash改为/sbin/nologin 用户就登录不了了
ansible webserver -m user -a 'name=pt shell=/sbin/nologin append=yes'
·append=yes 追加修改的意思;表示如果该用户已经存在,则不会更改其现有设置,而是添加新的设置


=================================================================
删除用户
ansible webserver -m user -a 'name=pt state=absent'
·state=当前状态 absent是删除、缺少不存在的意思

浙公网安备 33010602011771号