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是删除、缺少不存在的意思
本文作者:little小新
本文链接:https://www.cnblogs.com/littlecc/p/17435954.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步