1.添加用户

/srv/salt/top.sls

base:
'test82.salt.cn':
- user.useradd

/srv/salt/user/useradd.sls

jim:
user.present:
- fullname: jim
- shell: /bin/bash
- password: '$6$hyxchyxc$r2R3uQcnhIl8QSg7WrmojiJqRhD0s6KVYGvXZCswGwW9GDeLF4mhdQJ/Pq8ccWkdzkyYSpxnGqxciMJ53WPI//'
- home: /home/jim
- uid: 650
- gid: 650
- groups:
- jim
- root
- require:
- group: jim group.present:
- gid: 650

命令行执行如下命令完成用户创建

salt 'test82.salt.cn' state.highstate

或直接

salt 'test82.salt.cn' state.sls user.useradd

如何生成用户哈希密码?

方法1.可再命令行通过如下命令生产哈希密码

python -c "import crypt; print crypt.crypt('password', '\$6\$hyxchyxc')"

其中$6代表sha512

哈希类型支持如下几种:

        Type    Length
====== ======
$6 sha512 128
$5 sha384 96
$4 sha256 64
$3 sha224 56
$2 sha1 40
$1 md5 32

方法2.在命令行执行如下命令

salt 'salt82.test.cn' shadow.gen_password 'password'     默认为sha512

可通过如下设置相应

salt 'salt82.test.cn' shadow.gen_password 'password' crypt_salt'hyxchyxc' algorithm=sha512

2.批量创建用户

/srv/salt/user/usersadd.sls

{% set users = ['jim','hwg','hyxc'] %}
{% for user in users %}
{{ user }}:
user.present:
- shell: /bin/bash
- password: '$6$hyxchyxc$r2R3uQcnhIl8QSg7WrmojiJqRhD0s6KVYGvXZCswGwW9GDeLF4mhdQJ/Pq8ccWkdzkyYSpxnGqxciMJ53WPI//'
- gid: 650
- groups:
- jim
{% endfor %}

3.删除用户

/srv/salt/user/userdel.sls

jim:
user.absent:
- purge: Ture
- force: Ture

4.修改用户密码

显示用户密码信息

salt 'test82.salt.cn' shadow.info root

设置或更改用户密码

salt 'test82.salt.cn' shadow.set_password hwg '$6$hyxchyxc$r2R3uQcnhIl8QSg7WrmojiJqRhD0s6KVYGvXZCswGwW9GDeLF4mhdQJ/Pq8ccWkdzkyYSpxnGqxciMJ53WPI//'

删除用户密码,删除后可无密码登陆

salt 'test82.salt.cn' shadow.del_password hwg

5.查看用户信息

显示所有用户列表

salt 'test82.salt.cn' user.list_users

显示指定用户信息

salt 'test82.salt.cn' user.info root

显示用户密码信息

salt 'test82.salt.cn' shadow.info root

-------------------------------------------------------------------------------------------

相关用户管理内置执行命令参见:http://www.cnblogs.com/jim-hwg/p/4610521.html

相关用户组管理内置执行命令参见:http://www.cnblogs.com/jim-hwg/p/4610416.html

相关shadow管理内置执行命令参见:http://www.cnblogs.com/jim-hwg/p/4611157.html

