系统管理员离不开账户管理,账户管理,密码管理,开发机器,测试机器,线上机器,都需要创建用户,并给与相关用户的权限。你如果要创建100个,1000个账户和密码,你会不会疯掉,如何在1分钟完成百上千个账户?那就是我们今天的主题,puppet运维自动化之用户管理。

【导读】

系统管理员离不开账户管理,账户管理,密码管理,开发机器,测试机器,线上机器,都需要创建用户,并给与相关用户的权限。你如果要创建100个,1000个账户和密码,你会不会疯掉,如何在1分钟完成百上千个账户?那就是我们今天的主题,puppet运维自动化之用户管理。

【基础回顾】

puppet如何管理用户(user)资源呢?

利用符合POSIXAPI标准的puppet自带的私有工具来进行用户和组管理,puppet不会直接修改/etc/passwd文件

puppet用户管理特性

allows_duplicates:支持同样的用户拥有同样的uid
manages_homedir:管理用户的home目录,删除和新建
manages_passwords:管理用户密码
manages_solaris_rbac:管理角色和普通用户
puppet用户资源管理参数 allowdupe:是否允许相同的uid用户存在,可以设置的值为true或者false.
auth_membership:whetherspecifiedauthsshouldbetreatedastheonlyauthsofwhichtheuserisamemberorwhethertheyshouldbemerelybetreatedastheminimummembershiplist.可设置的值是inclusive,minmum.
auths:指定用户的认证方式。多个认证方式可用数组列出来。
comment:用户的描述。
ensure:指定用户是否存在,可以设置的值为present,absent,role.
gid:用户的组ID。
groups:指定该用户属于那些组的成员.
home:用户的主目录
key_membership:whetherspecifiedkeyvlauesshouldbetreatedastheonlyattributesoftheuser
keys:用于solaris,指定key
managehome:指定用户是否管理home主目录. provider 指定用provider,用什么命令来执行用户操作,可用的provider有: directoryserviceOSX上面的用户管理命令,不详述,有需求请参考原文档
hpuxuseraddhp-ux系统的用户管理命令
ldapldap方式管理用户
pwfreebsd上面的用户管理
user_role_addsolaris上面的用户管理
useraddlinux上面的用户管理
password:指定用户的结过MD5加密码后的密码。最好以‘’引起来,记着,用单引号,因为经过MD5加密后可能会出$符号。
role_membership:whetherspecifiedrolesshouldbetreatedastheonlyrolesofwhichtheuserisamember.
role:用户的角色,多个角色可以用数组来表示。
shell:用户登录后的shell.
uid:用户的uid
【测试示例】 .我要创建一个名为test的用户. 代码示例 user{"test":
uid=>,
gid=>,
home=>"/home/test",
shell=>"/bin/bash";
}
注意:puppet在创建用户的时候,并不会创建用户的home目录 .比如test用户离职了,需要删除test用户 代码示例: user{"test":
ensure=>"absent",
}
.创建test用户并管理用户目录 代码示例: user{"test":
ensure=>"present",
managehome=>true,
}
.创建test用户,且让test用户是属于sa组。 代码示例: user{"test":
ensure=>"present",
managehome=>true,
groups=>sa,
}
注意,用户所属的SA组要先创建。 关于如何创建组,在接下来的会为大家讲,这里给举个例子 代码示例: group{"sa":
ensure=>"present",
gid=>,
}
总结:用户和密码跟系统管理员关系密切,管理用户的切不可马虎。方便快捷,实用的管理才是王道。

