ฉันต้องการเพิ่มผู้ใช้ใน Red Hat Linux ที่จะไม่ใช้รหัสผ่านสำหรับการเข้าสู่ระบบ แต่ใช้รหัสสาธารณะสำหรับ ssh แทน นี่จะเป็นบรรทัดคำสั่ง
ฉันต้องการเพิ่มผู้ใช้ใน Red Hat Linux ที่จะไม่ใช้รหัสผ่านสำหรับการเข้าสู่ระบบ แต่ใช้รหัสสาธารณะสำหรับ ssh แทน นี่จะเป็นบรรทัดคำสั่ง
คำตอบ:
เริ่มต้นด้วยการสร้างผู้ใช้:
useradd -m -d /home/username -s /bin/bash username
สร้างคู่กุญแจจากลูกค้าที่คุณจะใช้ssh
จาก:
ssh-keygen -t dsa
คัดลอกกุญแจสาธารณะ/home/username/.ssh/id_dsa.pub
ไปยังโฮสต์ RedHat/home/username/.ssh/authorized_keys
ตั้งค่าการอนุญาตที่ถูกต้องในไฟล์บนโฮสต์ RedHat:
chown -R username:username /home/username/.ssh
chmod 700 /home/username/.ssh
chmod 600 /home/username/.ssh/authorized_keys
ตรวจสอบให้แน่ใจว่าเปิดใช้งานการรับรองความถูกต้องของรหัสสาธารณะบนโฮสต์ RedHat:
grep PubkeyAuthentication /etc/ssh/sshd_config
#should output:
PubkeyAuthentication yes
หากไม่ใช่ให้เปลี่ยนคำสั่งนั้นเป็นใช่และรีสตาร์ทsshd
เซอร์วิสบนโฮสต์ RedHat
จากไคลเอนต์เริ่มการssh
เชื่อมต่อ:
ssh username@redhathost
ควรมีลักษณะโดยอัตโนมัติสำหรับคีย์ในid_dsa
~/.ssh/
คุณยังสามารถระบุไฟล์ระบุตัวตนโดยใช้:
ssh -i ~/.ssh/id_dsa username@redhathost
บน Ubuntu คุณสามารถเพิ่มผู้ใช้ด้วย:
adduser --disabled-password <username>
จากนั้นสร้าง.ssh/authorized_keys
ไฟล์ในโฮมไดเรกทอรีของพวกเขาด้วยกุญแจสาธารณะของพวกเขา
คุณสามารถใช้:
usermod --lock <username>
จากหน้าคน:
ล็อครหัสผ่านของผู้ใช้ สิ่งนี้ทำให้ '!' หน้ารหัสผ่านที่เข้ารหัสไว้ปิดใช้งานรหัสผ่านอย่างมีประสิทธิภาพ คุณไม่สามารถใช้ตัวเลือกนี้กับ -p หรือ -U หมายเหตุ: หากคุณต้องการล็อคบัญชี (ไม่เพียง แต่เข้าถึงด้วยรหัสผ่าน) คุณควรตั้งค่า EXPIRE_DATE เป็น 1