Temos um ActiveDirectory de onde obtemos nossos usuários.
Então a autenticação na máquina linux funciona em pam.
Conseguimos que esta parte funcione até agora, mas precisamos que todos os usuários façam parte do grupo local "users" .
Isso funciona tanto quanto eu entendo com o mapeamento de grupo.
Meus SIDs são:
SID for local machine MYSERVER is: S-1-5-21-1487948860-3705201071-3703638889
SID for domain MYDOMAIN is: S-1-5-21-1960408961-115176313-682003330
Eu criei o mapeamento de grupo com:
myserver:~# net groupmap add ntgroup="Domain Users" rid=513 unixgroup=users
O mapeamento de grupo é assim:
myserver:~# net groupmap list -v
Domain Users
SID : S-1-5-21-1487948860-3705201071-3703638889-513
Unix gid : 100
Unix group: users
Group type: Domain Group
Comment : Domain Unix group
Administrators
SID : S-1-5-32-544
Unix gid : 10029
Unix group: BUILTIN\administrators
Group type: Local Group
Comment :
Users
SID : S-1-5-32-545
Unix gid : 12929
Unix group: BUILTIN\users
Group type: Local Group
Comment :
Mas quando eu faço login como um usuário do AD, não estou nos usuários do grupo. Todos os grupos AD são mostrados corretamente e também os grupos "BUILTIN \ users" e "BUILTIN \ administrator" são mostrados, mas nenhum grupo "users"
Eu também tentei
myserver:~# net groupmap delete ntgroup="Domain Users"
myserver:~# net groupmap delete ntgroup="Users"
myserver:~# net groupmap add ntgroup="Users" rid=545 unixgroup=users
Mas isso parece não ter efeito (smbd restart, winbindd restart executado).
O usuário ainda está no grupo "BUILTIN \ users" e não tem entrada para "usuários"
Acho que perdi algumas etapas importantes da configuração, mas não sei o que isso poderia ser.
Qualquer ajuda é muito apreciada!
Usamos o samba versão 3.6.3 em um kernel SLES 11 3.0.76
== EDIT == 07.04.2016 15:34
Eu tentei mapear dois grupos não padrão.
Grupo AD é grp_production, grupo linux local deve ser jogos
myserver:~# net groupmap add ntgroup="grp_production" rid=20443 unixgroup=games
O resultado é
myserver:~# net groupmap list -v
..
grp_production (S-1-5-21-1960408961-115176313-682003330-20443) -> games
..
Então eu faço o login como usuário (membro do grp_production do grupo AD) na máquina linux.
myserver:~# groups | grep games
Nenhum grupo de jogos para encontrar :-(
== EDIT 08.04.2016 07:39 ==
O único erro que encontrei nos logs foi em /var/log/samba/log.winbindd-idmap
[2016/04/07 13:54:25.146170, 1] ../librpc/ndr/ndr.c:284(ndr_print_function_debug)
wbint_Sid2Gid: struct wbint_Sid2Gid
in: struct wbint_Sid2Gid
dom_name : NULL
sid : *
sid : S-1-5-21-1960408961-115176313-682003330-28693
[2016/04/07 13:54:25.146221, 10] winbindd/idmap_util.c:234(idmap_sid_to_gid)
idmap_sid_to_gid: sid = [S-1-5-21-1960408961-115176313-682003330-28693], domain = ''
[2016/04/07 13:54:25.146247, 10] winbindd/idmap.c:507(idmap_backends_sid_to_unixid)
idmap_backends_sid_to_unixid: domain = '', sid = [S-1-5-21-1960408961-115176313-682003330-28693]
[2016/04/07 13:54:25.146267, 10] winbindd/idmap.c:376(idmap_find_domain)
idmap_find_domain called for domain ''
[2016/04/07 13:54:25.146290, 1] winbindd/idmap.c:209(idmap_init_domain)
invalid range '100' specified for domain '*'
[2016/04/07 13:54:25.146308, 10] winbindd/idmap_util.c:260(idmap_sid_to_gid)
idmap_backends_sid_to_unixid failed: NT_STATUS_NONE_MAPPED
[2016/04/07 13:54:25.146330, 10] lib/gencache.c:183(gencache_set_data_blob)
Adding cache entry with key = IDMAP/SID2GID/S-1-5-21-1960408961-115176313-682003330-28693 and timeout = Thu Apr 7 13:56:25 2016
Eu 'grepped' log de todos os "jogos" e "grp_production" sem nenhum resultado.