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:
-
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
-
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