Computador Linux (Debian) em um domínio do Windows Active Directory, o administrador do AD deve ter permissão de root após o login

4

Eu consegui juntar minha máquina Debian (Squeeze) a um Active Directory (MS Windows 2008 R2 Server) existente. Tudo funciona bem, eu posso fazer o login usando contas do Active Directory (NTP, Kerberos, PAM, Samba e Winbind estão todos configurados e parecem estar em boa forma).

Pergunta: Desejo mapear grupos do Active Directory para grupos do UNIX da seguinte forma

  • Admins. do domínio (RID 512) - > raiz (gid 0)
  • Usuários do Domínio (RID 513) - > Comercial (gid 100)

Eu gostaria de alcançar dois objetivos:

  1. Diretórios e arquivos criados por qualquer usuário (incluindo pastas base criadas automaticamente) devem ter gid = 100

    No momento gid = 10000, o gid tomado automaticamente pelo winbind é obtido

  2. Os membros do grupo Domain-Admins devem ter privilégios de root após o login (alternativamente: ser membro do grupo wheel)

    No momento, os membros do grupo Domain-Admins não são membros de gid = 0 nem do grupo wheel (não existe em minha instalação Debian, mas isso é outro problema).

Para alcançar esses objetivos, tentei definir os seguintes mapeamentos

  • net groupmap add ntgroup="Administradores-domeninos" unixgroup = root rid = 512 type = domain
  • net groupmap adicionar ntgroup="Domänen-Benutzer" unixgroup = usuários rid = 513 type = domain

Esta abordagem não foi bem sucedida, nem fornecer o SID em vez do RID ajudou. Para cada abordagem, certifiquei-me de que o cache do winbind estava vazio (net cache flush) e os serviços samba e winbind foram reiniciados.

Alguma recomendação? Seu suporte é altamente apreciado! (e eu sei que existem alguns gurus do Debian por aí que resolveram esse cenário ;-))

Atenciosamente, Wolfram

Além disso, algumas informações solicitadas pelo usuário syneticon-dj:

SIDs são codificados

root@S15:~# net getdomainsid
SID for local machine S15 is: S-1-5-21-aaaaaaaaaa-bbbbbbbbbb-ccccccccc
SID for domain ITSL is: S-1-5-21-dddddddddd-eeeeeeeeee-ffffffffff
root@S15:~# net groupmap add ntgroup="Domänen-Admins" unixgroup=root rid=512 type=domain
Successfully added group Domänen-Admins to the mapping db as a domain group
root@S15:~# net groupmap add ntgroup="Domänen-Benutzer" unixgroup=users rid=513 type=domain
Successfully added group Domänen-Benutzer to the mapping db as a domain group
root@S15:~# net groupmap list
Domänen-Admins (S-1-5-21-aaaaaaaaaa-bbbbbbbbbb-ccccccccc-512) -> root
Domänen-Benutzer (S-1-5-21-aaaaaaaaaa-bbbbbbbbbb-ccccccccc-513) -> users

Para mim, parece que as contas de grupo erradas estão mapeadas. Quero dizer, os SIDs mapeados correspondem ao SID da máquina local em vez do SID do domínio. De qualquer forma, isso não funciona, ou seja, a meta # 1 não é alcançada.

Não encontrei nenhuma opção que imponha a escolha do domínio SID. Por isso, limpei o mapa de grupo e adicionei o mapeamento com os SIDs do grupo diretamente da seguinte forma:

root@S15:~# net groupmap add ntgroup="Domänen-Benutzer" unixgroup=users sid="S-1-5-21-dddddddddd-eeeeeeeeee-ffffffffff-513" type=domain
Successfully added group Domänen-Benutzer to the mapping db as a domain group
root@S15:~# net groupmap list
Domänen-Benutzer (S-1-5-21-dddddddddd-eeeeeeeeee-ffffffffff-513) -> users

Essa abordagem também não funciona, ou seja, a meta # 1 não é alcançada.

Como solicitado, aqui estão os trechos de smb.conf :

[global]
    workgroup = ITSL
    realm = itsl.local
    security = ADS
    # This machine is a member server, hence no authentication and we leave the following line commented
    ; domain logons = yes

    idmap uid = 10000-20000
    idmap gid = 10000-20000
    template shell = /bin/bash

    ;   winbind enum groups = yes
    ;   winbind enum users = yes

    winbind use default domain = yes

Conforme solicitado, veja os trechos da configuração do PAM :

Debian Squeeze padrões, nada mudou por mim.

root@S15:/etc/pam.d# grep 'winbind' *
common-account:account   [success=1 new_authtok_reqd=done default=ignore] pam_winbind.so
common-auth:auth         [success=1 default=ignore]                       pam_winbind.so krb5_auth krb5_ccache_type=FILE cached_login try_first_pass
common-password:password [success=1 default=ignore]                       pam_winbind.so use_authtok try_first_pass
common-session:session   optional                                         pam_winbind.so
common-session-noninteractive:session   optional                          pam_winbind.so

Atenciosamente, Wolfram

    
por WLanger 18.05.2011 / 20:59

1 resposta

1

Você não deve tentar mapear a uid para a raiz nem o gid desta maneira.

Se você der privilégios de administrador para o sistema, você pode usar o sudo. Você pode usar o Grupo do Windows para conceder privilégios de sudo (Admins. Do Domínio).

    
por 28.06.2011 / 11:43