ansible(11)--ansible的user和group模块
1. group模块
功能:管理被控端用户组;
主要参数如下:
参数 | 说明 |
---|---|
name | 指定创建的组名 |
gid | 为组设置gid |
state | 是否将组创建在远程主机上,创建:present(Default)、删除:absent |
system | 是否创建系统组,创建系统组:yes、不创建系统组:no(Default) |
示例一:创建组
news
,gid
为8888
:[root@xuzhichao ~]# ansible NginxWebs -m group -a 'name=news state=present gid=8888' [root@nginx03 ~]# getent group news
news:x:8888:
示例二:删除组
news
:[root@xuzhichao ~]# ansible NginxWebs -m group -a 'name=news state=absent'
2. user模块
功能:管理被控端用户;
主要参数如下:
参数 | 说明 |
---|---|
name | 创建或删除的用户名 |
uid | 为用户设置uid |
group | 设置用户的主组 |
groups | 设置用户的附加组 |
shell | 为用户设置登陆时的Shell |
create_home | 是否为用户创建主目录,yes(Default)、no |
state | 创建或删除用户,创建:present(Default)、删除:absent |
remove | 是否删除与用户关联的目录,例如家目录和邮箱目录,只有当state=absent时生效,删除:yes、不删除:no(Default) |
system | 是否添加为系统用户,yes:为系统用户,no:不是系统用户 |
generate_ssh_key | 为相关用户生成ssh密钥。不会覆盖现有的ssh密钥 |
ssh_key_bits | 创建用户ssh密钥中位数 |
ssh_key_file | 可以实现ssh密钥改名,或变更存放ssh密钥位置,默认为.ssh/id_rsa |
append | yes:表示追加附加组 |
示例一:添加一个系统用户,用户名为
test1
,uid=2222
,创建家目录,主组为root
,附加组为bin
,默认shell
为nologin
,commen
t指定描述信息。[root@xuzhichao ~]# ansible NginxWebs -m user -a 'name=test1 uid=2222 group=root groups=bin shell=/sbin/nologin system=yes home=/home/test1'
192.168.20.22 | CHANGED => {
"ansible_facts": {
"discovered_interpreter_python": "/usr/bin/python"
},
"changed": true,
"comment": "",
"create_home": true,
"group": 0,
"groups": "bin",
"home": "/home/test1",
"name": "test1",
"shell": "/sbin/nologin",
"state": "present",
"system": true,
"uid": 2222
} [root@nginx03 ~]# getent passwd test1
test1:x:2222:0::/home/test1:/sbin/nologin
[root@nginx03 ~]# id test1
uid=2222(test1) gid=0(root) groups=0(root),1(bin)
示例二:删除
test1
用户:[root@xuzhichao ~]# ansible NginxWebs -m user -a 'name=test1 state=absent'
示例三:创建
test2
用户,并设置登录密码为123456
:#创建密码的加密密文:
[root@xuzhichao ~]# ansible localhost -m debug -a "msg={{ '123456' | password_hash('sha512', 'sal1t') }}"
localhost | SUCCESS => {
"msg": "$6$sal1t$35YAWpKWlp7E7pjaLFMdrzDV7e6HnPrj3Ctoz5/qBgpPjbzy/xEKJkaalHFtn1xWL8Ej7j.qjlLA7R6mQCmsR."
} [root@xuzhichao ~]# ansible 192.168.20.23 -m user -a 'name=test2 password="$6$sal1t$35YAWpKWlp7E7pjaLFMdrzDV7e6HnPrj3Ctoz5/qBgpPjbzy/xEKJkaalHFtn1xWL8Ej7j.qjlLA7R6mQCmsR."'
192.168.20.23 | CHANGED => {
"ansible_facts": {
"discovered_interpreter_python": "/usr/bin/python"
},
"changed": true,
"comment": "",
"create_home": true,
"group": 1012,
"home": "/home/test2",
"name": "test2",
"password": "NOT_LOGGING_PASSWORD",
"shell": "/bin/bash",
"state": "present",
"system": false,
"uid": 1009
} [root@nginx03 ~]# id test2
uid=1009(test2) gid=1012(test2) groups=1012(test2) [root@nginx03 ~]# getent shadow test2
test2:$6$sal1t$35YAWpKWlp7E7pjaLFMdrzDV7e6HnPrj3Ctoz5/qBgpPjbzy/xEKJkaalHFtn1xWL8Ej7j.qjlLA7R6mQCmsR.:18840:0:99999:7:::
示例四:创建
http
用户,并为该用户创建2048
字节的私钥,存放在~/http/.ssh/id_rsa
:[root@manger ~]# ansible webservers -m user -a "name=http uid=8888 group=8888 generate_ssh_key=yes ssh_key_bits=2048 ssh_key_file=.ssh/id_rsa"
ansible(11)--ansible的user和group模块的更多相关文章
- Linux下ansible的group模块
一.概述 group 模块可以帮助我们管理远程主机上的组. 二.常用参数 name参数:必须参数,用于指定要操作的组名称. state参数:用于指定组的状态,两个值可选,present,absent, ...
- 运维自动化神器ansible之group模块
ansible之group模块 group模块是用来添加或者删除组 首先使用ansible-doc来查看用法 [root@note0 ansible]# ansible-doc -s group - ...
- ansible用user/group模块管理受控机上的用户和组(ansible2.9.5)
一,ansible的user/group模块的用途: ansible的user模块用来实现:生成用户.删除用户等用户的管理ansible的group模块用来实现:生成组.删除组等组的管理 说明:刘宏缔 ...
- Ansible系列(二):选项和常用模块
html { font-family: sans-serif } body { margin: 0 } article,aside,details,figcaption,figure,footer,h ...
- ansible笔记(4):常用模块之文件操作
前文中,我们已经介绍了怎样使用模块,而且我们知道,ansible有很多模块,每个模块都有自己的功能,"模块"涉及到的方向比较多,所以对于个人来说,并没有必要了解所有的模块,我们只需 ...
- ansible笔记(6):常用模块之系统模块
1.cron模块 cron命令是计划任务功能,与crontab功能类似. 示例:时间格式--->>>分 时 日 月 星期 10 12 27 * * tar -cvzf log ...
- Ansible自动化搭建及工具集和常见模块、命令详情(重点)
一.ansible介绍 1.ansible简介 官方的title是“Ansible is Simple IT Automation”——简单的自动化IT工具. Ansible跟其他IT自动化技术的区别 ...
- Ansible自动化运维工具及其常用模块
Ansible自动化运维工具及其常用模块 目录 Ansible自动化运维工具及其常用模块 一.Ansible简介 1. Ansible概述 2. Ansible作用 3. Ansible的工作模块 4 ...
- ansible笔记(8):常用模块之系统类模块(二)
ansible笔记():常用模块之系统类模块(二) user模块 user模块可以帮助我们管理远程主机上的用户,比如创建用户.修改用户.删除用户.为用户创建密钥对等操作. 此处我们介绍一些user模块 ...
- ansible基础-ansible角色的使用
ansible基础-ansible角色的使用 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 我们建议把多个节点都会用到的功能将其定义模块,然后谁要用到该模块就直接调用即可!而在a ...
随机推荐
- Android将数据导入到已有的excel表格_0
用到的jxl2.6.12 jar 包下载地址: https://mvnrepository.com/artifact/net.sourceforge.jexcelapi/jxl/2.6.12
- https安全性 带给im 消息加密的启发
大家好,我是蓝胖子,在之前# MYSQL 是如何保证binlog 和redo log同时提交的?这篇文章里,我们可以从mysql的设计中学会如何让两个服务的调用逻辑达到最终一致性,这也是分布式事务实现 ...
- 12 JavaScript 关于eval函数
12 eval函数 eval本身在js里面正常情况下使用的并不多. 但是很多网站会利用eval的特性来完成反爬操作. 我们来看看eval是个什么鬼? 从功能上讲, eval非常简单. 它和python ...
- #链表#CF706E Working routine
题目 给出一个 \(n*m\) 的矩阵,每次交换两个等大的矩阵,输出 \(q\) 次操作后的矩阵 分析 维护向右和向下的指针,考虑最后输出只需要从每行的头指针向右跳, 那么修改实际上是将矩阵左边一列. ...
- 2024最新AIGC系统ChatGPT网站源码,GPTs应用,Ai绘画网站源码
一.前言 SparkAi创作系统是基于ChatGPT进行开发的Ai智能问答系统和Midjourney绘画系统,支持OpenAI-GPT全模型+国内AI全模型.本期针对源码系统整体测试下来非常完美,那么 ...
- Java 日期和时间 API:实用技巧与示例 - 轻松处理日期和时间
Java 用户输入(Scanner) 简介 Scanner 类用于获取用户输入,它位于 java.util 包中. 使用 Scanner 类 要使用 Scanner 类,请执行以下步骤: 导入 jav ...
- Docker学习路线7:构建容器镜像
容器镜像是可执行的软件包,包括运行应用程序所需的所有内容:代码.运行时.系统工具.库和设置.通过构建自定义镜像,您可以在任何支持Docker的平台上无缝地部署应用程序及其所有依赖项. Dockerfi ...
- Go 语言中结构体的使用和示例
结构体(简称struct)用于创建不同数据类型的成员集合,放入一个单一的变量中.虽然数组用于将相同数据类型的多个值存储在单一变量中,但结构体用于将不同数据类型的多个值存储在单一变量中.结构体对于将数据 ...
- 3. Vector Spaces and Subspaces
3.1 Vector Spaces The space \(R^n\) consists of all colunm vectors \(v\) with n components. We can a ...
- Spring源码 20 手写模拟
项目地址 https://gitee.com/liao-hang/hand-write-spring.git 模拟 Spring 注解 自动装配 Autowired @Target(ElementTy ...