saltstack之用户管理的更多相关文章

  1. SaltStack之用户账户管理

    在Salt.state中,user 模块是用来创建用户和管理用户设定的,用户可以被设置成 present 状态或者 absent 状态 注释: present:添加用户 absent   : 删除用户 ...

  2. MySQL用户管理与字符集

    用户管理与字符集 一.用户管理 用户名的概念 用户名是由两部分组成的 user和host 1.1 创建用户 create user 'yysue'@'192.168.5.38' identified ...

  3. ASP.NET MVC5+EF6+EasyUI 后台管理系统(75)-微信公众平台开发-用户管理

    系列目录 前言 本节主要是关注者(即用户)和用户组的管理,微信公众号提供了用户和用户组的管理,我们可以在微信公众号官方里面进行操作,添加备注和标签,以及移动用户组别,同时,微信公众号也提供了相应的接口 ...

  4. MySQL用户管理

    主要总结MySQL进行用户管理的基本实现,包含MySQL登录,添加用户,删除用户,为用户分配权限,移除某用户的权限,修改密码,查看权限等基本操作,所有命令均亲测实现.本博文是本人的劳动成果所得,在博客 ...

  5. mysql 用户管理和权限设置

    用户管理 mysql>use mysql; 查看 mysql> select host,user,password from user ; 创建 mysql> create user ...

  6. Laravel大型项目系列教程(二)之用户管理

    Laravel大型项目系列教程(二) 一.前言 本节教程将大概实现用户的注册.修改个人信息.管理用户功能. 二.Let's go 1.创建用户注册视图 $ php artisan generate:v ...

  7. linux 用户管理

    linux 用户管理 创建一个用户 foo 这个用户只能在/home/foo 上面增加删除文件, foo 不能在其他目录加减文件 useradd -d /home/foo -m foo [root@] ...

  8. mongodb的用户管理及安全认证

    1.确认mongodb的版本 > use admin switched to db admin > db.runCommand({}) { "version" : &q ...

  9. linux 用户管理(一)

    本节内容梗概: 1.用户管理配置文件 2.用户管理命令 3.用户组管理命令 4.批量添加用户 5.用户授权 学东西先讲原理,所以从配置文件入手 1.用户信息文件  /etc/passwd 存放了用户的 ...

随机推荐

  1. Android入门之文件系统操作(一)简单的文件浏览器 (转)

    Android入门之文件系统操作(一)简单的文件浏览器 (转)        import java.io.File; import java.util.*; import android.app.A ...

  2. linux-系统资源查看-动态

    1.top 2.sar http://blog.csdn.net/hguisu/article/details/7493661  很重要 http://blog.itpub.net/24435147/ ...

  3. MySQL判断中文字符的方法(转)

    准备: 2.1.环境 MySQL mysql> SHOW VARIABLES LIKE "%version%"; +-------------------------+--- ...

  4. 使用Python3解压gz、tar、tgz、zip、rar五种格式的压缩文件例子

    使用Python3解压如下五种压缩文件:gz.tar.tgz.zip.rar 简介 gz: 即gzip,通常只能压缩一个文件.与tar结合起来就可以实现先打包,再压缩. tar: linux系统下的打 ...

  5. Linux下安装Eclipse的PHP插件(PHPEclipse)

    下载: Eclipse: http://www.eclipse.org/downloads/       (本人用的Ubuntu,直接在SoftWare Center中下载的) (选择适合你系统的相应 ...

  6. Eclipse插件开发 学习笔记 PDF 第一篇到第四篇 免分下载 开发基础 核心技术 高级进阶 综合实例

    <<Eclipse插件开发 学习笔记>>,本书由浅入深.有重点.有针对性地介绍了Eclipse插件开发技术,全书分为4篇共24章.第一篇介绍Eclipse平台界面开发的基础知识 ...

  7. tensorflow cnn+rnn基本结构

    #CNN x = tf.placeholder(tf.float32,[None,input_node],name="x_input") y_ = tf.placeholder(t ...

  8. [转载]linux 清除系统cached

    FROM: http://cqfish.blog.51cto.com/622299/197230 linux 清除系统cached top查看系统内存使用情况   Mem:    16432180k ...

  9. [转载]LoadRunner如何处理AJAX异步请求

    最近在网上经常有人问“LoadRunner脚本回放成功,但数据没有写入数据库,这是什么原因”,记得以前的同事也遇到过相同的问题,再次将解决方法贴出来,希望能帮助大家. 相信大家在做测试的过程中,特别是 ...

  10. How to check the 'OLE DB Destination' INPUT and OUTPUT

    Step 1: Step 2: Step 3: