更新多个sudoers文件


8

我们有多台向Active Directory域进行身份验证的Linux服务器。对于AD中的组,我想添加允许使用sudo以root身份运行的命令列表。我显然可以插入到每台计算机并更新sudoers文件-但这将需要一些时间。另外,不允许root登录。因此,少密码登录仅适用于非root用户。

有没有一种快速的方法可以立即为每台Linux计算机更新sudoers文件?我在这里考虑具有某些系统管理功能的Perl或Python脚本。

更新:感谢veroteq7和Shane Madden。我曾考虑过一次部署cfengine,但目前还没有运行它。我们已决定使用LDAP是最佳解决方案。导入sudo的LDIF架构schema.ActiveDirectory时出现错误。错误是第144行上的“参数不正确”。

这是从第144行开始的内容:

dn: CN=sudoRole,CN=Schema,CN=Configuration,DC=X
changetype: add
objectClass: top
objectClass: classSchema
cn: sudoRole
distinguishedName: CN=sudoRole,CN=Schema,CN=Configuration,DC=X
instanceType: 4
possSuperiors: container
possSuperiors: top
subClassOf: top
governsID: 1.3.6.1.4.1.15953.9.2.1
mayContain: sudoCommand
mayContain: sudoHost
mayContain: sudoOption
mayContain: sudoRunAs
mayContain: sudoRunAsUser
mayContain: sudoRunAsGroup
mayContain: sudoUser
rDNAttID: cn
showInAdvancedViewOnly: FALSE
adminDisplayName: sudoRole
adminDescription: Sudoer Entries
objectClassCategory: 1
lDAPDisplayName: sudoRole
name: sudoRole
schemaIDGUID:: SQn432lnZ0+ukbdh3+gN3w==
systemOnly: FALSE
objectCategory: CN=Class-Schema,CN=Schema,CN=Configuration,DC=X
defaultObjectCategory: CN=sudoRole,CN=Schema,CN=Configuration,DC=X

我使用的命令是:

ldifde -i -f schema.ActiveDirectory -c dc=X dc=DOMAINNAME,dc=LOCAL

Update2:我创建了一个新问题。谢谢大家的建议。


您可能应该将AD架构修改位作为一个单独的问题发布-我并没有真正了解修改LDAP架构和导入新对象必须完成的所有特定于AD的工作,但是我知道我们有一个这里的很多MS / AD专家都会在活动目录ldap标签下找到它
voretaq7 2011年

Answers:


16

为什么不废弃/etc/sudoers并使用AD (LDAP)作为sudoers存储呢?-更多信息在这里

您已经在根据AD进行身份验证,因此这只是下一个逻辑步骤,它为您提供了一个方便,集中的位置来处理身份验证授权。


据我sudoers所知,我们刚刚完成了AD / Linux / winbind / PAM,并向其中添加了AD组,但我不知道自己从未发现过。一个当之无愧的+1。
jscott 2011年

@jscott最大的缺点是很多sudo软件包没有编译LDAP,因此您可能必须自己动手。我从FreeBSD端口构建sudo,我们已经有了pam_ldap的LDAP依赖关系,所以这对我来说并没有什么麻烦的:-)
voretaq7 2011年


3

您可以在sudoers中定义组...并将这些组从中央身份验证存储库中提取...如Active Directory。我喜欢将域管理员放在我的sudoers文件中。节省了很多麻烦。


2

如果要搜索用于修改sudoers文件的API,则可以将Augeas与Sudoers镜头配合使用。它与Puppet很好地集成在一起,但是您也可以在您自己的脚本中使用它(绑定很多)。

例如,请参见此答案


0

嗯!这是一个痛苦。另一种方法是使用cssh命令执行此操作,该命令将允许您一次打开多个窗口。如果您在小窗口(空白的空白窗口)上键入内容,您会发现您的键入内容正在所有窗口中传播。我建议您备份suoders文件,并使用visudo命令更新sudoers。如果任何不喜欢的sudoer文件,visudo都会告诉您更正该文件。

干杯

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.