我有多个使用 sssd 进行 ad 身份验证的 Linux 工作站。为了避免配置错误,使用 ansible 来维护 sssd 的同构设置。
我开始疑惑 sssd 的域部分中的参数 realmd_tags 是用来做什么的。手册页告诉我:
realmd_tags (string)
Various tags stored by the realmd configuration service for this domain.
鉴于我在领域命令文档中找不到任何对标签的引用,这并不是很有帮助。
在网上你可以找到大量的 sssd 配置示例,其中
realmd_tags = manages-system joined-with-samba
realmd_tags = manages-system joined-with-adcli
但对其目的没有评论。简而言之,我可以在这个字段中输入什么,如果我做得不正确,会有什么问题?这更多的是出于好奇,因为上述任何一种设置都可以工作,我怀疑这个参数只是某种标签。但有时愚蠢的问题可以教会你一些东西并防止灾难。
感谢您的帮助。
答案1
我也有类似的问题和好奇心。这让我去 github 查看了 SSSD 的代码,但 realmd 代码库里有答案。
从https://github.com/freedesktop/realmd/search?q=realmd_tags
value = realm_ini_config_get (self->pv->config, self->pv->section, "realmd_tags");
if (value && strstr (value, "manages-system"))
manages_system = TRUE;
g_free (value);
似乎没有其他代码可以获取配置"realmd_tags"
。有代码可以创建自己的 realmd_tags,例如:
https://github.com/freedesktop/realmd/blob/63a6453399dddb3d49ec32e6095594ecc322829f/service/realm-sssd-ad.c#L183
realmd_tags = g_string_new ("");
if (realm_options_manage_system (options, disco->domain_name))
g_string_append (realmd_tags, "manages-system ");
g_string_append (realmd_tags, use_adcli ? "joined-with-adcli " : "joined-with-samba ");
此逻辑于 2012 年引入,用于处理自动或一次性密码(和其他场景),参考提交: https://github.com/freedesktop/realmd/commit/3a988441e411a8e38f668edf1114397e1726a155