Atualizar o arquivo de múltiplos sudoers

8

Temos vários servidores Linux que se autenticam em um domínio do Active Directory. Para um grupo no AD, quero adicionar uma lista de comandos que podem ser executados como root usando o sudo. Eu posso obviamente ssh-in para cada computador e atualizar o arquivo sudoers - mas isso levará algum tempo. Além disso, o login root não é permitido. Portanto, logins sem senha só funcionarão para usuários não-root.

Existe uma maneira rápida de atualizar o arquivo sudoers para cada computador Linux de uma só vez? Estou pensando em um script Perl ou Python com algumas habilidades de administração do sistema aqui.

Atualização: Obrigado veroteq7 e Shane Madden. Eu tinha pensado em implantar o cfengine em um ponto - mas não temos isso em execução atualmente. Decidimos que usar o LDAP seria a melhor solução. Estou recebendo um erro ao importar o esquema de esquema LDIF.ActiveDirectory para sudo. O erro é "parâmetro não está correto" na linha 144.

Este é o conteúdo da linha 144 em diante:

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

O comando que eu usei é:

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

Update2: criei uma nova pergunta . Obrigado a todos por sugestões.

    
por rchhe 12.12.2011 / 17:10

4 respostas

16

Por que não recalar /etc/sudoers e usar o AD (LDAP) como sua loja de sudoers? - Mais informações aqui .

Você já está se autenticando no AD, portanto, este é apenas o próximo passo lógico e oferece um local conveniente e centralizado para lidar com a autenticação e autorização

.     
por 12.12.2011 / 17:21
15

Que tal uma ferramenta de gerenciamento de configuração? Puppet , Chef , CFEngine , etc?

    
por 12.12.2011 / 17:14
3

Você pode definir grupos em sudoers ... e extrair esses grupos de um repositório de autenticação central ... como o Active Directory. Eu adoro colocar administradores de domínio no meu arquivo sudoers. Poupa muita dor de cabeça.

    
por 12.12.2011 / 17:18
2

Se você estiver pesquisando uma API para modificar seu arquivo sudoers, poderá usar Augeas com a lente Sudoers. Ele se integra muito bem com o Puppet , mas você também pode usá-lo em um script seu (há muitas ligações).

Veja esta resposta , por exemplo.

    
por 12.12.2011 / 20:32

Tags