Contents

วิธีสร้างคีย์ SSH บน Linux

ประเด็นที่สำคัญ

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

ใช้คำสั่ง ssh-keygen บนระบบปฏิบัติการ Linux เพื่อสร้างคู่คีย์ SSH และพิจารณาที่จะรวมข้อความรหัสผ่านเพื่อเพิ่มการป้องกัน

การโอนคีย์สาธารณะ SSH ไปยังเซิร์ฟเวอร์ระยะไกลสามารถทำได้สองวิธี ได้แก่ การใช้คำสั่ง ssh-copy-id หรือการแทรกคีย์ด้วยตนเองภายในไฟล์’authorized\_keys’ที่กำหนดบนเซิร์ฟเวอร์

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

คีย์ SSH คืออะไร?

กุญแจสาธารณะและกุญแจส่วนตัวที่เกี่ยวข้อง แบบแรกอาจแชร์กับผู้รับที่กำหนดเพื่อวัตถุประสงค์ในการตรวจสอบสิทธิ์ ในขณะที่แบบหลังจะต้องเป็นความลับและจัดเก็บไว้ในอุปกรณ์ของตนเอง

โปรดอย่าเปิดเผยคีย์ Secure Shell (SSH) ส่วนตัวของคุณแก่บุคคลใดๆ เนื่องจากอาจส่งผลต่อความปลอดภัยของบัญชีของคุณและข้อมูลที่ละเอียดอ่อนที่จัดเก็บไว้ในเซิร์ฟเวอร์ระยะไกล

เมื่อเข้าสู่ระบบ โฮสต์ระยะไกลจะใช้โปรโตคอล Secure Shell (SSH) เพื่อตรวจสอบว่ามีการติดต่อกันระหว่างคีย์การเข้ารหัสสาธารณะและส่วนตัวของคุณหรือไม่ ในกรณีที่พบว่าองค์ประกอบเหล่านี้สอดคล้องกัน แสดงว่าคุณได้รับอนุญาตให้เข้าถึงเครือข่ายระยะไกล การใช้ข้อตกลงคู่คีย์นี้ช่วยให้สามารถสร้างบัญชีผู้ใช้ได้อย่างง่ายดาย ในขณะเดียวกันก็รักษาความลับและความสมบูรณ์ของข้อมูลที่จัดเก็บไว้ในเครือข่ายดังกล่าวไปพร้อมๆ กัน

วิธีสร้างกุญแจรีโมท

หากต้องการสร้างคู่คีย์ SSH ในสภาพแวดล้อม Linux ให้ใช้เทอร์มินัลโดยป้อนคำสั่ง “ssh-keygen” คุณจะถูกขอให้ระบุไดเร็กทอรีสำหรับจัดเก็บข้อมูลและอาจเลือกใช้ข้อความรหัสผ่านเพื่อเพิ่มการป้องกัน หากเลือก วลีนี้จะปรับปรุงมาตรการรักษาความปลอดภัยที่เกี่ยวข้องกับกุญแจของคุณ

โปรดจำไว้ว่าข้อความรหัสผ่านของคุณหากไม่ทำเช่นนั้นจะส่งผลให้ไม่สามารถเข้าถึงบัญชีของคุณโดยใช้รหัสผ่านเฉพาะนั้น

หากคุณเลือกที่จะยกเลิกการป้อนรหัสผ่าน เพียงละเว้นข้อความรหัสผ่านในระหว่างการเข้าสู่ระบบ

/th/images/linux-ssh-key.png

ตามค่าเริ่มต้น ssh-keygen ใช้อัลกอริทึม Ed25519 ซึ่งเพียงพอสำหรับกรณีส่วนใหญ่เนื่องจากมีความปลอดภัยมาก คุณสามารถระบุประเภทของอัลกอริทึมที่คุณต้องการได้โดยใช้แฟล็ก-t โดยปกติคุณไม่จำเป็นต้องทำเช่นนี้ เว้นแต่ว่าเซิร์ฟเวอร์ไม่รองรับอัลกอริธึมใดๆ ก็ตามที่คุณใช้ คุณสามารถอ่าน หน้าคู่มือ ssh-keygen เพื่อเรียนรู้วิธีสร้างคู่คีย์อื่น

รับคีย์ SSH ใหม่ของคุณไปยังเครื่องระยะไกล

ในการโอนคีย์สาธารณะและคีย์ส่วนตัวที่คุณสร้างขึ้นไปยังเซิร์ฟเวอร์ระยะไกล มีสองวิธีในการดำเนินการดังกล่าว

วิธีง่ายๆ วิธีหนึ่งคือการใช้คำสั่ง ssh-copy-id ซึ่งสามารถทำได้โดยการเรียกใช้คำสั่งด้วยชื่อผู้ใช้และชื่อโฮสต์ของบัญชีเซิร์ฟเวอร์ระยะไกล:

 ssh-copy-id [email protected]

โปรดป้อนรหัสผ่านของคุณเนื่องจากจะใช้เพื่อถ่ายโอนคีย์ส่วนตัวของคุณอย่างปลอดภัย

/th/images/ssh-copy-id.png

ขณะนี้คุณจะสามารถเข้าถึงและเข้าสู่ระบบเซิร์ฟเวอร์ที่อยู่ห่างไกลได้

 ssh [email protected] 

หากจำเป็น คุณจะต้องป้อนคีย์สาธารณะของคุณด้วยตนเองโดยการคัดลอกและวางจากไฟล์ที่เกี่ยวข้องซึ่งอยู่ภายในโฟลเดอร์’.ssh’ในโฮมไดเร็กตอรี่ของคุณ โดยทั่วไปไฟล์นี้จะลงท้ายด้วยนามสกุล’.pub’และมีคีย์ที่ได้รับอนุญาตเพื่อวัตถุประสงค์ในการตรวจสอบสิทธิ์ หากต้องการดำเนินการต่อ เพียงเข้าถึงไฟล์’.ssh/authorized\_keys’ที่อยู่บนอุปกรณ์ระยะไกล และสร้างเนื้อหาของไฟล์ดังกล่าวซ้ำอย่างแม่นยำ

/th/images/ssh-authorized-keys.png

เพื่อให้เข้าถึงเซิร์ฟเวอร์ได้สำเร็จผ่าน SSH จำเป็นต้องบันทึกไฟล์ที่ให้มา ตรวจสอบให้แน่ใจว่าไฟล์ดังกล่าวได้จำกัดสิทธิ์ในการอ่านและเขียนสำหรับบัญชีของคุณโดยเฉพาะ เนื่องจากการให้สิทธิ์การเข้าถึงแก่บุคคลที่ไม่ได้รับอนุญาตอาจทำให้ระบบทำงานผิดปกติได้