วิธีตั้งค่าการเข้าสู่ระบบแบบไม่ใช้รหัสผ่าน SSH ใน Debian 10
SSH (Secure Shell) เป็นเครื่องมือยอดนิยมและใช้กันอย่างแพร่หลายสำหรับการเข้าสู่ระบบระยะไกลและการถ่ายโอนไฟล์ผ่านเครือข่ายที่ไม่ปลอดภัย ซึ่งใช้การเข้ารหัสเพื่อรักษาความปลอดภัยการเชื่อมต่อระหว่างไคลเอนต์และเซิร์ฟเวอร์
อ่านเพิ่มเติม: วิธีตั้งค่าการตรวจสอบสิทธิ์แบบสองปัจจัยสำหรับ SSH บน Linux
แม้ว่าจะเป็นไปได้ที่จะใช้ SSH ด้วย ID ผู้ใช้และรหัสผ่านธรรมดาเป็นข้อมูลรับรอง แต่ขอแนะนำมากกว่านั้นคือให้ใช้การตรวจสอบสิทธิ์แบบใช้คีย์ (หรือการตรวจสอบสิทธิ์คีย์สาธารณะ) เพื่อรับรองความถูกต้องของโฮสต์ซึ่งกันและกัน และสิ่งนี้เรียกว่า SSH โดยไม่ต้องใช้รหัสผ่าน เข้าสู่ระบบ.
ความต้องการ:
- ติดตั้งเซิร์ฟเวอร์ขั้นต่ำ Debian 10 (Buster)
เพื่อให้เข้าใจสิ่งนี้ได้ง่ายขึ้น ฉันจะใช้เซิร์ฟเวอร์สองตัว:
- 192.168.56.100 – (tecmint) – เซิร์ฟเวอร์ CentOS 7 ที่ฉันจะเชื่อมต่อกับ Debian 10
- 192.168.56.108 – (tecmint) – ระบบ Debian 10 ของฉันที่มีการเข้าสู่ระบบโดยไม่ต้องใช้รหัสผ่าน
ในบทความนี้ เราจะแสดงวิธีการติดตั้งการตั้งค่าเซิร์ฟเวอร์ OpenSSH การเข้าสู่ระบบ SSH โดยไม่ต้องใช้รหัสผ่านบนระบบปฏิบัติการ Debian 10 Linux
การติดตั้งเซิร์ฟเวอร์ OpenSSH บน Debian 10
ก่อนที่คุณจะสามารถกำหนดค่าการเข้าสู่ระบบแบบไม่ใช้รหัสผ่าน SSH บนระบบ Debian 10 ได้ คุณจะต้องติดตั้งและกำหนดค่าแพ็คเกจเซิร์ฟเวอร์ OpenSSH บนระบบโดยใช้คำสั่งต่อไปนี้
sudo apt-get update
sudo apt-get install openssh-server
ต่อไป ให้เริ่มบริการ sshd ทันที จากนั้นตรวจสอบว่าบริการนั้นเปิดใช้งานอยู่หรือไม่โดยใช้คำสั่ง systemctl ดังต่อไปนี้
sudo systemctl start sshd
sudo systemctl status sshd
จากนั้นเปิดใช้บริการ sshd เพื่อเริ่มต้นโดยอัตโนมัติเมื่อบูตระบบ ทุกครั้งที่ระบบรีบูตดังนี้
sudo systemctl start sshd
ตรวจสอบบริการ sshd ซึ่งตามค่าเริ่มต้นจะรับฟังบนพอร์ต 22 โดยใช้ คำสั่ง ss ดังที่แสดง หากคุณต้องการคุณสามารถเปลี่ยนพอร์ต SSH ดังที่แสดง: วิธีเปลี่ยนพอร์ต SSH ใน Linux
sudo ss -tlpn
การตั้งค่าคีย์ SSH บน CentOS 7 (192.168.56.100)
ขั้นแรก คุณต้องสร้างคู่คีย์ SSH (คีย์สาธารณะและคีย์ส่วนตัว) บนระบบ CentOS 7 จากที่ที่คุณจะเชื่อมต่อกับเซิร์ฟเวอร์ Debian 10 โดยใช้ ยูทิลิตี้ ssh-keygen ดังต่อไปนี้
ssh-keygen
จากนั้นป้อนชื่อที่มีความหมายสำหรับไฟล์หรือปล่อยให้เป็นค่าเริ่มต้น (ซึ่งควรเป็นเส้นทางแบบเต็มตามที่แสดงในภาพหน้าจอ มิฉะนั้นไฟล์จะถูกสร้างขึ้นในไดเร็กทอรีปัจจุบัน) เมื่อระบบถามถึงรหัสผ่าน เพียงกด “enter ” และปล่อยรหัสผ่านว่างไว้ โดยปกติไฟล์คีย์จะถูกจัดเก็บไว้ในไดเร็กทอรี ~/.ssh
ตามค่าเริ่มต้น
การคัดลอกคีย์สาธารณะไปยังเซิร์ฟเวอร์ Debian 10 (192.168.56.108)
หลังจากสร้างคู่คีย์แล้ว คุณต้องคัดลอกคีย์สาธารณะไปยังเซิร์ฟเวอร์ Debian 10 คุณสามารถใช้ยูทิลิตี ssh-copy-id ดังที่แสดง (คุณจะถูกถามรหัสผ่านสำหรับผู้ใช้ที่ระบุบนเซิร์ฟเวอร์)
ssh-copy-id -i ~/.ssh/debian10 [email
คำสั่งข้างต้นจะล็อกอินเข้าสู่เซิร์ฟเวอร์ Debian 10 และคัดลอกคีย์ไปยังเซิร์ฟเวอร์ และกำหนดค่าให้อนุญาตการเข้าถึงโดยการเพิ่มลงในไฟล์ authorization_keys
ทดสอบการเข้าสู่ระบบแบบไม่ใช้รหัสผ่าน SSH จาก 192.168.20.100
เมื่อคัดลอกคีย์ไปยังเซิร์ฟเวอร์ Debian 10 แล้ว คุณต้องทดสอบว่าการเข้าสู่ระบบแบบไม่ใช้รหัสผ่าน SSH ทำงานหรือไม่ โดยเรียกใช้คำสั่ง SSH ต่อไปนี้ ตอนนี้การเข้าสู่ระบบควรเสร็จสิ้นโดยไม่ต้องขอรหัสผ่าน แต่หากคุณสร้างข้อความรหัสผ่าน คุณจะต้องป้อนก่อนจึงจะได้รับอนุญาตให้เข้าถึงได้
ssh -i ~/.ssh/debian10 [email
ในคู่มือนี้ เราได้แสดงวิธีการติดตั้งเซิร์ฟเวอร์ OpenSSH ด้วยการเข้าสู่ระบบแบบไม่ใช้รหัสผ่าน SSH หรือการตรวจสอบสิทธิ์โดยใช้คีย์ (หรือการตรวจสอบสิทธิ์คีย์สาธารณะ) ใน Debian 10 หากคุณต้องการถามคำถามที่เกี่ยวข้องกับหัวข้อนี้หรือแบ่งปันแนวคิดใดๆ ให้ใช้แบบฟอร์มคำติชมด้านล่าง