Saya memiliki server Samba untuk sekitar 5 pengguna (keamanan = pengguna) dan saya ingin cara bagi para pengguna ini untuk mengubah kata sandi mereka tanpa keterlibatan saya sehingga saya memiliki ide berikut. Apakah ini aman? Apakah ada pendekatan yang lebih baik (seperti yang lebih sederhana). Kami dulu punya SWAT untuk ini tetapi tidak lebih.
Di server: buat pengguna terbatas (/ bin / rbash + PATH ke direktori tunggal)
$ 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
Gagasan di sini adalah bahwa hanya perintah sambpasswd yang dapat dijalankan oleh pengguna pwchange. Akun unix untuk pengguna Samba tidak memiliki kata sandi (mis. Log masuk melalui akun ini tidak diizinkan). Pengguna samba hanya akan dapat menggunakan akun terbatas ini untuk perubahan kata sandi Samba layanan mandiri ... tidak menjelajahi server!
Klien: Ubah kata sandi Samba melalui Terminal atau 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
itu dimaksudkan untuk pengguna dan admin sama untuk mengubah kata sandi mereka ... Itukah yang Anda inginkan?