วิธีการเปลี่ยน / ปิดการใช้งานการทดสอบความซับซ้อนของรหัสผ่านเมื่อเปลี่ยนรหัสผ่าน?


48

ฉันรู้ว่ามันเป็นความคิด "ไม่ดี" ฉันรู้ว่ามันไม่ปลอดภัยฉันรู้ ฉันค้นหาเครือข่ายเพื่อหาคำตอบและสิ่งที่ฉันเห็นคือเสียงหอนที่ไม่ดี แต่ฉันชอบใช้ Linux เพราะมันทำให้ฉันสร้างระบบที่ฉันต้องการและชอบที่จะใช้ ในตอนท้ายของบทนำ

ฉันพยายามเปลี่ยนรหัสผ่าน:

ruslan:~% passwd
Changing password for ruslan.
(current) UNIX password:
Enter new UNIX password:
Retype new UNIX password:
You must choose a longer password

ถ้าฉันลองsudo passwd ruslanแล้วฉันสามารถตั้งรหัสผ่านใด ๆ ที่ฉันต้องการดังนั้นฉันไม่จำเป็นต้องตรวจสอบความซับซ้อนของรหัสผ่านสำหรับ passwd ในระบบของฉัน

หลังจาก googling ฉันพบว่าควรมีโมดูลPAM pam_cracklib ที่ทดสอบรหัสผ่านเพื่อความซับซ้อนและสามารถกำหนดค่าได้ แต่การตั้งค่ารหัสผ่าน PAM ของฉันไม่รวม pam_cracklib:

% cat /etc/pam.d/passwd | grep '^[^#]'
@include common-password
% cat /etc/pam.d/common-password | grep '^[^#]'
password    [success=1 default=ignore]  pam_unix.so obscure sha512
password    requisite           pam_deny.so
password    required            pam_permit.so
password    optional    pam_gnome_keyring.so 

ฉันเดาว่า pam_unix ทำการทดสอบนี้ ... โอ๊ะโอ ... พวกฉันเสร็จสิ้นการเขียนประโยคนี้ฉันได้รับการตรัสรู้และพิมพ์ลงman pam_unixในเทอร์มินัลที่ฉันพบตัวเลือกที่จำเป็นสำหรับโมดูล pam_unix

ฉันเพิ่งลบตัวเลือกปิดบังและเพิ่ม minlen = 1 และตอนนี้ฉันมีความสุข ดังนั้นตอนนี้ฉันมีบรรทัดนี้ใน/etc/pam.d/common-password:

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

และฉันสามารถตั้งรหัสผ่านใด ๆ ที่ฉันต้องการ

ฉันตัดสินใจที่จะเก็บโพสต์นี้ไว้สำหรับคนที่อาจต้องการโซลูชันนี้ด้วย ขอโทษและขอบคุณ


ฉันไม่สามารถตอบคำถามของฉันเองเป็นเวลา 8 ชั่วโมงหลังจากที่ถามว่าจะรอ :)
rslnx

ฉันแค่ต้องการเปลี่ยน pwd ของฉันเป็น 123 ฉันไม่สามารถทำเช่นนั้นกับ passwd พยายาม "sudo passwd <user_name>" และใช้งานได้อย่างมีเสน่ห์ ไม่ต้องการส่วนที่เหลือของ mumbo-jumbo ขอบคุณสำหรับส่วนนั้น! :)
zeFree

@ ไม่เสียค่าใช้จ่ายจุดสำคัญของโซลูชันของฉันคือการอนุญาตให้ผู้ใช้ใด ๆ (ไม่มีสิทธิ์ sudo) สามารถใช้รหัสผ่านแบบง่าย ๆ ได้
rslnx

1
เกริ่นนำ ฉันมีแล็ปท็อป windows ที่ใช้รอบ cpu 50% เพื่อปกป้องฉันจากไวรัส คาดเดาอะไร ไม่ต้องการไวรัสใด ๆ คอมพิวเตอร์ไร้ค่าอยู่แล้ว ดังนั้น .. ลินุกซ์ช่วยให้เราทำสิ่งที่เราต้องการ ฉันอยู่หลังไฟร์วอลล์และคอมพิวเตอร์ไม่ได้ออกจากบ้าน รหัสผ่านสั้น? ได้โปรด
javadba

@rslnx ฉันคิดว่าเมื่อคุณโพสต์คำถามของคุณมันมีตัวเลือกให้ตอบทันที ฉันคิดว่าการหน่วงเวลา 8 ชั่วโมงนั้นจะเกิดขึ้นก็ต่อเมื่อคุณไม่ได้โพสต์คำถาม Q / A ในเวลาเดียวกัน
jrh

คำตอบ:


53

ตกลงฉันจะตอบคำถามของฉัน :)

ฉันพบว่าpam_unixโมดูลทำการตรวจสอบความซับซ้อนของรหัสผ่านและสามารถกำหนดค่าได้

man pam_unix:

   minlen=n
       Set a minimum password length of n characters. The default value is
       6. The maximum for DES crypt-based passwords is 8 characters.

   obscure
       Enable some extra checks on password strength. These checks are
       based on the "obscure" checks in the original shadow package. The
       behavior is similar to the pam_cracklib module, but for
       non-dictionary-based checks.

การแก้ไข:
แก้ไขบรรทัดในpam_unixโมดูลใน/etc/pam.d/common-passwordไฟล์เป็น:

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

อนุญาตให้คุณตั้งรหัสผ่านใด ๆ ที่มีความยาวน้อยที่สุด 1


รายละเอียดที่เกี่ยวข้องกับความซับซ้อนของรหัสผ่าน: askubuntu.com/questions/244115/…
Kevin Bowen

11

หากเป็นการปิดครั้งเดียวการใช้คำสั่ง passwd เป็นรูทคุณสามารถตั้งรหัสผ่านง่าย ๆ สำหรับผู้ใช้เพียงป้อนค่าที่ต้องการ

sudo su && passwd username

จากนั้นป้อนรหัสผ่านสองครั้งที่พรอมต์


1
เขาหมายถึงการทำเช่นsudo su && passwd usernameนั้น Linux จะอนุญาตให้คุณใช้รหัสผ่านที่คุณต้องการ
ผู้ใช้

7

เปิดไฟล์กำหนดค่ารหัสผ่านทั่วไปสำหรับการแก้ไข

sudo gedit /etc/pam.d/common-password

แสดงความคิดเห็นบรรทัดนี้:

#password   [success=2 default=ignore]  pam_unix.so obscure use_authtok try_first_pass sha512

แสดงความคิดเห็นบรรทัดนี้มิฉะนั้นการตั้งค่ารหัสผ่านจะขอให้คุณส่งตัวอักษรตัวพิมพ์ใหญ่ / เล็กผสมกัน:

#password   requisite           pam_passwdqc.so enforce=everyone max=18 min=disabled,8,8,1,1 retry=2 similar=deny

ตอนนี้เพียงแค่เพิ่มบรรทัดนี้ลงในไฟล์เดียวกัน:

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

สิ่งนี้ควรทำ ...


FYI ไม่มีบรรทัด pam_passwdqc.so ในการติดตั้งเซิร์ฟเวอร์เริ่มต้นของฉันที่ 14.04 อาจมีบางคน (ผู้ดูแลระบบหรือไม่) เพิ่มไว้ในวัตถุประสงค์หรือไม่ ;)
Tomofumi
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.