Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> ซอฟต์แวร์ >> ซอฟต์แวร์

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

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

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

SSH Keys คืออะไร?

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

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

Public และ Private SSH Keys เป็นสองส่วนของเหมือนกัน—โดยไม่มี Private Key คุณไม่สามารถยืนยันตัวตนกับ Public Key และสร้างการเชื่อมต่อได้ และโดยไม่มี Public Key Private Key จะไม่มีประโยชน์ คุณสามารถสร้าง SSH Keys ใหม่บน Windows, Mac และ Linux แล้วนำ Public Key ไปวางบนอุปกรณ์ระยะไกล

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

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

วิธีใช้ Windows สร้าง SSH Keys

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

ใช้ OpenSSH ผ่าน Windows PowerShell

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

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

ใช้ PuTTY

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

  1. ดาวน์โหลด PuTTY สำหรับ PC และติดตั้ง เมื่อติดตั้งแล้ว ให้เปิด PuTTYgen (เครื่องมือสร้าง SSH ที่รวมอยู่) จากเมนู Start เลือก RSA จากตัวเลือก Type of key to generate แล้วเลือก Generate คุณสามารถเลือกรูปแบบเข้ารหัสอื่นได้ แต่อาจมีขั้นตอนที่แตกต่าง
  1. ส่วนหนึ่งของการสร้างคีย์คือการเคลื่อนเมาส์แบบสุ่ม ใช้เมาส์หรือทรัคแพดทำในพื้นที่ใต้แถบความคืบหน้าจนกว่าคู่คีย์จะสร้างเสร็จ
  1. หากต้องการเพิ่มพาสเฟรซให้กับคีย์ ให้พิมพ์ในกล่อง Key passphrase และ Confirm passphrase แล้วเลือก Save public key และ Save private key เพื่อบันทึกคีย์ คุณสามารถเลือกข้อความในกล่อง Public key for pasting into OpenSSH authorized_keys คลิกขวาแล้วเลือก Copy เพื่อคัดลอกและวางในไฟล์ด้วยตนเอง
  1. เมื่อบันทึกคีย์แล้ว คุณสามารถย้าย Public Key ไปยัง PC, Mac หรือเซิร์ฟเวอร์ระยะไกล สำหรับ Private Key คุณอาจต้องย้ายไปที่โฟลเดอร์ C:\Users\user\.ssh\ (แทน user ด้วยไดเรกทอรี่ผู้ใช้ที่ถูกต้อง) เพื่อใช้กับไคลเอนต์ SSH ที่คุณชอบ

วิธีสร้าง SSH Keys บน Linux หรือ Mac

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

ผลคือ เครื่องมือ GUI สำหรับสร้าง SSH Keys น้อยมากและไม่แนะนำนัก เนื่องจากเครื่องมือ OpenSSH รวมอยู่ใน Mac ทุกเครื่องและเกือบทุก Linux Distribution ขั้นตอนด้านล่างควรทำงานได้กับทั้งสองแพลตฟอร์ม

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

การสร้างการเชื่อมต่อที่ปลอดภัยด้วย SSH

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

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