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. C源程序到可执行文件的四个过程

    C源程序到可执行文件的四个过程 1.预处理:预编译器执行.譬如C中的宏定义就是由预编译器处理,注释等也是由预编译器处理的 gcc -E -hello.c -o hello.i 2.编译:编译器来执行. ...

  2. java的Commons包简介

    http://mxdxm.iteye.com/blog/758453 Jakarta Commons是Jakarta的一个子项目,目的是创建和维护独立于其他框架和产品的程序包(packages).Ja ...

  3. 对Linux文件权限的理解

    755,775,777,ugoa 等分别代表什么含义?这些数字是如何得到的? 1.常用的linux文件权限: 444 -r--r--r-- 600 -rw------- 644 -rw-r--r-- ...

  4. jQuery的DOM操作之加入元素和删除元素

    加入元素: .append()--在目标元素之后加入元素. .prepend()--在目标元素之前加入元素. .after()--在目标元素之后换行加入元素: .before()--在目标元素之前加入 ...

  5. [CSS3]移动Web开发系列之CSS3增强型选择器

    css3是移动Web开发的主要技术之中的一个.当前.CSS3技术最适合在移动Web开发中使用的特性有增强的选择器.阴影.强大的背景设置 .圆角边框 接下来我们主要解说增强型的选择器.主要分两种,属性选 ...

  6. ejs - 初试

    官方API: https://www.npmjs.com/package/ejs - 模板引擎 ejs文件(和普通html文件没什么区别,只是多增加了变量) <!DOCTYPE html> ...

  7. Hadoop最大值的算法中出现的错误(strToDouble)

    错误信息: Exception in thread "main" java.lang.NumberFormatException: For input string: " ...

  8. iOS: 学习笔记, 加入一个带界面约束的控制器

    1. 创建一个空iOS应用程序(Empty Application). 2. 加入加控制器类. 改动控制器类的viewDidLoad - (void)viewDidLoad { [super view ...

  9. Git学习小结

    版本控制工具 集中式: CVS SVN 集大成者 分布式:git 创始人:inux Towards 2005年 工具 最好使用linux(oh-my-zsh) gitbash -> cygwin ...

  10. MongoDB基本命令使用

    成功启动MongoDB后,再打开一个命令行窗口输入mongo,就可以进行数据库的一些操作. 输入help可以看到基本操作命令: show dbs:显示数据库列表 show collections:显示 ...