Bagaimana Anda menetapkan persyaratan (seperti panjang minimum) pada kata sandi?

18

Apakah ada cara untuk mengatur persyaratan kode sandi minimum, seperti panjang minimum, persyaratan alfanumerik kasus campuran dan setidaknya 1 simbol dalam kode sandi, dan menegakkannya saat perubahan kode sandi?

Thomas Ward
sumber

Jawaban:

21

Kompleksitas kata sandi di Ubuntu dikendalikan oleh PAM. Sayangnya, PAM "biasanya Unix" seperti dalam pendekatannya. Berarti menyebar konfigurasi melalui sejumlah besar file yang sangat membingungkan.

File yang mengontrol kompleksitas kata sandi adalah:

/etc/pam.d/common-password

Ada garis:

password [success=1 default=ignore] pam_unix.so obscure sha512

Yang mendefinisikan aturan dasar untuk kompleksitas kata sandi. Anda dapat menambahkan penggantian panjang minimum dengan mengubahnya ke:

password [success=1 default=ignore] pam_unix.so obscure sha512 minlen=12

atau apa pun minimum yang Anda inginkan. Seperti yang Anda lihat, defaultnya sudah mendefinisikan beberapa aturan ketidakjelasan dasar. Aturan dasar ini dapat dilihat di:

man pam_unix

Cari "tidak jelas".

Ada sejumlah besar modul pam yang dapat diinstal.

apt-cache search libpam-

Harus tunjukkan pada mereka.

Anda perlu memburu dokumentasi untuk mereka, saya khawatir. Tetapi "cracklib" adalah tambahan yang umum.

PEMBARUAN: Saya seharusnya menunjukkan bahwa parameter "tidak jelas" default termasuk tes untuk kompleksitas berdasarkan kata sandi sebelumnya dan kesederhanaan (panjang, jumlah jenis karakter yang berbeda). Contoh di halaman manual menunjukkan cracklib beraksi. Instal libpam_cracklib untuk membuatnya bekerja.

Juga, setelah Anda menentukan apa yang harus diubah, perubahannya sama pada file lain sehingga Anda dapat menerapkan pemeriksaan kata sandi yang sama (atau berbeda) untuk SSH dan aplikasi lainnya.

Julian Knight
sumber
Menurut man pam_unix, panjang minimum kata sandi default adalah 6 karakter jika Anda mencari minlen.
Timo
ini tidak berfungsi untuk ubuntu 18.04 - bahkan dengan pengaturan ini saya dapat memasukkan kata sandi yang saya inginkan (pendek, palindrome, ..) - Saya hanya perlu mengulangi kata sandi seperti 4x :(
xhudik
Ketika Anda mengatakan "tidak berhasil", tidak jelas apa yang Anda maksud. Apakah Anda berarti bahwa itu tidak bekerja tapi itu mengulangi password singkat 4 kali adalah semacam "bypass" - jika demikian, hormat, Anda salah, yang masih kode sandi yang kuat. Kalau tidak, bisakah Anda menjelaskan?
Julian Knight
1

Nilai kata sandi dikontrol dalam file

/etc/pam.d/common-password

Untuk informasi lebih lanjut tentang cara memodifikasi file, lihat pam_unix manpage

Mitch
sumber
1
Anda telah mencantumkan pam_unix (5), halaman yang benar adalah pam_unix (8) linux.die.net/man/8/pam_unix . Bahkan, versi online dari halaman manual, untuk beberapa alasan sepertinya tidak mencantumkan bagian penting pada parameter "tidak jelas" - yang saya sertakan dalam jawaban saya. Jika Anda melakukan man pam_unix, Anda akan dapat melihatnya.
Julian Knight
1
@JulianKnight Terima kasih atas komentarnya. Saya memperbaiki tautan :)
Mitch
1

Modul PAM pra-instal memungkinkan Anda mengatur persyaratan dasar dengan mempertimbangkan kompleksitas. Ada modul bagus yang merupakan penerus modul pam_cracklib - pam_pwquality. Untuk menginstalnya ketik berikut ini

apt-get install libpam-pwquality

maka biasakanlah dengan yang satu ini

man pam_pwquality

terutama dengan bagian "Opsi".

Sekarang Anda dapat mengedit kata sandi umum di /etc/pam.d/

vi /etc/pam.d/common-password

temukan baris yang berisi pernyataan "kata sandi diperlukan pam_pwquality.so" berikut dan setelah pam_pwquality.so lampirkan opsi Anda seperti ini

password        requisite         pam_pwquality.so minlen=16 ucredit=-4 retry=3

yang merupakan kependekan dari "ukuran minimum kata sandi adalah 16 karakter, di mana minimum 4 dari mereka adalah huruf besar. Pengguna yang diminta untuk kata sandi 3 kali.

pam_pwquality memungkinkan Anda membuat persyaratan kata sandi yang jauh lebih kompleks dalam kombinasi dengan modul lain seperti pam_pwhistory. Semoga berhasil

Piotr Kowalczyk
sumber