如何将域管理员添加到 sudoers

如何将域管理员添加到 sudoers

有一个类似的问题已经得到解答;所以,我不确定是否应该继续;我认为我不应该,所以我会继续。

我正在运行 Ubuntu 14.04,并使用 PBIS(以前称为 Likewise-open)加入了我们的 Windows 域。我可以获得单个用户帐户的 sudo 权限,但无法获得相同的域管理员权限。到目前为止,我尝试了所有我见过的 %DOMAIN\domain^admins 变体,但均未成功。

在此先感谢您的帮助。

答案1

这对我也有用:

%domain^admins ALL=(ALL:ALL) ALL

我认为这是因为设置 PBIS 时使用了以下命令:

sudo /opt/pbis/bin/config UserDomainPrefix $domain
sudo /opt/pbis/bin/config AssumeDefaultDomain true
sudo /opt/pbis/bin/config LoginShellTemplate /bin/bash
sudo /opt/pbis/bin/config HomeDirTemplate %H/%U

这似乎使域帐户在系统中显示为本地帐户,因为假设域名位于登录帐户之前。因此 sudoers 列表不需要域名。

有什么想法吗?

答案2

有时取决于您的设置...

%domain\ admins ALL=(ALL) ALL

%domain\\domain\ admins ALL=(ALL) ALL

%domain\ [email protected] ALL=(ALL) ALL

最后一个是我实际上必须使用才能使它工作的...我正在使用 sssd 和 realmd 加入我的域。

过去有很多建议都提到使用 domain^admins,但就我个人而言,这种方法从未奏效,但根据许多帖子,这种方法对其他人有用。第一个单词后面跟着一个 \ 表示有一个有效空格,然后不会将其读为无效字符。希望这对你有所帮助。

答案3

这是另一种方法,不需要进行复杂的转义,也不需要猜测确切的组名。我使用 winbind 进行了测试。

  1. 找出组名:

    $ getent group | grep -i admin
    MYDOMAIN\Domain Admins:*:100006:
    
  2. 将上面看到的组添加到 sudoers 文件中。我们可以使用sudoers.d目录来避免更改主 sudoers 文件(例如,如果发行版升级更改了它,则避免合并)。

    $ visudo -f /etc/sudoers.d/DomainAdmins
    # Add this line:
    "%MYDOMAIN\Domain Admins" ALL=(ALL) ALL
    

sudoers(5)手册页中:

用户名、uid、group、gid、netgroup、nonunix_group 或 nonunix_gid 可以用双引号引起来,以避免转义特殊字符。

答案4

我能够通过以下方式使其工作:

%domain^admins ALL=(ALL:ALL) ALL

(即删除域名)

相关内容