Saya menginstal samba di server saya dan saya mencoba menulis skrip untuk memberi saya dua langkah untuk menambahkan pengguna, misalnya:
adduser username
smbpasswd -a username
smb.conf
Status saya :
# This boolean parameter controls whether Samba attempts to sync the Unix
# password with the SMB password when the encrypted SMB password in the
# passdb is changed.
unix password sync = yes
Bacaan lebih lanjut membawa saya ke pdbedit
halaman manual yang menyatakan:
-a This option is used to add a user into the database. This com-
mand needs a user name specified with the -u switch. When adding
a new user, pdbedit will also ask for the password to be used.
Example: pdbedit -a -u sorce
new password:
retype new password
Note
pdbedit does not call the unix password syncronisation script if
unix password sync has been set. It only updates the data in the
Samba user database.
If you wish to add a user and synchronise the password that im-
mediately, use smbpasswd’s -a option.
Jadi ... sekarang saya memutuskan untuk mencoba menambahkan pengguna dengan smbpasswd
:
Percobaan pertama, pengguna unix masih belum ada:
root@raspberrypi:/home/pi# smbpasswd -a newuser
New SMB password:
Retype new SMB password:
Failed to add entry for user newuser.
Percobaan kedua, ada pengguna unix:
root@raspberrypi:/home/pi# useradd mag
root@raspberrypi:/home/pi# smbpasswd -a mag
New SMB password:
Retype new SMB password:
Added user mag.
# switch to user pi, and try to switch to mag
root@raspberrypi:/home/pi# su pi
pi@raspberrypi ~ $ su mag
Password:
su: Authentication failure
Jadi, sekarang saya bertanya pada diri sendiri:
- bagaimana cara saya membuat kata sandi samba disinkronkan dengan kata sandi unix?
- di mana kata sandi samba disimpan?
Adakah yang bisa membantu mencerahkan saya?
debian
samba
password-management
Oz123
sumber
sumber
/var/lib/samba/
, saya percaya kata sandi ada disecrets.tdb
tetapi saya tidak yakin. Adapun pertanyaan Anda sebelumnya, saya ragu ada cara mudah.Jawaban:
Ya ... tautan yang hilang adalah:
Jadi, setelah menginstal paket ini berfungsi seperti yang diharapkan. Memori jangka panjang Internet terkadang hanya membawa sebagian informasi. Jadi untuk mengatasi ini saya menerbitkan di sini tautan yang benar bagaimana menyinkronkan kata sandi samba dengan kata sandi unix , dan juga pengujian saya sendiri.
Saya harap ini membantu orang lain.
perbarui 2017:
libpam-smbpass
sudah usang . Sepertinya apa yang menggantikannyapam_winbindd
. Anda dapat menginstal paketlibpam-winbind
untuk mendapatkannya. Namun ini, masih tidak menyinkronkan kata sandi samba dengan kata sandi unix Anda. Alih-alih itu memungkinkan Anda untuk mengautentikasi unix dengan server Windows Authentication (AD). Anda dapat menemukan info tentang itu di sini: https://wiki.samba.org/index.php/Setting_up_Samba_as_an_Active_Directory_Domain_Controllersumber
libpam-smbpass
di sistem Debian 9.1 lagi dan itu juga tidak berfungsi untuk saya. Bagaimana mungkin pertanyaan sederhana ini telah ditanyakan berkali-kali dan masih belum ada jawaban?libpam-winbind
dapat ditemukan di CentOS7.Ingin mengomentari jawaban sebelumnya tetapi tidak dapat melakukannya karena kurangnya poin reputasi. Mencoba meletakkan konten lengkap pada jawaban ini tetapi tidak bisa seperti yang dikatakannya itu seperti spam. di sini adalah akses ke konten lengkap di mesin wayback, dan berikut ini adalah versi singkat poin utama:
Sinkronisasi kata sandi Unix dan Samba pada Debian Etch
Instal paket-paket berikut:
Unix -> Samba
Untuk memperbarui kata sandi Samba setiap kali pengguna mengubah kata sandi Unix mereka, ubah
/etc/pam.d/common-password: from
untuk
Mengubah "wajib" menjadi "syarat" untuk pam_unix akan memastikan bahwa jika perubahan kata sandi Unix gagal, eksekusi plugin segera berakhir.
Agar ini berfungsi, pengguna harus sudah memiliki akun Samba, dan kata sandi Samba mereka harus cocok dengan kata sandi Unix mereka. Karena ini belum tentu demikian, kita harus berubah
/etc/pam.d/common-auth: from
untuk
Ini akan membuat pengguna Samba, jika belum ada, dan mengubah kata sandi itu menjadi kata sandi Unix, setiap kali pengguna login menggunakan SSH atau layanan lain yang menggunakan otentikasi sistem default (umum-auth).
Anda akan melihat pesan Ditambahkan pengguna saat masuk menggunakan SSH dengan akun yang belum memiliki akun Samba.
Karena ini juga akan membuat akun Samba untuk root, Anda mungkin ingin menonaktifkan akses root di Samba (Debian Etch menonaktifkannya secara default):
/etc/samba/smb.conf:
Peringatan : Ini tidak akan berfungsi jika pengguna masuk melalui SSH atau layanan lain tanpa menggunakan kata sandi (misalnya dengan menggunakan otentikasi kunci publik / pribadi). Dalam hal ini, PAM tidak akan memiliki kata sandi teks biasa, yang diperlukan untuk membuat kata sandi Samba.
Perhatian : Ketika Anda memodifikasi kata sandi umum untuk juga memerlukan pembaruan kata sandi Samba, setiap pengguna yang masuk saat ini tidak akan dapat mengubah kata sandi mereka menggunakan "passwd" sampai mereka masuk kembali, kecuali mereka sudah memiliki akun Samba yang ada dengan kata sandi yang sama dengan ke kata sandi Unix mereka.
Samba -> Unix
Kami menginstruksikan Samba untuk menggunakan PAM saat mengubah kata sandi:
/etc/samba/smb.conf:
Restart Samba menggunakan /etc/init.d/samba restart.
Konfigurasikan PAM untuk mendukung perubahan kata sandi oleh Samba dengan menambahkan @include common-password:
/etc/pam.d/samba:
Ini akan menggunakan mekanisme yang sama untuk mengubah kata sandi saat menggunakan Samba seperti saat menggunakan "passwd". Ini berarti akan memerlukan pembaruan kata sandi Unix sebelum mencoba mengubah kata sandi Samba.
Menciptakan pengguna baru
gunakan chpasswd untuk menghindari kesalahan:
sumber
pam_smbpass.so
. Bisakah kamu membantuku? tautan: stackoverflow.com/questions/52932070/...