天天看点

puppet之用户管理

本文系统Centos6.0

master:master.lansgg.com 192.168.182.143

client1 :client1.lansgg.com 192.168.182.142

client2: client2.lansgg.com 192.168.182.149

很简单的:

案例1:在client1、client2上创建一个用户zhangsan

首先查看下master上的注册信息是否正确:

<a href="http://blog.51cto.com/attachment/201309/153421567.jpg" target="_blank"></a>

注册证书OK;

master端:

1

2

<code>[root@master ~]# vim /etc/puppet/manifests/site.pp</code>

<code>import</code> <code>"node1.pp"</code>

编写site.pp文件中包含的pp

3

4

5

6

7

8

9

10

11

12

13

14

15

16

<code>[root@master ~]# vim /etc/puppet/manifests/node1.pp</code>

<code>user    {</code><code>"zhangsan"</code><code>:              </code>

<code>        </code><code>ensure =&gt; present,</code>

<code>        </code><code>uid =&gt; </code><code>1001</code><code>,</code>

<code>        </code><code>gid =&gt; </code><code>1001</code><code>,</code>

<code>#       home =&gt; </code><code>"/home/zhangsan"</code><code>,      #此为可以创建非默认的家目录</code>

<code>        </code><code>comment =&gt; </code><code>"test's user"</code><code>,    #此为描述信息</code>

<code>        </code><code>managehome =&gt; </code><code>true</code><code>,          #自动创建家目录</code>

<code>        </code><code>password =&gt; </code><code>'$1$uvqOM1$4dTiuTlz/iWzj1sJEKaU9.'</code><code>,  #密码</code>

<code>        </code><code>groups =&gt; test,     同时将zhangsan加入test组</code>

<code>        </code><code>shell =&gt; </code><code>"/bin/bash"</code><code>;</code>

<code>        </code><code>}</code>

<code>group {</code><code>"zhangsan"</code><code>:</code>

<code>        </code><code>ensure =&gt; </code><code>"present"</code><code>,</code>

PS:上面的password属性的字符串:

<code>[root@master manifests]# grub-md5-crypt</code>

<code>Password:</code>

<code>Retype password:</code>

<code>$</code><code>1</code><code>$uvqOM1$4dTiuTlz/iWzj1sJEKaU9.</code>

接下来在client2进行测试:

<a href="http://blog.51cto.com/attachment/201309/181251428.jpg" target="_blank"></a>

可以看到测试ok;你也可以通过ssh测试的密码正确性;

案例2、我们将zhangsan用户删除;

<code>import</code> <code>"node.pp"</code>

<code>[root@master ~]# vim /etc/puppet/manifests/node.pp</code>

<code>user {</code><code>"zhangsan"</code><code>:</code>

<code>        </code><code>ensure =&gt; absent,</code>

我们在client端进行测试:

<a href="http://blog.51cto.com/attachment/201309/181606904.jpg" target="_blank"></a>

案例3、我们在不同的机器上创建不同的用户,client1上创建test1,client2上创建test2;

17

18

19

20

21

22

23

24

25

26

27

28

29

<code>node </code><code>'client1.lansgg.com'</code> <code>{</code>

<code>user    {</code><code>"test1"</code><code>:</code>

<code>        </code><code>uid =&gt; </code><code>999</code><code>,</code>

<code>        </code><code>gid =&gt; </code><code>999</code><code>,</code>

<code>        </code><code>managehome =&gt; </code><code>true</code><code>,</code>

<code>        </code><code>password =&gt; </code><code>'$1$uvqOM1$4dTiuTlz/iWzj1sJEKaU9.'</code><code>,</code>

<code>group {</code><code>"test1"</code><code>:</code>

<code>}</code>

<code>node </code><code>'client2.lansgg.com'</code> <code>{</code>

<code>user    {</code><code>"test2"</code><code>:</code>

<code>        </code><code>password =&gt; </code><code>'$1$.jwPM1$xwWcMBrxirMxRjrxbRIRM.'</code><code>,</code>

<code>group {</code><code>"test2"</code><code>:</code>

分别在client1、client2执行:

puppetd --test --server master.lansgg.com --verbose

输出内容不贴图了;

下面直接验证在机器的用户test1和test2;

<a href="http://blog.51cto.com/attachment/201309/184805577.jpg" target="_blank"></a>

可以看到用户是OK的;

本文转自 西索oO 51CTO博客,原文链接:http://blog.51cto.com/lansgg/1299802