ฉันพยายามทำตามคำแนะนำ:
ติดตั้งอัตโนมัติ:
...
ข้อมูลผู้ใช้:
Write_files:
- เนื้อหา: |
cloud_init_has_run
เส้นทาง: /cloud_init_flag
ผู้ใช้:
- ค่าเริ่มต้น
- ชื่อ: คิม
รหัสผ่าน: <แฮช>
เชลล์: /bin/bash
ล็อกรหัสผ่าน: เท็จ
ssh_pwauth: จริง
chpasswd: { หมดอายุ: เท็จ }
sudo: ALL=(ทั้งหมด) NOPASSWD:ทั้งหมด
กลุ่ม: ผู้ใช้ ผู้ดูแลระบบ
หรือกำหนดให้ผู้ใช้ติดตั้งอัตโนมัติในระดับเดียวกัน
ผู้ใช้:
- ค่าเริ่มต้น
- ชื่อ: คิม
รหัสผ่าน: <แฮช>
เชลล์: /bin/bash
ล็อกรหัสผ่าน: เท็จ
ssh_pwauth: จริง
chpasswd: { หมดอายุ: เท็จ }
sudo: ALL=(ทั้งหมด) NOPASSWD:ทั้งหมด
กลุ่ม: ผู้ใช้ ผู้ดูแลระบบ
ติดตั้งอัตโนมัติ:
ผู้ใช้ทั้งสองไม่ทำงาน แต่ write_files ใช้งานได้จริง ls /บ้าน/
ไม่แสดง kim แต่แสดงเฉพาะผู้ใช้เริ่มต้นของฉันในข้อมูลประจำตัว
ใครช่วยอธิบายวิธีทำให้ผู้ใช้บล็อกทำงานได้ไหม
อัปเดต
ดูเหมือนว่า passwd จะไม่ทำงาน ฉันลองทำตามคำสั่งเพื่อสร้างแฮช:
mkpasswd -m sha512crypt -s
mkpasswd --method=SHA-512 --rounds=4096 -s
ฉันเพิ่งใส่แฮชเอาต์พุตไปที่ รหัสผ่าน: "<hash>"
แต่การเข้าสู่ระบบมักจะล้มเหลวด้วยรหัสผ่านที่ไม่ถูกต้อง ฉันสามารถเข้าสู่ระบบด้วยรหัส ssh ของฉันเท่านั้น มีความคิดว่าจะระบุรหัสผ่านที่นี่ได้อย่างไร
ใน /var/log/cloud-init.log เราสามารถเห็น:
2021-09-30 15:18:39,580 - __init__.py[DEBUG]: การเพิ่มผู้ใช้ testuser
2021-09-30 15:18:39,580 - subp.py[DEBUG]: เรียกใช้คำสั่งที่ซ่อนอยู่เพื่อป้องกันล็อกสตริงอินพุต/เอาต์พุตที่ละเอียดอ่อน: ['useradd', 'testuser', '--comment', 'testuser', '- -groups', 'ผู้ใช้,sudo,admin,cdrom,dip,plugdev,lpadmin,lxd,libvirt', '--รหัสผ่าน', 'ข้อมูลปกปิด', '--shell', '/bin/bash', '-m ']
2021-09-30 15:18:39,606 - subp.py[DEBUG]: เรียกใช้คำสั่ง ['passwd', '-l', 'testuser'] พร้อมรหัสส่งคืนที่อนุญาต [0] (shell=False, capture=True)
2021-09-30 15:18:39,619 - util.py[DEBUG]: อ่านจาก /etc/sudoers (quiet=False)
ในที่สุดฉันก็ค้นพบว่าเหตุใดจึงไม่ทำงาน /etc/shadow ผิดพลาดอย่างใด:
ผู้ใช้ทดสอบ:!$6$02H0ZRN.QfL7$G8/Jh7bZNlIEPAsGKZOBUog89a559t/LSWXAyqncOpJytlls8hsGHQgeBdWGoYhedZ0v7bsVNFlRf/S0Tusug1:18900:0:99999:7:::
พิเศษ !
ทำให้เกิดความล้มเหลว ลบออกเพื่อให้ใช้งานได้ นี่เป็นข้อบกพร่องหรือมีบางอย่าง
ธงที่ถูกต้องคือ: lock_passwd: เท็จ
แทน ล็อกรหัสผ่าน: เท็จ