从 LDAP 覆盖 Debian 默认组

从 LDAP 覆盖 Debian 默认组

这个问题一直困扰着我:我该如何最好地处理 LDAP 用户的 Debian 标准组?

Debian 默认定义了许多组,例如 plugdev、audio、cdrom 等等。这些组控制标准 Debian 安装中的访问。

当我希望 LDAP 用户成为其登录的所有机器上的“音频”组的成员时,我尝试了几种不同的方法:

  • 将它们添加到机器上的本地组(这可行,但难以维护)
  • 在 LDAP 中创建一个具有相同名称和不同 GID 的组,然后将用户添加到该组(破坏反向/正向 GID 映射,似乎不起作用)
  • 在 LDAP 中创建具有相同名称和相同 GID 的组,并将用户添加到该组(似乎根本不起作用,看不到 LDAP 组成员)
  • 在 LDAP 中创建具有相同名称和相同 GID 的组,然后删除本地组(此方法有效,但在升级期间会破坏 Debian 检查本地系统健全性的维护脚本)

这种情况的最佳做法是什么?

答案1

您的第三点应该可以解决这个问题,因为我以前做过完全相同的事情。关键在于 /etc/nsswitch.conf 如何为组查找类型定义。您可能还希望在文件之前定义 ldap,以便它首先在 LDAP 目录中搜索任何组,然后覆盖它,因为它将使用第一个匹配项并跳过其余定义的名称服务。

尝试一下或者从 /etc/nsswitch.conf 发布组行。

答案2

我不确定过去的事情是如何运作的,但我为现在和将来寻求解决方案的人写这篇文章。

在 Ubuntu 16.04 中,根据你的第三点,我做到了。这里最重要的是,让ldap条目files在组行中的条目之后出现/etc/nsswitch.conf

相关内容