Das Kommando smbpasswd pflegt die zwei 32 Byte langen Paßwortfelder in der Datei smbpasswd. Wenn es ähnlich wie das normale passwd-Kommando funktionieren soll, installieren Sie es in /usr/local/samba/bin, oder wo Sie Samba installiert haben.
Bitte beachten Sie, daß ab der Version Samba 1.9.18p4 smbpasswd NICHT mehr setuid root sein darf. Der neue Code prüft dies, und kann nicht mehr als setuid root aufgerufen werden.
smbpasswd funktioniert nun in einem Client-Server Modus, in dem es den lokalen smbd kontaktiert, um das Benutzerpaßwort zu ändern. Dies hat enorme Vorteile:
Sie können smbpasswd folgendermaßen benutzen:
smbpasswd Old SMB password: <altes Paßwort> New SMB Password: <neues Paßwort> Repeat New SMB Password: <neues Paßwort>
Wenn das <alte Paßwort> nicht mit dem aktuellen Wert übereinstimmt, oder die beiden neuen Paßwörter nicht übereinstimmen, dann wird das Paßwort nicht geändert.
Wenn ein normaler Benutzer das Kommando aufruft, kann er nur eigenes Paßwort ändern.
Wenn root das Kommando benutzt, kann optional ein Argument angegeben werden, mit dem der Benutzer benannt wird, dessen Paßwort geändert werden soll. root wird nicht nach dem alten Paßwort des Benutzers gefragt, so daß Paßwörter vorbesetzt werden können. Vergessene Paßwörter können auf diesem Weg auch neu gesetzt werden.
smbpasswd sollte genau so funktionieren wie das normale Kommando passwd. Man sollte sich nicht umgewöhnen müssen.
Wichtig: smbpasswd soll setuid root laufen. Daher bitte ich alle, den Code anzusehen, und ihn auf Sicherheitsprobleme zu untersuchen. Ein setuid-Programm kann eine riesige Sicherheitslücke sein, wenn es nicht vernünftig geschrieben ist. Bitte helfen Sie mit, dieses Programm sicher zu machen, indem Sie alle Probleme, die Sie finden, an den Autor des Programms, Jeremy Allison, weitermelden. Sie erreichen Jeremy unter jallison@whistle.com