[Samba-it] problemi su acl in samba 3.6.6

Piviul piviul at riminilug.it
Fri Feb 6 01:22:12 MST 2015


Non so più dove sbattere la testa... continuo a controllare e 
ricontrollare i log di quando l'utente riceve accesso negato e non 
riesco a capire veramente dove sia il problema. Tutto sembra essere a 
posto tranne il fatto che l'utente riceve un accesso negato.

Ma vediamo se qualcuno capisce qualcosa sui log ritornati e sa 
torgliermi qualche dubbio...

Ad esempio adesso sto analizzando un altro log(¹) ottenuto con debug 
class = yes e log level = 0 all:10. L'utente viene riconosciuto essere 
nei seguenti gruppi:

[2015/02/05 16:05:13.770949,  5] 
../libcli/security/security_token.c:63(security_token_debug)
   Security token SIDs (27):
     SID[  0]: S-1-5-21-2943704632-3037471470-1787688681-11006
     SID[  1]: S-1-5-21-2943704632-3037471470-1787688681-513
     SID[  2]: S-1-5-21-2943704632-3037471470-1787688681-11007
     SID[  3]: S-1-5-21-2943704632-3037471470-1787688681-11157
     SID[  4]: S-1-5-21-2943704632-3037471470-1787688681-11535
     SID[  5]: S-1-5-21-2943704632-3037471470-1787688681-11937
     SID[  6]: S-1-5-21-2943704632-3037471470-1787688681-11543
     SID[  7]: S-1-5-21-2943704632-3037471470-1787688681-11551
     SID[  8]: S-1-5-21-2943704632-3037471470-1787688681-11527
     SID[  9]: S-1-5-21-2943704632-3037471470-1787688681-11163
     SID[ 10]: S-1-1-0
     SID[ 11]: S-1-5-2
     SID[ 12]: S-1-5-11
     SID[ 13]: S-1-5-32-545
     SID[ 14]: S-1-22-1-21006
     SID[ 15]: S-1-22-2-10513
     SID[ 16]: S-1-22-2-21007
     SID[ 17]: S-1-22-2-21157
     SID[ 18]: S-1-22-2-21535
     SID[ 19]: S-1-22-2-21937
     SID[ 20]: S-1-22-2-21543
     SID[ 21]: S-1-22-2-21551
     SID[ 22]: S-1-22-2-21527
     SID[ 23]: S-1-22-2-100000
     SID[ 24]: S-1-22-2-100001
     SID[ 25]: S-1-22-2-100003
     SID[ 26]: S-1-22-2-10001
    Privileges (0x               0):
    Rights (0x               0):
[2015/02/05 16:05:13.771506,  5] 
auth/token_util.c:527(debug_unix_user_token)
   UNIX token of user 21006
   Primary group is 21007 and contains 12 supplementary groups
   Group[  0]: 10513
   Group[  1]: 21007
   Group[  2]: 21157
   Group[  3]: 21535
   Group[  4]: 21937
   Group[  5]: 21543
   Group[  6]: 21551
   Group[  7]: 21527
   Group[  8]: 100000
   Group[  9]: 100001
   Group[ 10]: 100003
   Group[ 11]: 10001

Qui già ho un dubbio: mi sembra di capire che samba riesce ad ottenere 
correttamente la lista dei sid a cui l'utente appartiene e cerca di 
tradurli in gid... ma mentre i sid del dominio a cui l'utente 
apparteneva sono 9 quando li traduce in gid ne perde uno che è proprio 
il gruppo utile per poter accedere a quella share: 
S-1-5-21-2943704632-3037471470-1787688681-11163

che corrisponde:

wbinfo --sid-to-gid S-1-5-21-2943704632-3037471470-1787688681-11163
21163

Più avanti poi infatti troviamo

[2015/02/05 16:05:14.027940, 10, class=acls] 
smbd/posix_acls.c:719(load_inherited_info)
   load_inherited_info: ret = 18446744073709551615 for file qualita
[2015/02/05 16:05:14.028020, 10, class=acls] 
smbd/posix_acls.c:725(load_inherited_info)
   load_inherited_info: Error Permission denied
[2015/02/05 16:05:14.028124, 10, class=acls] 
smbd/posix_acls.c:2537(canonicalise_acl)
   canonicalise_acl: Access ace entries before arrange :
[2015/02/05 16:05:14.028215, 10, class=acls] 
smbd/posix_acls.c:2550(canonicalise_acl)
   canon_ace index 0. Type = allow SID = S-1-1-0 other SMB_ACL_OTHER 
ace_flags = 0x0 perms ---
[2015/02/05 16:05:14.028309, 10, class=acls] 
smbd/posix_acls.c:2550(canonicalise_acl)
   canon_ace index 1. Type = allow SID = 
S-1-5-21-2943704632-3037471470-1787688681-11809 gid 21809 
(DOMINIOCSA\qualita) SMB_ACL_GROUP ace_flags = 0x0 perms rwx
[2015/02/05 16:05:14.091726, 10, class=acls] 
smbd/posix_acls.c:2550(canonicalise_acl)
   canon_ace index 2. Type = allow SID = 
S-1-5-21-2943704632-3037471470-1787688681-11163 gid 21163 
(DOMINIOCSA\utenti) SMB_ACL_GROUP ace_flags = 0x0 perms r-x
[2015/02/05 16:05:14.135064, 10, class=acls] 
smbd/posix_acls.c:2550(canonicalise_acl)
   canon_ace index 3. Type = allow SID = 
S-1-5-21-2943704632-3037471470-1787688681-512 gid 10512 
(DOMINIOCSA\domain admins) SMB_ACL_GROUP ace_flags = 0x0 perms rwx
[2015/02/05 16:05:14.147920, 10, class=acls] 
smbd/posix_acls.c:2550(canonicalise_acl)
   canon_ace index 4. Type = allow SID = 
S-1-5-21-2943704632-3037471470-1787688681-512 gid 10512 
(DOMINIOCSA\domain admins) SMB_ACL_GROUP_OBJ ace_flags = 0x0 perms ---
[2015/02/05 16:05:14.148841, 10, class=acls] 
smbd/posix_acls.c:2550(canonicalise_acl)
   canon_ace index 5. Type = allow SID = 
S-1-5-21-2943704632-3037471470-1787688681-1202 uid 11202 
(DOMINIOCSA\admin) SMB_ACL_USER_OBJ ace_flags = 0x0 perms rwx

che sono proprio i SID sulle acl della share a cui l'utente sta tentando 
di accedere...

Ecco dopo tanto penare l'unica anomalia che ho trovato nei log è quella 
summenzionata: samba correttamente trova i sid a cui appartiene l'utente 
ma quando li traduce in rid ne perde qualcuno e se fra quei qualcuno c'è 
proprio quello necessario riceverà accesso negato... altro non mi viene 
in mente.

Piviul

(¹) Il log completo di questo esempio è log.sandro0507 e lo trovate come 
sempre qui: 
https://drive.google.com/open?id=0B45RiL7e2_bcfnlJTmh1XzlNSmF1WHZidnFQV1pyOXZ3YlNCSGxjZi1NSWx6VDFxVTl2QkE&authuser=0



More information about the samba-it mailing list