NT-zu-UNIX-Gruppenzuordnung in Samba 4

NT-zu-UNIX-Gruppenzuordnung in Samba 4

Ich möchte die NT-Gruppe Domain Userseiner anderen UNIX-Gruppe zuordnen als usersauf meinem Samba 4.7.6 Active Directory-Domänencontroller. Der Versuch schlägt jedoch wie folgt fehl:

> net groupmap modify ntgroup='Domain Users' unixgroup='share' type=domain
Could not update group database
[255]

Ich habe gelesen, dass Sie dies jetzt mit Winbind tun können, also habe ich es versucht, aber dann erhalte ich die folgende Fehlermeldung.

> wbinfo --set-gid-mapping=1000,S-1-5-21-...-513
failed to call wbcSetGidMapping: WBC_ERR_NOT_IMPLEMENTED
Could not create or modify gid to sid mapping
[1]

Wie verwaltet man die Gruppenzuordnung von NT zu UNIX in Samba 4 richtig?

BEARBEITEN:Auf der Samba-Mailingliste fand ich jemanden mit einemähnliches Problem, also könnte ich das Problem vielleicht umgehen, indem ich den internen LDAP-Server direkt ändere? So etwas wie:

ldbadd /var/lib/samba/private/sam.ldb.d/metadata.tdb ...

Leider habe ich keine Erfahrung mit LDAP und weiß daher nicht, wie ich es für meinen Anwendungsfall mit einer gültigen LDIF-Datei versorgen kann.

EDIT2:Dank einerBlogbeitrag über Samba 4 Benutzer- und Gruppenverwaltung in LDAPkonnte ich die UNIX-Gruppe bearbeiten, der die NT-Gruppe zugeordnet ist:

> ldbedit -e nano -H /var/lib/samba/private/idmap.ldb '(objectSid=S-1-5-21-1580746459-3543417057-3597883204-513)'

> wbinfo --group-info='Domain Users'
AD.EXAMPLE\domain users:x:100:

> net groupmap list ntgroup='Domain Users'
Domain Users (S-1-5-21-1580746459-3543417057-3597883204-513) -> share

Die richtige Gruppe wird jetzt also von gemeldet net groupmap, wbinfomeldet aber immer noch den alten Wert, sodass sie ihre Daten wahrscheinlich nicht aus dieser Datenbank bezieht. Ich bin nicht sicher, wie wichtig die wbinfoMeldung der richtigen Gruppe für meinen Anwendungsfall ist, aber ich werde sehen, ob ich das auch ändern kann, bevor ich dies als meine Antwort verwende und es als erledigt markiere.

Antwort1

Soweit ich es herausgefunden habe, scheint in Samba 4 kein Tool verfügbar zu sein, mit dem Sie dies ordnungsgemäß konfigurieren können, außer den integrierten LDAP-Server direkt zu bearbeiten.

Das netTool scheint nicht gut mit dem integrierten LDAP-Server zu funktionieren, nur einige Vorgänge sind erfolgreich, z. B. das Auflisten der Gruppenzuordnungen und das Gewähren von Rechten funktionieren, aber das Auflisten der Mitglieder einer Gruppe oder das Ändern der Gruppenzuordnungen funktioniert nicht (wie in meiner Frage zu sehen).

Um die Zuordnung zu ändern, habe ich die folgenden Befehle als Root ausgeführt. Zuerst müssen wir die SID von abrufen Domain Users, da diese für jede Bereitstellung des Samba-Servers eindeutig ist.

root> net groupmap list ntgroup='Domain Users'
Domain Users (S-1-5-21-1580746459-3543417057-3597883204-513) -> users

Anschließend aktualisieren wir den Datensatz des integrierten LDAP-Servers für die SID, indem wir ihn xidNumber: 100mit der beabsichtigten UNIX-GID aktualisieren:

root> ldbedit -e nano -H /var/lib/samba/private/idmap.ldb '(objectSid=S-1-5-21-1580746459-3543417057-3597883204-513)'
# 0 adds  1 modifies  0 deletes

Angenommen, Sie haben es in die GID 250der aufgerufenen UNIX-Gruppe geändert share. In diesem Fall wird beim Aufruf folgende net groupmapGruppe zurückgemeldet share:

root> net groupmap list ntgroup='Domain Users'
Domain Users (S-1-5-21-1580746459-3543417057-3597883204-513) -> share

Allerdings wbinfowird winbinddweiterhin die alte GID gemeldet:

root> wbinfo --group-info='Domain Users'
AD.EXAMPLE\domain users:x:100:

Wir müssen also den Cache-Eintrag für ungültig erklären Domain Users. Nach einigen Experimenten gelang mir dies, indem ich es aufforderte, die aktualisierte GID nachzuschlagen:

root> wbinfo --gid-info 250
AD.EXAMPLE\domain users:x:250:

Was dann auch korrekt zurückgemeldet wird durch --group-info:

root> wbinfo --group-info='Domain Users'
AD.EXAMPLE\domain users:x:250:

verwandte Informationen