我们公司有一个中央 NIS 配置,我们用它来访问我们团队的服务器(Redhat)...
当前配置允许所有有效的 NIS 身份验证用户连接到我们的服务器。我们无法在 NIS 主服务器上更新或更改某些内容...因此...
有没有办法使用网络组或其他配置来允许我们的团队成员使用 NIS 服务器进行身份验证,但仍然限制所有其他用户的访问?
谢谢!
答案1
有没有办法使用网络组或其他配置来允许我们的团队成员使用 NIS 服务器进行身份验证,但仍然限制所有其他用户的访问?
这几乎就是网络组存在的原因。
实现所需操作的最简单解决方案是使用compat
的功能nsswitch.conf
。此内容在 中有简要且粗略的记录nsswitch.conf(5)
:
与 +/- 语法交互(兼容模式)
...在 /etc/passwd 中,您可以有以下形式的条目:+user 或 +@netgroup(从 NIS 密码映射中包含指定的用户)、-user 或 -@netgroup(排除指定的用户)和 +(从 NIS 密码映射中包含除排除的用户之外的所有用户)。
实际上,这意味着如果你nsswitch.conf
看起来像这样:
passwd: compat
你的/etc/passwd
结尾是这样的:
+@myusers
然后只有网络组的成员myusers
才能通过系统的身份验证。
您可以使用 PAM 配置中的模块完成类似的操作pam_listfile
,并根据组创建限制(而不是网络组) 成员资格。如果您有要保持同步的组和网络组,那么这很有用(因为现在您可以只使用标准 Unix 组)。 这个文件有一个使用 限制特定组登录的示例pam_listfile
。