มีวิธีใดในการตั้งค่าข้อกำหนดรหัสผ่านขั้นต่ำเช่นความยาวต่ำสุดข้อกำหนดของตัวอักษรผสมตัวเลขและตัวอักษรผสมอย่างน้อย 1 สัญลักษณ์ในรหัสผ่านและบังคับใช้เมื่อมีการเปลี่ยนแปลงรหัสผ่าน?
มีวิธีใดในการตั้งค่าข้อกำหนดรหัสผ่านขั้นต่ำเช่นความยาวต่ำสุดข้อกำหนดของตัวอักษรผสมตัวเลขและตัวอักษรผสมอย่างน้อย 1 สัญลักษณ์ในรหัสผ่านและบังคับใช้เมื่อมีการเปลี่ยนแปลงรหัสผ่าน?
คำตอบ:
ความซับซ้อนของรหัสผ่านใน Ubuntu ถูกควบคุมโดย PAM น่าเสียดายที่ PAM เป็น "ปกติ Unix" เหมือนในแนวทางของมัน หมายความว่ามันกระจายการกำหนดค่าผ่านทางไฟล์ที่มีความสับสนจำนวนมาก
ไฟล์ที่ควบคุมความซับซ้อนของรหัสผ่านคือ:
/etc/pam.d/common-password
มีเส้น:
password [success=1 default=ignore] pam_unix.so obscure sha512
ซึ่งกำหนดกฎพื้นฐานสำหรับความซับซ้อนของรหัสผ่าน คุณสามารถเพิ่มการลบล้างความยาวขั้นต่ำได้โดยเปลี่ยนเป็น:
password [success=1 default=ignore] pam_unix.so obscure sha512 minlen=12
หรืออะไรก็ตามที่คุณต้องการ อย่างที่คุณเห็นค่าเริ่มต้นกำหนดกฎความสับสนขั้นพื้นฐานไว้แล้ว กฎพื้นฐานเหล่านี้สามารถเห็นได้ใน:
man pam_unix
ค้นหา "obscure"
มีโมดูลแพมจำนวนมากที่สามารถติดตั้งได้
apt-cache search libpam-
ควรแสดงให้พวกเขาเห็น
คุณจะต้องตามล่าหาเอกสารให้พวกเขาฉันกลัว แต่ "cracklib" เป็นส่วนเสริมทั่วไป
UPDATE: ฉันควรจะชี้ให้เห็นว่าพารามิเตอร์ "คลุมเครือ" เริ่มต้นรวมถึงการทดสอบความซับซ้อนตามรหัสผ่านก่อนหน้าและความเรียบง่าย (ความยาวจำนวนอักขระประเภทต่าง ๆ ) ตัวอย่างใน manpage แสดงให้เห็นถึงการทำงานของ cracklib ติดตั้ง libpam_cracklib เพื่อให้ใช้งานได้
นอกจากนี้เมื่อคุณแก้ไขสิ่งที่เปลี่ยนแปลงแล้วการเปลี่ยนแปลงจะเหมือนกันในไฟล์อื่น ๆ เพื่อให้คุณสามารถบังคับใช้การตรวจสอบรหัสผ่านเดียวกัน (หรือที่แตกต่างกัน) สำหรับ SSH และแอปพลิเคชันอื่น ๆ
ค่ารหัสผ่านถูกควบคุมในไฟล์
/etc/pam.d/common-password
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีแก้ไขไฟล์โปรดดูที่pam_unix manpage
man pam_unix
คุณจะสามารถเห็นมัน
โมดูล PAM ที่ติดตั้งล่วงหน้าช่วยให้คุณสามารถตั้งค่าข้อกำหนดพื้นฐานภายใต้ความซับซ้อน มีโมดูลที่ดีซึ่งเป็นตัวต่อของโมดูล pam_cracklib คือ - pam_pwquality เพื่อที่จะติดตั้งมันพิมพ์ต่อไปนี้
apt-get install libpam-pwquality
จากนั้นทำความคุ้นเคยกับอันนี้
man pam_pwquality
โดยเฉพาะอย่างยิ่งกับส่วน "ตัวเลือก"
ตอนนี้คุณสามารถแก้ไขรหัสผ่านทั่วไปใน /etc/pam.d/
vi /etc/pam.d/common-password
ค้นหาบรรทัดที่มีคำสั่ง "รหัสผ่านที่จำเป็นต่อไปนี้ pam_pwquality.so" และหลัง pam_pwquality.so แนบตัวเลือกของคุณเช่นนี้
password requisite pam_pwquality.so minlen=16 ucredit=-4 retry=3
ซึ่งย่อมาจาก "ขนาดต่ำสุดของรหัสผ่านคือ 16 ตัวอักษรโดยอย่างน้อย 4 ตัวเป็นตัวพิมพ์ใหญ่ให้ผู้ใช้ป้อนรหัสผ่าน 3 ครั้ง
pam_pwquality ช่วยให้คุณสร้างความต้องการรหัสผ่านที่ซับซ้อนมากขึ้นร่วมกับโมดูลอื่น ๆ เช่น pam_pwhistory โชคดี
man pam_unix
ที่ MINLENGTH รหัสผ่านเริ่มต้นคือ 6minlen
ตัวอักษรหากคุณค้นหา