Falsche UserID

german

#1

Nach einem Update auf samba4 stimmt die uid der Benutzer nicht mehr. Wenn man smbstatus aufruft sieht man die UserID 3000020 statt den Usernamen. Was kann man hier machen?

smbstatus[code]params.c:pm_process() - Processing configuration file “/etc/samba/base.conf”
lp_load_ex: refreshing parameters
Initialising global parameters
rlimit_max: increasing rlimit_max (1024) to minimum Windows limit (16384)
params.c:pm_process() - Processing configuration file “/etc/samba/smb.conf”
Processing section “[global]”
params.c:pm_process() - Processing configuration file “/etc/samba/base.conf”

Samba version 4.1.0-Debian
PID Username Group Machine

28709 3000020 users 10.10.10.167 (ipv4:10.10.10.167:49197)

Service pid machine Connected at

profiles 28709 10.10.10.167 Fri Jul 4 11:48:37 2014
netlogon 28709 10.10.10.167 Fri Jul 4 11:48:38 2014
sysvol 28709 10.10.10.167 Fri Jul 4 11:48:37 2014
IPC$ 28709 10.10.10.167 Fri Jul 4 11:48:37 2014

Registered MSG_REQ_POOL_USAGE
Registered MSG_REQ_DMALLOC_MARK and LOG_CHANGED
Locked files:
Pid Uid DenyMode Access R/W Oplock SharePath Name Time

28709 3000020 DENY_NONE 0x100081 RDONLY NONE /profiles uvuser.V2 Fri Jul 4 11:48:45 2014
28709 3000020 DENY_NONE 0x100080 RDONLY NONE /profiles . Fri Jul 4 11:48:41 2014
28709 3000020 DENY_NONE 0x100081 RDONLY NONE /profiles . Fri Jul 4 11:48:42 2014
28709 3000020 DENY_ALL 0x16019f RDWR BATCH /profiles uvuser.V2/Neues Textdokument.txt Fri Jul 4 11:48:45 2014[/code]


#2

Hallo,

ich vermute hier ist der initiale idmap Prozess fehlgeschlagen/nicht korrekt gelaufen. Schritte zur Verifikation dieser Vermutung sowie einen Workaround habe ich an [bug]26013[/bug] beschrieben:

[code]# UID und SID im LDAP
root@server-01:~# univention-ldapsearch -xLLL uid=x.y sambaSid uidNumber
dn: uid=x.y,cn=schueler,cn=users,ou=asr,dc=schule,dc=local
uidNumber: 3340
sambaSID: S-1-5-21-1308044329-1928286745-2719287728-7680

Mapping der SID im S4 (xidNumber sollte gleich uidNumber im LDAP sein)

root@server-01:~# ldbsearch -H /var/lib/samba/private/idmap.ldb cn=S-1-5-21-1308044329-1928286745-2719287728-7680 xidNumber

record 1

dn: CN=S-1-5-21-1308044329-1928286745-2719287728-7680
xidNumber: 3000048

returned 1 records

1 entries

0 referrals[/code]

Als workaround die idmap neu generieren:

cp -a /var/lib/samba/private/idmap.ldb /var/lib/samba/private/idmap.ldb_bak /etc/init.d/univention-directory-listener stop /usr/lib/univention-directory-listener/system/samba4-idmap.py --direct-resync /etc/init.d/univention-directory-listener start

Mit freundlichen Grüßen
Janis Meybohm


#3

Hat leider nicht funktioniert.
Beim speichern einer Datei scheint unter uid 3000020 auf die xidNumber ist bei ldbsearch 2006.

[code]root@grgmaster:~# univention-ldapsearch -xLLL uid=uvuser sambaSid uidNumber
dn: uid=uvuser,cn=users,dc=domain,dc=local
uidNumber: 2006
sambaSID: S-1-5-21-3829124807-3984539238-1347413355-1109

root@grgmaster:~# ldbsearch -H /var/lib/samba/private/idmap.ldb cn=S-1-5-21-3829124807-3984539238-1347413355-1109 xidNumber
params.c:pm_process() - Processing configuration file “/etc/samba/base.conf”
params.c:pm_process() - Processing configuration file “/etc/samba/shares.conf”
params.c:pm_process() - Processing configuration file “/etc/samba/shares.conf.d/profiles”
params.c:pm_process() - Processing configuration file “/etc/samba/shares.conf.d/homes”
params.c:pm_process() - Processing configuration file “/etc/samba/local.conf”
GENSEC backend ‘gssapi_spnego’ registered
GENSEC backend ‘gssapi_krb5’ registered
GENSEC backend ‘gssapi_krb5_sasl’ registered
GENSEC backend ‘schannel’ registered
GENSEC backend ‘spnego’ registered
GENSEC backend ‘ntlmssp’ registered
GENSEC backend ‘krb5’ registered
GENSEC backend ‘fake_gssapi_krb5’ registered

record 1

dn: CN=S-1-5-21-3829124807-3984539238-1347413355-1109
xidNumber: 2006

returned 1 records

1 entries

0 referrals[/code]


#4

Hallo,

unter der Annahme dass Sie die idmap auf dem System geprüft haben wo das Problem besteht würde ich jetzt einfach einmal schauen woher die 3000020 kommt bzw. wo sie gespeichert ist. Z.B. einfach mit “univention-s4search --cross-ncs --show-deleted | grep -C 5 ‘: 3000020’”

Mit freundlichen Grüßen
Janis Meybohm