วิธีสร้าง SSH Key สำหรับระบบปฏิบัติการ Linux

SSH Key



วิธีสร้าง-SSH-Key-สำหรับระบบปฏิบัติการ-Linux

สวัสดีครับ บทความในตอนนี้ผมจะมาแนะนำวิธีการสร้าง SSH Key และวิธีการนำไปติดตั้งไว้ในเครื่องเซิร์ฟเวอร์ที่เราใช้งานมาเริ่มกันเลยครับ

1. สร้าง key pair บนเครื่องไคลเอนท์ที่เราใช้งานเพื่อล็อกอินเข้าสู่เครื่องเซิร์ฟเวอร์ด้วยคำสั่ง ssh-keygen โดยค่าเริ่มต้น ssh-keygen จะสร้าง key pair ด้วยการเข้ารหัสแบบ RSA ขนาด 2048 บิต

2. หลังจากใช้คำสั่ง ssh-keygen จะได้ผลลัพธ์ดังรูป


3. กดปุ่ม Enter เพื่อเซฟ key pair ลงในไดเรคทอรี่ย่อย .ssh/ ของไดเรกทอรี่ home ที่ใช้งานอยู่หรือจะเปลี่ยนไปเซฟเก็บไว้ที่อื่นก็แล้วแต่สะดวกครับ

ถ้ามีการสร้าง ssh key pair ไว้ก่อนหน้าแล้ว ระบบจะแจ้งเตือนว่ามีไฟล์ key pair อยู่แล้วจะเขียนไฟล์ทับของเดิมหรือไม่ ถ้าเลือกที่จะเขียนทับเราจะไม่สามารถใช้งาน key pair เดิมได้และจะไม่สามารถกู้คืนได้อีกด้วย ดังนั้นต้องกระทำด้วยความระมัดระวัง

4. ระบบจะถามให้ระบุ passphrase หรือจะเลือกไม่ระบุก็ได้ แต่ถ้าหากระบุจะเป็นการเพิ่มระดับความปลอดภัยขึ้นไปอีกหนึ่งสเต็ปเพื่อป้องกันคนอื่นใช้เครื่องเราในการล็อกอินเข้าสู่เครื่องเซิร์ฟเวอร์นั่นเอง จะได้ผลลัพธ์ดังรูป


5. ขั้นตอนถัดไปจะเป็นการคัดลอก key pair ไปติดตั้งไว้ในเครื่องเซิร์ฟเวอร์ ซึ่ง key ที่ว่านี้จะเป็น public key ของเครื่องไคลเอนท์เรานั่นเอง ด้วยการใช้คำสั่ง ssh-copy-id username@remote_host ที่เครื่องไคลเอนท์ จะได้ผลลัพธ์ดังรูป


6. พิมพ์ yes แล้วกดปุ่ม Enter หลังจากนั้นระบบจะทำการสแกนหาไฟล์ public key ภายในไดเรคทอรี่ของแอคเคาท์เครื่องไคลเอนท์ที่ใช้งานอยู่ เมื่อระบบหา key เจอแล้วจะถามรหัสของเครื่องเซิร์ฟเวอร์ดังรูป


7. ใส่รหัสผ่านของเครื่องเซิร์ฟเวอร์แล้วกดปุ่ม Enter จากนั้นระบบจะทำการคัดลอกไฟล์ id_rsa.pub ไปยังไดเรคทอรี่ .ssh/authorized_keys จะได้ผลลัพธ์ดังรูป


8. ที่เครื่องไคลเอนท์ทดสอบล็อกอินเข้าเครื่องเซิร์ฟเวอร์ด้วยคำสั่ง ssh username@remote_host จะได้ผลลัพธ์ดังรูป


9. ระบบจะถาม passphrase ที่ได้ระบุไว้ก่อนหน้า ก็จะสามารถเข้าใช้งานเครื่องเซิร์ฟเวอร์ได้ดังรูป


10. ขั้นตอนเพิ่มเติมคือการยกเลิกการล็อกอินเข้าเครื่องเซิร์ฟเวอร์ด้วยรหัสผ่านอย่างเดียวเพื่อเพิ่มความปลอดภัย ด้วยคำสั่ง sudo vi /etc/ssh/sshd_config เมื่อไฟล์ถูกเปิดขึ้นมาแล้ว ให้แก้ไขการตั้งค่า PasswordAuthentication no แล้วเซฟไฟล์

11. ให้ทำการรีสตาร์ทเซอร์วิส sshd ด้วยคำสั่ง sudo systemctl restart sshd เพื่อให้ระบบนำไฟล์คอนฟิกที่แก้ไขไปปรับใช้ หลังจากนี้เซิร์ฟเวอร์ก็จะอนุญาตให้ผู้ใช้งานที่มี ssh key เท่านั้นที่จะสามารถล็อกอินเข้ามาใช้งานได้

สำหรับบทความในตอนนี้ขอจบไว้เพียงเท่านี้ สวัสดีครับ

By : อรรถกร ทองคำชุม

โปรไฟล์ Blog โปรไฟล์ E-portfolio

หมวดหมู่ : เทคโนโลยี

ผู้เข้าชม 13524 ครั้ง 2022-11-24 09:28:03

Comment แสดงความคิดเห็น