网络管理员指南 -10.网络信息系统 -7>使用 passwd 与组织地图

/ns/wz/net/data/20020808034117.htm

网络管理员指南 -10.网络信息系统 -7>使用 passwd 与组织地图


本文出自:http://www.linpus.com.tw 作者: Andrew Anderson


NIS 的主要的应用程序之一是在一个 NIS 域中的所有的主机上的同步用户和帐号信息。对于这一目标,
你通常仅保持一个小的本地 /etc/passwd 文件,来自 NIS 地图的地点宽度信息被添加到该文件。然而,
简单地在 nsswitch.conf 中为这种服务启用 NIS 查找几乎是不够的。

当依靠口令信息由NIS散布时,你首先必须确保数字用户的身份是在你本地的 passwd 文件中匹配 NIS 服
务器的用户身份想法的任何用户。你也想为其他的目的做到这一点,就象在你的网络上从其他主机中安装
NFS一样。

如果在 /etc/passwd 或 /etc/group 中的任意数字的 ids 偏离了地图中的内容,你必须为属于那个用户的
所有文件调整文件所有权。首先你应该在 passwd 中改变所有的 uids 和 gids 并且聚合成新的价值;然后
找到刚被改变了的属于用户的所有文件,最后改变他们的所有权。假设新闻过去常有一个 9 的用户身份 ,
okir 有一个103 的用户身份 ,它被改变成一些其他的价值;然后你能发出下列命令:

你用安装的新的 passwd 文件执行这些命令,是重要的,并且在你改变他们任意一个的所有权以前,你收集
所有的文件名,也是重要的。更新文件的组所有权,你将使用一个类似的命令。

做这一点,在你系统上的数字的 uid和gid将适合在你的 NIS 域上所有其他主机上的uid和gid。下一步将是把
配置行加到为用户和组织信息启用 NIS 查找的 nsswitch.conf上:

当一个用户试图登录时,这使登录命令和所有它的朋友首先查询 NIS地图,如果这个查找失败,则回到本地的
文件。通常,你将从你的本地文件中把几乎所有的用户移开,并且仅象在它中的邮件一样为根和通用的帐号离
开入口。这是因为一些重要的系统任务可能要求印射 uids 到用户名字,或反过来也如此。例如,行政的 cron
工作可以执行 su 命令,使其暂时成为新闻,否则 UUCP 分系统可能邮寄一份地位报告。如果新闻和 uucp 在
本地的 passwd 文件中没有入口,这些工作将悲惨地在一个 NIS 变暗期间失败。

在这里有两个有序的大警告:的防止误解的说明:一方面,安装象所描述的一样直到这里仅仅为不使用阴影口令
的登录全套工作,就象包含在 util-linux文件包中的一样。使用阴影口令的错综与NIS将在下面被介绍。在另一
方面,登录命令不只是唯一存取 passwd 文件的命令--看一下人们常常使用的 ls 命令。无论何时做一个长目录,
ls 将为用户和一个文件的组所有者显示用户的符号名字;即,为每个它遇见的 uid 和 gid,它将必须一次查询
NIS 服务器。如果你的本地网络被阻塞,这将使事物相当糟糕的变慢,或,甚至更糟,当 NIS 服务器不在一样的
物理的网络上时,数据包必须通过一个路由器。

仍然,这还不是整个的故事。想象一下,如果一个用户想要改变她的口令,将发生什么。通常,她将调用 passwd ,
passwd读新口令并且更新本地的 passwd 文件。用 NIS 是不可能的,因为那个文件不再是当地可得到的,但是无
论何时他们想要改变他们的口令,让用户登录进 NIS 服务器不也是一个选择。因此, NIS 为称作yppasswd的
passwd提供一个下降代替 ,它在现存的NIS中做类似的事情。在服务器主机上改变口令,它经由 RPC 在那台主机
上联系 yppasswdd 魔鬼,并且向它提供更新的口令信息。通常,做这样一些东西,你在正常的程序上安装 yppasswd :

同时你必须在服务器上安装 rpc.yppasswdd 并且从 rc.inet2 上开始它。这将有效地从你的用户中隐蔽 NIS
的任何曲解。