puppet运维自动化之用户管理的更多相关文章

  1. 【mongoDB运维篇①】用户管理

    3.0版本以前 在mongodb3.0版本以前中,有一个admin数据库, 牵涉到服务器配置层面的操作,需要先切换到admin数据库.即 use admin , 相当于进入超级用户管理模式,mongo ...

  2. Linux运维六:用户管理及用户权限设置

    Linux 系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统.用户的账号一方面可以帮助系统管理员对使用系统的用户进行 ...

  3. 运维自动化管理服务器 CheungSSH

    CheungSSH 是一款中国人自主研发的Linux运维自动化管理服务器软件,后端使用 Python 语言+Django 的 Web 框架,前端使用 Bootstrap+Javascript+jQue ...

  4. 运维自动化之1 - ansible 批量主机管理

    2000 - 2016 年,维护的小型机.linux刚开始的2台增加到上千台,手工检查.日常版本升级需要管理太多设备,必须通过运维自动化实现 特别是版本升级,需要到同类机器部署代码.起停设备,必须在一 ...

  5. Ansible 运维自动化 ( 配置管理工具 )

    背景 出差背景,要搞项目的自动化部署.因为只直接对接生产分发,机器又非常多,这样以往使用的bat只能作为应急方案了,还是得考虑使用专业化的工具来做这个事情! 当下有许多的运维自动化工具( 配置管理 ) ...

  6. 运维自动化之salt笔记

    1:saltstack的基本介绍 2:salt的安装 1:服务端1:安装2:配置文件3:运行4:注意事项2:客户端1:安装2:配置文件3:运行4:注意事项 3:salt的使用: 1:基础知识1:tar ...

  7. 运维自动化之puppet3分钟入门

    运维自动化之puppet3分钟入门 几个月前曾因为项目需求而学了点puppet的一些知识,最近因为要给别人讲一下,也就借此博文来做一下回忆,当然了,这个puppet用起来还是很不错的,尤其对我这种懒人 ...

  8. 运维自动化之SALTSTACK简单入门

    运维自动化之SaltStack简单入门 饱食终日而无所事事,是颓也,废也.但看昨日,费九牛二虎之力除一BUG便流连于新番之中,不知东方之既黑,实乃颓颓然而荒废矣.故今日来缀一文以忏昨日之悔. Salt ...

  9. Ansible运维自动化工具19个常用模块使用实例【转】

    一.模块列表 1.setup 2.ping 3.file 4.copy 5.command 6.shell 7.script 8.cron 9.yum 10.service 11.group 12.u ...

随机推荐

  1. dom4j使用方式

    使用dom4j读取xml 1.读取xml文件 SAXReader reader = new SAXReader(); Document doc = reader.read(new File(" ...

  2. Elasticsearch 6.2.3版本 Windows环境 简单操作

    背景描述 Elasticsearch是一个基于Apache Lucene(TM)的开源搜索引擎.无论在开源还是专有领域,Lucene可以被认为是迄今为止最先进.性能最好的.功能最全的搜索引擎库. El ...

  3. 1.LTE系统概述

    信息源:中国大学MOOC 中搜索 移动通信网络与优化 兰州交通大学 3GPP协议:https://www.3gpp.org/DynaReport/36-series.htm 可以在中国大学MOOC中搜 ...

  4. 微信小程序 解析html格式内容

    需要引入html-view文件 1/js 代码 const HtmlParser=require('../../utils/html-view/index') data: { coupon_text: ...

  5. 【基本优化实践】【1.4】tempdb优化

    [1]tempdb介绍 tempdb全局存储内部对象,用户对象,临时表,临时对象,以及SQL Server操作创建的存储过程.每个数据库实例只有一个tempdb,所以可能存在性能以及磁盘空间瓶颈. 各 ...

  6. CSS3新特性(阴影、动画、渐变)

    一.阴影 1.1文字阴影: text-shadow<length>①: 第1个长度值用来设置对象的阴影水平偏移值.可以为负值 <length>②: 第2个长度值用来设置对象的阴 ...

  7. springboot2.0结合fastdfs实现文件分布式上传

    1. 引入依赖 在父工程中,我们已经管理了依赖,版本为: <fastDFS.client.version>1.26.7</fastDFS.client.version> 因此, ...

  8. cmd打开指定目录技巧

    在win的搜索栏直接打上“cmd”后回车 输入cmd 结果:

  9. group_concat默认长度限制

    这几天做后台一个订单汇总数据报表时,发现当使用group_concat函数时,发现会漏掉数据,究其原因是因为这个函数有默认长度显示1024 可以修改mysql配置文件my.ini 设置group_co ...

  10. Host xxx is not allowed to connect to this MariaDb server

    直接复制代码,无需修改 第一:// %:表示从任何主机连接到mysql服务器 GRANT ALL PRIVILEGES ON *.* TO 'user'@'%' IDENTIFIED BY 'pass ...