Ich habe einen Samba-Server für ungefähr 5 Benutzer (Sicherheit = Benutzer) und möchte, dass diese Benutzer ihre Passwörter ohne meine Beteiligung ändern können, sodass ich die folgende Idee habe. Ist das sicher? Gibt es einen besseren (wie bei einem einfacheren) Ansatz? Wir hatten SWAT dafür, aber nicht mehr.
Auf dem Server: Erstellen Sie einen eingeschränkten Benutzer (/ bin / rbash + PATH in ein einzelnes Verzeichnis).
$ sudo adduser --shell /bin/rbash pwchange
$ cat /etc/passwd
pwchange:x:1001:1001:pwchange,,,:/home/pwchange:/bin/rbash
$ sudo vi /home/pwchange/.bashrc
Add:
export PATH=/usr/local/pwchange
$ sudo ln -s /usr/bin/smbpasswd /usr/local/pwchange/smbpasswd
Diese Idee hier ist, dass nur der Befehl sambpasswd vom Benutzer pwchange ausgeführt werden kann. Die Unix-Konten für die Samba-Benutzer haben keine Passwörter (dh Anmeldung über diese Konten nicht erlaubt). Die Samba-Benutzer können dieses eingeschränkte Konto nur für Änderungen des Self-Service-Samba-Passworts verwenden ... ohne den Server zu erkunden!
Client: Ändern Sie das Samba-Passwort über Terminal oder Putty (Windows).
user1@A3700:~$ ssh pwchange@192.168.1.14
pwchange@V220:~$ smbpasswd -U user1
Old SMB password:
New SMB password:
Retype new SMB password:
Password changed for user user1
smbpasswd
es war für Benutzer und Administratoren gleichermaßen gedacht , ihre Passwörter zu ändern ... Ist es das, was Sie wollen?