Jetzt gibt es auch samba-tool user delete, weiß jemand, was der Unterschied zwischen samba-toolund diesen anderen Werkzeugen ( smbpasswdund pdbedit) ist?
Antonio Vinicius Menezes Medei
Antworten:
7
Beide smbpasswdund pdbeditkönnen für die Samba-Benutzerverwaltung verwendet werden.
Beantwortung der Frage: Ab Samba 4 gibt es keinen Unterschied zwischen diesen beiden Befehlen. Beide Befehle arbeiten mit derselben Datei - sei es im smbpasswd- oder tdbsam- Format - und erledigen den Job.
Erweiterung der Antwort:
smbpasswdist der ältere. Es wurde verwendet, um Samba-Anmeldeinformationen zu verwalten, die im gleichnamigen Dateiformat - smbpasswd - gespeichert sind . Der Standardpfad für die Datei in RedHat-basierten Distributionen war /etc/samba/smbpasswd(um es zu unterscheiden: Das Programm selbst, das Dateiformat und die Standarddatei dieses Formats, mit dem das smbpasswdProgramm arbeitet, werden alle als smbpasswd bezeichnet ).
pdbeditkam während des Samba 3-Entwicklungszyklus als Ersatz für smbpasswd. Aus Sicht des Root-Benutzers pdbeditsind alle Operationen möglich, die ausgeführt werden smbpasswdkönnen, sowie eine Obermenge davon (Verwalten der Kontosicherheit und der Richtlinieneinstellungen). Das 'native' Format zum Speichern von Samba-Anmeldeinformationen für pdbeditist tdbsam - Trivial DB-basiertes Kennwortspeicher-Backend. In RedHat-basierten Distributionen lautet der Standarddateipfad /var/lib/samba/private/passdb.tdb.
Das Problem dabei pdbeditist, dass es nur von root verwendet werden kann, während smbpasswdes von normalen Benutzern verwendet werden kann, um ihre Samba-Kennwörter auf ähnliche Weise zu ändern, wie es der passwdBefehl für Linux-Systemkonten tut. Mein Verständnis ist also, dass ab Samba 4 die Aufgabe der Benutzerverwaltung an Nicht-Root-Benutzer übergeben wird pdbeditund smbpasswddort verbleibt, damit diese ihre Kennwörter ändern können (obwohl root weiterhin die smbpasswdSpeicherung von Samba-Anmeldeinformationen auf begrenzte Weise verwalten kann).
Das pdbedit-Tool verwendet die modulare Schnittstelle passdb und ist unabhängig von der Art der verwendeten Benutzerdatenbank (derzeit gibt es smbpasswd, ldap, nis + und tdb und weitere können hinzugefügt werden, ohne das Tool zu ändern).
Standardmäßig (wenn es ohne Argumente ausgeführt wird) wird versucht, das SMB-Kennwort des aktuellen Benutzers auf dem lokalen Computer zu ändern. Dies ähnelt der Funktionsweise des Programms passwd (1). smbpasswd unterscheidet sich von der Funktionsweise des passwd-Programms jedoch darin, dass es nicht setuid root ist, sondern in einem Client-Server-Modus arbeitet und mit einem lokal ausgeführten smbd kommuniziert (8). Damit dies erfolgreich ist, muss der smbd-Daemon auf dem lokalen Computer ausgeführt werden. Auf einem UNIX-Computer werden die verschlüsselten SMB-Kennwörter normalerweise in der Datei smbpasswd (5) gespeichert.
So pbdeditkann eine Vielzahl von Samba - Passwort - Backends manipulieren, während smbpasswdkann nur diese Art von Backend manipulieren.
Mit der aktuellen Version von Samba, die ich unter CentOS 7 installiert habe (4.1.1), zeigen meine Tests, dass beide Befehle sowohl das Dateiformat smbpasswd als auch tdbsam bearbeiten können (möglicherweise smbpasswdAufrufe pdbeditdarunter, wenn es um das Dateiformat tdbsam geht ).
Golem
@ Golem - Ja, ich habe diese mit Samba 3.x geschrieben. Dieses Q ist in seiner aktuellen Form zu vage, da es keine bestimmte Version von Samba herausgreift. 3.x konnte nicht wie auf den Manpages angegeben.
samba-tool user delete
, weiß jemand, was der Unterschied zwischensamba-tool
und diesen anderen Werkzeugen (smbpasswd
undpdbedit
) ist?Antworten:
Beide
smbpasswd
undpdbedit
können für die Samba-Benutzerverwaltung verwendet werden.Beantwortung der Frage: Ab Samba 4 gibt es keinen Unterschied zwischen diesen beiden Befehlen. Beide Befehle arbeiten mit derselben Datei - sei es im smbpasswd- oder tdbsam- Format - und erledigen den Job.
Erweiterung der Antwort:
smbpasswd
ist der ältere. Es wurde verwendet, um Samba-Anmeldeinformationen zu verwalten, die im gleichnamigen Dateiformat - smbpasswd - gespeichert sind . Der Standardpfad für die Datei in RedHat-basierten Distributionen war/etc/samba/smbpasswd
(um es zu unterscheiden: Das Programm selbst, das Dateiformat und die Standarddatei dieses Formats, mit dem dassmbpasswd
Programm arbeitet, werden alle als smbpasswd bezeichnet ).pdbedit
kam während des Samba 3-Entwicklungszyklus als Ersatz fürsmbpasswd
. Aus Sicht des Root-Benutzerspdbedit
sind alle Operationen möglich, die ausgeführt werdensmbpasswd
können, sowie eine Obermenge davon (Verwalten der Kontosicherheit und der Richtlinieneinstellungen). Das 'native' Format zum Speichern von Samba-Anmeldeinformationen fürpdbedit
ist tdbsam - Trivial DB-basiertes Kennwortspeicher-Backend. In RedHat-basierten Distributionen lautet der Standarddateipfad/var/lib/samba/private/passdb.tdb
.Das Problem dabei
pdbedit
ist, dass es nur von root verwendet werden kann, währendsmbpasswd
es von normalen Benutzern verwendet werden kann, um ihre Samba-Kennwörter auf ähnliche Weise zu ändern, wie es derpasswd
Befehl für Linux-Systemkonten tut. Mein Verständnis ist also, dass ab Samba 4 die Aufgabe der Benutzerverwaltung an Nicht-Root-Benutzer übergeben wirdpdbedit
undsmbpasswd
dort verbleibt, damit diese ihre Kennwörter ändern können (obwohl root weiterhin diesmbpasswd
Speicherung von Samba-Anmeldeinformationen auf begrenzte Weise verwalten kann).quelle
Von der pbdedit-Manpage :
Auszug
Während die smbpasswd Manpage :
Auszug
So
pbdedit
kann eine Vielzahl von Samba - Passwort - Backends manipulieren, währendsmbpasswd
kann nur diese Art von Backend manipulieren.quelle
smbpasswd
Aufrufepdbedit
darunter, wenn es um das Dateiformat tdbsam geht ).