Chinaunix首页 | 论坛 | 博客
  • 博客访问: 27542
  • 博文数量: 9
  • 博客积分: 1537
  • 博客等级: 上尉
  • 技术积分: 95
  • 用 户 组: 普通用户
  • 注册时间: 2008-05-18 16:09
文章分类

全部博文(9)

文章存档

2011年(6)

2009年(2)

2008年(1)

我的朋友
最近访客

分类: LINUX

2009-05-28 10:05:23



    NIS的应用一般最多的是用来管理用户和组信息,从而可以统一管理机器的登录,资源和服务的权限控制等。不过Unix以及NIS的用户权限控制相对来说还是比较单一的。比如NFS服务,你可以在配置的时候限制哪些客户端被允许访问,但一般只限于某个IP地址段或域名段。如果希望将同一个域内的主机划分成不同的组(例如按照部门划分)来分配权限,或者希望限制仅有特定的用户才能访问,那就要使用到netgroup. 这个功能有点类似与Windows里的组或者OU.
    netgroup比较常用的地方有passwd,group文件,NFS,/etc/hosts.equiv.rhosts 等。
    netgroup本身是放在/etc/netgroup,这是本地配置,也就是说每台机器你都要为他配置。那如果你已经有了NIS,你就可以把它放到NIS里和其他passwd,group一样一起发布,这样NIS域里的所有机器都可共享一份设置。 这又有点像Windows AD里本地组(OU)和域组(OU)

[1年多之后继续]

    这里举个NFS的例子。假设我们在netgroup里设置如下的组

  1. itmachine \
  2. (server1,-,testdomain)\
  3. (server2,-,testdomain)
  usermachine \ 
  (server3,-,testdomain)\
  (server4,-,testdomain)
  1. itadmin \
  2. (,Tom,)\
  3. (,Jerry,)
简单说明一下格式。netgroup里的格式很简单
  1. groupname member1 member2 ....
其中memeber可以是另外一个组的名字(也就是可以嵌套组),也可以是具体的member, member的格式为
  1. (hostname,username,domianname)
那么回过来看例子里:
itmachine和usermachine组其实就是host 组,也就是用来把主机归类的。username这里是空的代表所有用户
itadmin组其实就是user组,用来归类用户ID。hostname和domain这里是空的,代表所有。

好了,有了这个netgroup之后,我们把它放在NIS里发布,那整个domain里都可以共享同一个netgroup配置了。

下面来看一下利用这个netgroup配置,我们来配置一个NFS配置文件(/etc/exports):
  1. /share1 @itmachine(rw,sync,no_root_squash) @usermachine (ro,sync,no_root_squash)
应该很好理解,在netgroup组的名字前加上@。 例子里说明itmachine组的机器对该目录可写,而usermachine组是只读。

我们再看一个本地/etc/passwd的例子。你可以在passwd里加上一个user group里说明哪些NIS里的帐号可以登录本机。你可以在/etc/passwd的最后一行加上:
  1. +@itadmin
这就代表所有NIS里属于itadmin组的人可以登录本地机器。
不过要使用这个功能,必须修改/etc/nsswitch.conf。 
  1. passwd: compat
  2. group: compat
在Solaris里你需要修改passwd为compat模式。而在Linux里稍微复杂一些,不同版本会有些不同,有时候也是compat,有时只需要files,nis也行。要实际测试一下。

NFS和passwd/group是2个比较常用到netgroup的地方,另外/etc/hosts.equiv和 .rhosts也可以用,这里就不一一举例了。


阅读(3047) | 评论(1) | 转发(0) |
0

上一篇:NIS应用一: 兼容性问题

下一篇:懒人

给主人留下些什么吧!~~

soway2009-08-18 09:04:29

能否详细讲一下这个netgroup啊?我最近在仔细看这个方面的东西。