我的服务器加入到 AD 域,我使用 SSSD 和领域来执行此操作。我可以使用 SSH 和我的 AD 凭据很好地登录到服务器。我想允许我的用户运行 sudo,所以我添加%MY_AD_GROUP ALL=(ALL) ALL
到我的/etc/sudoers
.这是行不通的。然后我尝试添加我的域,如下所示:
%MY_DOMAIN\\MY_AD_GROUP ALL=(ALL) ALL
%MY_AD_GROUP@MY_DOMAIN ALL=(ALL) ALL
%:MY_AD_GROUP@MY_DOMAIN ALL=(ALL) ALL
+MY_AD_GROUP ALL=(ALL) ALL
+MY_DOMAIN\\MY_AD_GROUP ALL=(ALL) ALL
+MY_AD_GROUP@MY_DOMAIN ALL=(ALL) ALL
但它们都不起作用。如果我运行 id:
$ id
uid=1953620811(my_user) gid=1953600513(domain users) groups=1953600513(domain users) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
它表明我的用户确实是 AD 用户。
值得一提的是:我首先检查我在 AD 中的一个组:
$ getent group MY_AD_GROUP
MY_AD_GROUP:*:1953654054:user1,my_user,user3,user4
因此, my_user 是 MY_AD_GROUP 的成员,然后我将其添加到/etc/sudoers
(通过 visudo)并尝试运行:
$ sudo echo a
[sudo] password for my_user:
my_user is not in the sudoers file. This incident will be reported.
然后我再次检查 MY_AD_GROUP:
$ getent group MY_AD_GROUP
MY_AD_GROUP:*:1953654054:user1,user3,user4
我的用户从列表中消失了(但我知道它仍然是 AD 组的成员)。而且,一旦我跑啊$ sss_cache -E
跑:
$ getent group MY_AD_GROUP
MY_AD_GROUP:*:1953654054:user1,my_user,user3,user4
用户再次出现,尽管 sudo 不起作用。那么发生了什么???