วิธีสร้างคีย์ SSH บน Windows, Mac และ Linux


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

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

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

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

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

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

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

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

วิธีใช้ Windows เพื่อสร้างคีย์ SSH

คุณสามารถใช้ Windows เพื่อสร้างคีย์ SSH โดยใช้ไคลเอนต์ OpenSSH ในตัวหรือไคลเอนต์ PuTTY ของบุคคลที่สามที่เป็นที่นิยม หากคุณต้องการใช้อินเทอร์เฟซผู้ใช้แบบกราฟิก (GUI) เพื่อสร้างคีย์ SSH ใหม่ PuTTY เป็นตัวเลือกที่ดีที่สุด หากคุณต้องการใช้ซอฟต์แวร์ในตัวให้ใช้ OpenSSH (ผ่าน Windows PowerShell) แทน

การใช้ OpenSSH ผ่าน Windows PowerShell

  1. หากคุณต้องการใช้ OpenSSH ก่อนอื่นคุณต้องตรวจสอบว่าเปิดใช้งานแล้วก่อน ในการดำเนินการนี้ให้คลิกขวาที่เมนู Start แล้วเลือก การตั้งค่า
  1. ในเมนู การตั้งค่าเลือก แอป>แอปและคุณลักษณะ>คุณสมบัติเพิ่มเติม คอร์ชัน .
    1. ดูเมนู คุณสมบัติเสริมสำหรับรายการ ไคลเอ็นต์ OpenSSHหากไม่มีให้เลือก เพิ่มคุณลักษณะ
      1. เลือกตัวเลือก ไคลเอ็นต์ OpenSSHจากนั้นเลือก ติดตั้งเพื่อติดตั้ง รอสักครู่เพื่อให้ Windows ติดตั้งซอฟต์แวร์ที่จำเป็น หากคุณต้องการใช้ SSH เพื่อเชื่อมต่อกับพีซี Windows ของคุณอย่าลืมเลือกตัวเลือก เซิร์ฟเวอร์ OpenSSHด้วย
        1. เมื่อติดตั้ง OpenSSH แล้วให้คลิกขวาที่เมนู Start และ เลือก Windows PowerShell (ผู้ดูแลระบบ)
          1. ในหน้าต่าง Windows PowerShell ใหม่พิมพ์ ssh-keygenและเลือกปุ่ม enterคีย์ คุณสามารถพิมพ์ตำแหน่งบันทึกใหม่และชื่อไฟล์สำหรับคีย์ของคุณ ณ จุดนี้หรือกด Enterครั้งที่สองเพื่อบันทึกไฟล์ของคุณในช่อง C: \ Users \ user \ .ssh \ โฟลเดอร์ (แทนที่ ผู้ใช้ด้วยไดเรกทอรีผู้ใช้ของคุณเอง)

            เครื่องมือ ssh-keygen จะใช้การเข้ารหัส RSAตามค่าเริ่มต้น แต่คุณสามารถเปลี่ยนไปใช้การเข้ารหัสรูปแบบอื่นได้โดยพิมพ์ ssh-keygen- tmethodแทนโดยแทนที่ methodด้วยหนึ่งในตัวเลือกการเข้ารหัสที่มีให้ (dsa, ecdsa, ed25519, rsa)
            1. ถัดไปคุณจะต้องป้อนข้อความรหัสผ่าน ซึ่งจะเข้ารหัสคีย์ส่วนตัวของคุณบนพีซีของคุณและโดยทั่วไปจะแนะนำแม้ว่าจะไม่จำเป็น คุณสามารถใช้คำหรือวลีที่น่าจดจำ แต่คุณสามารถ ใช้รหัสผ่านที่ปลอดภัย ที่นี่แทนได้ พิมพ์ข้อความรหัสผ่านของคุณแล้วเลือก Enterเพื่อยืนยันหรือปล่อยว่างไว้แล้วเลือก Enterเพื่อเว้นว่างไว้
              1. เมื่อคุณเพิ่มแล้ว ข้อความรหัสผ่านของคุณ Windows จะสร้างคีย์ที่จำเป็นในโฟลเดอร์ C: \ Users \ user \ .ssh \(แทนที่ ผู้ใช้ด้วยชื่อโฟลเดอร์ผู้ใช้ของคุณเอง) หากคุณเลือกใช้ชื่อไฟล์เริ่มต้นไฟล์ id_rsa.pubคือคีย์สาธารณะของคุณในขณะที่ id_rsa(ไม่มีนามสกุล) คือคีย์ส่วนตัวของคุณ เมื่อคุณสร้างคีย์ของคุณแล้วคุณจะต้องย้ายคีย์สาธารณะของคุณ (id_rsa.pub) ไปยังไดเร็กทอรี .sshบนพีซี, Mac หรือเซิร์ฟเวอร์ระยะไกลของคุณ .
              2. การใช้ PuTTY

                ไคลเอ็นต์ PuTTY SSH ที่รู้จักกันดีเป็นไคลเอนต์เริ่มต้นสำหรับผู้ใช้ Windows ส่วนใหญ่ มันมีเครื่องมืออื่น ๆ อีกมากมายสำหรับสร้างการเชื่อมต่อ SSH รวมถึง PuTTYgenซึ่งเป็นเครื่องมือสำหรับสร้างคีย์ SSH ใหม่

                1. ในการใช้ PuTTY เพื่อสร้างคีย์ SSH ของคุณ ดาวน์โหลด PuTTY สำหรับพีซีของคุณ และติดตั้ง เมื่อติดตั้งแล้วให้เปิด PuTTYgen(เครื่องมือสร้าง SSH ที่มีให้) จากเมนูเริ่มเลือก RSAจากตัวเลือก ประเภทของคีย์เพื่อสร้างเลือก สร้างคุณยังสามารถเลือกหนึ่งในตัวเลือกการเข้ารหัสอื่น ๆ ได้ แต่ขั้นตอนด้านล่างอาจแตกต่างกันไป
                  1. ส่วนหนึ่งของกระบวนการสร้างคีย์ของคุณคือการเลื่อนเมาส์ของคุณแบบสุ่ม ใช้เมาส์หรือแทร็กแพดเพื่อดำเนินการนี้ในพื้นที่ด้านล่างแถบความคืบหน้าทันทีจนกว่าจะสร้างคู่คีย์
                    1. หากคุณต้องการเพิ่มข้อความรหัสผ่านให้กับคีย์ของคุณให้พิมพ์ข้อความนี้ใน คีย์ ข้อความรหัสผ่านและกล่อง ยืนยันข้อความรหัสผ่านจากนั้นเลือก บันทึกคีย์สาธารณะและ บันทึกคีย์ส่วนตัวเพื่อบันทึกคีย์ของคุณ คุณยังสามารถเลือกข้อความในช่อง คีย์สาธารณะเพื่อวางลงใน OpenSSH Authorized_keysจากนั้นคลิกขวาและเลือก คัดลอกเพื่อคัดลอกและวางลงในไฟล์ด้วยตนเองได้อีกด้วย
                      1. เมื่อบันทึกคีย์ของคุณแล้วคุณสามารถย้าย คีย์สาธารณะไปยังพีซี, Mac หรือเซิร์ฟเวอร์ระยะไกลของคุณได้ สำหรับ คีย์ส่วนตัวของคุณคุณอาจต้องย้ายสิ่งนี้ไปไว้ในโฟลเดอร์ C: \ Users \ user \ .ssh \ของคุณ (แทนที่ ผู้ใช้ของคุณด้วย ไดเร็กทอรีผู้ใช้ที่ถูกต้อง) เพื่อใช้กับไคลเอ็นต์ SSH ที่คุณต้องการ
                      2. วิธีสร้างคีย์ SSH บน Linux หรือ Mac

                        OpenSSH เป็นชุดเครื่องมือมาตรฐานทองคำสำหรับการจัดการ SSH และเพียง เช่นเดียวกับเวอร์ชัน Windows เครื่องมือ ssh-keygenยังคงเป็นวิธีที่ดีที่สุดในการสร้างคีย์ SSH ใหม่บนคอมพิวเตอร์ Mac หรือ Linux

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

                        1. ในการเริ่มต้นให้เปิดหน้าต่างเทอร์มินัลใหม่บน Linux PC หรือ Mac ของคุณ หากคุณต้องการใช้ Mac เพื่อสร้างคีย์ SSH คุณสามารถเปิดแอพ Terminal โดยใช้ Launchpadขั้นตอนในการเปิดเทอร์มินัลใหม่บน Linux PC จะแตกต่างกันไปขึ้นอยู่กับการแจกจ่ายของคุณ
                          1. ในหน้าต่างเทอร์มินัลใหม่บน Linux PC หรือ Mac ของคุณให้พิมพ์ ssh-keygenแล้วเลือกคีย์ Enterเช่นเดียวกับ ssh-keygenบน Windows เวอร์ชัน Linux และ Mac จะใช้การเข้ารหัส RSA เป็นค่าเริ่มต้น หากคุณต้องการใช้การเข้ารหัสรูปแบบอื่นให้พิมพ์ วิธี ssh-keygen -tแทนที่ วิธีการด้วยรูปแบบการเข้ารหัสที่คุณต้องการใช้ (เช่น dsa, ecdsa, ed25519, rsa)
                            1. ถัดไปคุณจะต้องกำหนดตำแหน่งที่คุณต้องการบันทึกคีย์ SSH ใหม่โดยจะแสดงชื่อไฟล์และตำแหน่งเริ่มต้น ในวงเล็บกลมในหน้าต่างเทอร์มินัล หากคุณต้องการบันทึกคีย์ของคุณไว้ที่อื่นและใช้ชื่อไฟล์อื่นให้พิมพ์ตำแหน่งที่ตั้งและชื่อไฟล์ใหม่ที่นี่จากนั้นเลือกคีย์ Enter
                              1. ถัดไปคุณจะ จำเป็นต้องพิมพ์ข้อความรหัสผ่านเพื่อเข้ารหัสคีย์ส่วนตัวของคุณ (หากคุณต้องการใช้) พิมพ์ข้อความรหัสผ่านของคุณสองครั้งหรือเลือก ป้อนสองครั้งเพื่อเว้นข้อความรหัสผ่านว่างไว้ (แม้ว่าจะไม่แนะนำให้ทำก็ตาม)
                                1. ณ จุดนี้คีย์ SSH ของคุณจะถูกสร้างขึ้นใน บันทึกตำแหน่งที่คุณระบุและใช้ชื่อไฟล์ id_rsaเริ่มต้นสำหรับการเข้ารหัส RSA (id_rsa.pubสำหรับคีย์สาธารณะและ id_rsaสำหรับคีย์ส่วนตัว) คุณจะต้องย้ายคีย์สาธารณะ (id_rsa.pub) ไปยังพีซี, Mac หรือเซิร์ฟเวอร์ระยะไกลเพื่อให้สามารถสร้างการเชื่อมต่อโดยใช้ SSH ได้
                                2. การสร้างการเชื่อมต่อที่ปลอดภัยโดยใช้ SSH

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

                                  การเชื่อมต่อ SSH ที่ปลอดภัยยังสามารถช่วยคุณ หลีกเลี่ยงไฟร์วอลล์ของโรงเรียนหรือที่ทำงาน โดยใช้อุโมงค์ SSH คุณยังสามารถใช้ SSH กับ เชื่อมต่อกับ (และอัปเดต) Raspberry Pi หรือพีซีและเซิร์ฟเวอร์ที่ใช้ Linux อื่น ๆ คุณจะต้องตรวจสอบให้แน่ใจว่าคุณได้เปิดใช้งานเซิร์ฟเวอร์ OpenSSH หากคุณต้องการทำสิ่งนี้บน Windows 10

                                  กระทู้ที่เกี่ยวข้อง:


                                  19.04.2021