ความปลอดภัย

วิธีใช้ SSH Key Authentication เพื่อเข้าถึงเซิร์ฟเวอร์อย่างปลอดภัย

  • 27 ใช้เวลาอ่านไม่กี่นาที
  • ทีมงาน Hostragons
วิธีใช้ SSH Key Authentication เพื่อเข้าถึงเซิร์ฟเวอร์อย่างปลอดภัย

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

SSH Key คืออะไร ทำไมต้องใช้?

การยืนยันตัวตนแบบ SSH Key คือมาตรฐานใหม่สำหรับการเข้าถึงเซิร์ฟเวอร์อย่างมั่นใจ โดยมันใช้คู่กุญแจคริปโตกราฟิก (private key อยู่กับผู้ใช้ และ public key ติดตั้งบนเซิร์ฟเวอร์) ปลดล็อคการเข้าถึงแบบไม่ต้องพิมพ์รหัสผ่านทุกครั้ง ลดความเสี่ยงจากการเดารหัสผ่านและเปิดโอกาสให้อัตโนมัติงานต่างๆ บนเซิร์ฟเวอร์ทำงานได้รวดเร็วและปลอดภัยยิ่งขึ้น

SSH Key แตกต่างจากระบบรหัสผ่านอย่างมาก โดยเฉพาะสำหรับแอดมินและนักพัฒนา ผู้ที่ต้องเข้าถึงหลายเซิร์ฟเวอร์เป็นประจำ เช่นเดียวกับการรันสคริปต์หรือระบบ automation ที่ต้องเชื่อมต่อโดยไม่ต้องกรอกรหัสผ่านซ้ำๆ เพราะ SSH Key ทนทานต่อ brute-force attack มากกว่าและลดความเสี่ยงจาก phishing ได้เป็นอย่างดี

    ข้อดีของการใช้ SSH Key
  • ปลอดภัยกว่ารหัสผ่านมาก – ลดช่องโหว่ brute-force สำเร็จ
  • ป้องกันการโจมตีแบบเดา password และ phishing ได้
  • อำนวยความสะดวกสำหรับระบบอัตโนมัติ
  • เข้าถึงเซิร์ฟเวอร์จำนวนมากได้รวดเร็ว
  • ไม่ต้องจดจำรหัสผ่านที่ซับซ้อน

เปรียบเทียบข้อแตกต่างที่สำคัญระหว่าง SSH Key และการใช้รหัสผ่าน:

SSH Key คืออะไร ทำไมต้องใช้?
คุณสมบัติ SSH Key Authentication รหัสผ่าน
ระดับความปลอดภัย สูง (กุญแจคริปโต) ต่ำ (ขึ้นกับความแข็งแรงของ password)
ความสะดวกในการใช้งาน สูง (ไม่ต้องใส่ password) ต่ำ (ต้องใส่ password ทุกครั้ง)
ระบบอัตโนมัติ รองรับ (ไม่ต้องใช้ password) ลำบาก (ต้องกรอก password)
ความเสี่ยงจากการโจมตี ต่ำ (ต้านทาน brute-force ได้ดี) สูง (เปิดช่องโหว่ brute-force และ phishing)

ระบบ SSH Key Authentication กลายเป็นมาตรฐานสำหรับการรักษาความปลอดภัยเซิร์ฟเวอร์ในยุคใหม่ ถือเป็นทางเลือกที่แนะนำสูงสุดสำหรับองค์กรหรือบุคคลที่ต้องการลดความเสี่ยงจากรหัสผ่านและยกระดับความปลอดภัยในการทำระบบ hosting หรือ cloud infrastructure

คุณสมบัติเบื้องต้นและกรณีใช้งาน SSH Key

SSH Key ใช้คู่กุญแจแบบ asymmetric คือ public key ไว้บนเซิร์ฟเวอร์ และ private key อยู่ฝั่งผู้ใช้ โดยจะล็อคการเข้าถึงได้เองโดยไม่ต้องรหัสผ่าน ทุกครั้งที่ต้องเชื่อมต่อ public key จะถูกตรวจจับผ่าน private key – กลายเป็นระบบ hands-free login ที่ปลอดภัย

จุดเด่นคือใช้การเข้ารหัสแบบ asymmetric เป็นหลัก (กุญแจไม่สมมาตร) ถ้าคู่กุญแจไม่มีการรั่วไหล การแอบเข้าถึงเซิร์ฟเวอร์ยากมาก

ประเภทของ SSH Key ที่พบได้บ่อย:

  • RSA: โครงสร้างที่ใช้กันมากที่สุด
  • DSA: มาตรฐานเก่า ปัจจุบันไม่นิยมแล้ว
  • ECDSA: ใช้หลัก elliptic curve การเข้ารหัสสูงแม้ key สั้น
  • Ed25519: มีความปลอดภัยสูง ประสิทธิภาพดี ใช้ elliptic curve
  • PuTTYgen: เครื่องมือสร้าง SSH Key บน Windows
  • OpenSSH: มาตรฐาน SSH Key manager บนระบบ Unix และ Linux

SSH Key เหมาะมากสำหรับ cloud, เข้าถึง server, version control (เช่น Git), ระบบ backup อัตโนมัติ, CI/CD, deploy web/app, หรือแม้แต่การใช้ใน automation script ต่าง ๆ โดยเป็นเกราะป้องกันอีกชั้นสำหรับข้อมูลที่สำคัญ

ระบบกุญแจแบบไม่สมมาตร (Asymmetric Keys)

การเข้ารหัสแบบ asymmetric คือหัวใจของ SSH Key โดยใช้เป็นคู่ (public + private) เพื่อพิสูจน์ตัวตน กุญแจแต่ละอันจะเชื่อมต่อระหว่างเซิร์ฟเวอร์และเครื่อง client ได้อย่างปลอดภัย

ระบบกุญแจสมมาตร (Symmetric Keys)

การเข้ารหัสแบบ symmetric จะใช้ key เดียวทั้งเข้ารหัสและถอดรหัส สำหรับ SSH จะถูกนำมาใช้งานใน session หลังจาก handshake ด้วย asymmetric key แล้ว เพื่อความเร็วของ data transfer แต่พิสูจน์ตัวตนหลักยังคงใช้ asymmetric key

ระบบกุญแจสมมาตร (Symmetric Keys)
คุณสมบัติ Asymmetric Keys Symmetric Keys
จำนวนกุญแจ 2 (public, private) 1 กุญแจ
การใช้งานหลัก Authentication, key exchange เข้ารหัสข้อมูล
ความปลอดภัย สูง ต่ำกว่า (มีความเสี่ยงหาก key ถูกเผยแพร่)
ความเร็ว ช้ากว่าเล็กน้อย เร็วกว่าเมื่อใช้ใน session

คู่มือสร้าง SSH Key อย่างรวดเร็ว

สร้าง SSH Key ถือเป็นขั้นตอนแรกสำหรับการเข้าถึง server อย่างมั่นใจ ขั้นตอนนี้ไม่ซับซ้อน ถ้าเข้าใจหลักพื้นฐาน จะเสร็จในไม่กี่นาที ด้านล่างนี้คือสเต็ปสำหรับทุก platform (Linux, macOS, Windows)

ต้องให้ความสำคัญกับการเก็บรักษา private key แนะนำให้ตั้ง passphrase และเก็บไว้ในอุปกรณ์ที่เชื่อถือได้ ส่วน public key นำไปติดตั้งบน server สำหรับการใช้งานครั้งแรก

คู่มือสร้าง SSH Key อย่างรวดเร็ว
คำสั่ง คำอธิบาย ตัวอย่าง
ssh-keygen สร้าง SSH key คู่ใหม่ ssh-keygen -t rsa -b 4096
-t rsa เลือกอัลกอริทึม (RSA, DSA, ECDSA) ssh-keygen -t rsa
-b 4096 ระบุความยาวบิตของ key ssh-keygen -t rsa -b 4096
-C comment ใส่โน๊ตหรืออีเมล ssh-keygen -t rsa -b 4096 -C user@email.com
  1. เปิด terminal, command prompt, หรือ PowerShell ตาม OS
  2. สั่ง ssh-keygen -t rsa -b 4096
  3. เลือกไฟล์เก็บ key (ค่าปกติ: id_rsa, id_rsa.pub)
  4. ตั้ง passphrase เพื่อปกป้อง key
  5. นำ public key ไปที่ server ด้วย ssh-copy-id user@server หรือวางเข้า ~/.ssh/authorized_keys
  6. แก้ไฟล์ sshd_config (ปิด PasswordAuthentication ได้)

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

ข้อดีข้อเสียด้านความปลอดภัยของ SSH Key

SSH Key ยืนยันตัวตน มีความปลอดภัยสูงสุด เทียบกับระบบ password ส่วนใหญ่แล้ว key ยาวและซับซ้อนกว่า brute-force จะโจมตีได้ยาก แต่ถ้า key หายหรือถูกขโมยจะกลายเป็นความเสี่ยงทันที ดังนั้นต้องมีมาตรการ backup และ revoke key ในกรณีฉุกเฉิน

ข้อดีข้อเสียด้านความปลอดภัยของ SSH Key
คุณสมบัติ จุดแข็ง จุดอ่อน
Security ต้านทาน brute-force ความเสี่ยงถ้า key ถูกขโมย
ใช้งานง่าย login แบบอัตโนมัติ ต้องบริหารจัดการ key
Automation รองรับ script ที่ปลอดภัย อาจเกิด misconfiguration
Performance ยืนยันตัวตนเร็ว มีขั้นตอน setup เพิ่มเติม
    มุมมองความปลอดภัยของ SSH Key
  • private key ต้องเก็บในอุปกรณ์ที่เชื่อถือได้
  • backup server และ key ไว้เผื่อฉุกเฉิน
  • ถ้า key ถูกขโมยต้อง revoke ทันที
  • ควรใช้ passphrase เสริมความปลอดภัยของ key
  • ตั้ง permission 600 หรือ 400 ให้กับไฟล์ key
  • อย่าให้ key ใช้งานอเนกประสงค์เกินไป ควรจำกัด scope

การบริหารจัดการ key อาจซับซ้อนสำหรับองค์กรที่มีหลาย user/หลาย server จึงควรเลือกใช้ centralized SSH Key management เช่น Keycloak, Vault หรือ Ansible เพื่อป้องกัน human error

ความปลอดภัยของ SSH Key ขึ้นกับความแข็งแรงของ key เช่นควรเลือก key ยาว ๆ (4096 bits หรือ Ed25519), update key เป็นระยะ และ monitor activity ที่ใช้ key เพื่อลดความเสี่ยง

เมื่อไหร่/ทำไมควรเปลี่ยน SSH Key?

การเปลี่ยน SSH Key เป็นงานที่จำเป็น: เมื่อมีความเสี่ยงว่ากุญแจถูกขโมย, อดีตพนักงานออกจากองค์กร, หรือพบช่องโหว่ใหม่ ๆ ในอัลกอริทึมที่ใช้ รวมถึงการ rotate keys ตาม policy ที่กำหนดไว้ จะช่วยลด chance ในการถูกเจาะระบบและรักษาความปลอดภัยข้อมูล

เมื่อไหร่/ทำไมควรเปลี่ยน SSH Key?
สถานการณ์ คำอธิบาย แนวทางแก้ไข
key หาย/โดนขโมย ความเสี่ยงจาก device สูญหายหรือ key ถูกรั่ว revoke key ทันทีและ generate key ใหม่
สงสัยมีการเจาะระบบ พบ log หรือกิจกรรมผิดปกติ เปลี่ยน key และตรวจสอบ system logs
user ออกจากงาน ลดความเสี่ยงจากอดีต user revoke key เดิมออกและสร้าง key ใหม่สำหรับ user ที่เหลือ
พบช่องโหว่ cryptography algorithm อาจล้าสมัย อัพเกรด/เปลี่ยน key ด้วย algorithm ที่ใหม่กว่า
    ทิปสำหรับการ rotate SSH Key
  • ทดสอบ key ใหม่ก่อน revoke key เดิม
  • ใช้ tool บริหาร key แบบ centralized เพื่อลด manual error
  • ทำรายการ key ทั้งหมดให้ update เสมอ
  • เตรียมแผนฉุกเฉิน หาก rotate key แล้ว network disconnect
  • สร้าง key ด้วย passphrase ที่แข็งแรง
  • ตั้งตาราง rotate key เป็น routine ในองค์กร

อย่าลืมแจ้งทีมงานล่วงหน้าก่อนเปลี่ยน key และตรวจสอบว่า application/automation ที่ใช้ key ยังคงทำงานครบถ้วน ไม่ควร rotate key แบบ cut-off ทันทีโดยไม่เตรียม backup solution

กลยุทธ์การบริหาร SSH Key เพื่อประสิทธิภาพที่เหนือกว่า

SSH Anahtar Yönetim Araçları ile Verimlilik Artışı

สำหรับองค์กรที่มีหลาย server หลาย user การบริหาร SSH Key ด้วยมือจะเสี่ยงต่อ human error และความซับซ้อน ดังนั้นเครื่องมือบริหาร SSH Key เช่น Keycloak, HashiCorp Vault, Ansible, Puppet, Chef หรือ SSM (AWS Systems Manager) จะช่วย automate การกระจาย, audit, revoke และ rotate key ได้อย่างมีประสิทธิภาพ

กลยุทธ์การบริหาร SSH Key เพื่อประสิทธิภาพที่เหนือกว่า
ชื่อเครื่องมือ ฟีเจอร์เด่น ข้อดี
Keycloak Identity management + SSO Auth รวมศูนย์, UI ใช้ง่าย
HashiCorp Vault บริหาร secret และ rotate key ปลอดภัย, automate key management
Ansible Automation, config management deploy key ได้ซ้ำ, ลด manual error
Puppet Configuration & policy management Integrate แบบครบวงจร
  • Keycloak: open source IAM รองรับ SSH Key Centralized management
  • HashiCorp Vault: secure storage และ manage key rotation
  • Ansible: automate key distribution และ configuration
  • Puppet: บริหาร key และ enforce policy แบบ config management
  • Chef: similar กับ Puppet บริหาร key สำหรับ server ได้ mass scale
  • SSM (AWS Systems Manager): บริหาร SSH key ใน AWS environment

เมื่อใช้ SSH Key management tool บุคลากรจะมีเวลาไปโฟกัสกับงานที่สำคัญ เช่น security policy หรือ incident response มากกว่าการจัดการ key แบบ manual

การทำงานเบื้องหลังของ SSH Key (เทคนิค)

SSH Key authentication จะใช้ asymmetric key pair โดย private key เก็บไว้ฝั่ง user ส่วน public key ติดตั้ง server – เมื่อเชื่อมต่อ server จะส่ง challenge ให้ client เซ็นด้วย private key server ตรวจได้ว่าตรงหรือไม่ หากผ่านจะอนุญาตเข้าสู่ระบบ

การทำงานเบื้องหลังของ SSH Key (เทคนิค)
ส่วนประกอบ คำอธิบาย ข้อดี
Key pair private + public ใช้งานร่วมกัน ยืนยันตัวตนแบบปลอดภัย
การเข้ารหัส ข้อมูลทุกรายการถูก encrypt ป้องกันการถูกดักข้อมูล
Authentication ยืนยันตัวบุคคลแบบมั่นใจ กัน spoof ได้ดี
Security ดีกว่าระบบ password ต้าน brute-force
    ลำดับการทำงานของ SSH Key
  • user สร้าง key pair (private+public)
  • ติดตั้ง public key บน server (authorized_keys)
  • server ส่ง challenge (random data)
  • client เซ็น challenge ด้วย private key
  • server เช็ค signature ด้วย public key
  • ถ้าตรง, login สำเร็จได้

กระบวนการนี้ไม่ต้องใช้ password จึงปลอดภัยต่องานแบบ automation หรือ server ที่เปิด port บน public network เป็นอย่างมาก

การสร้าง key pair

สร้าง key pair ด้วย ssh-keygen เลือก algorithm (RSA, Ed25519), หัวใจคือความยาว/ความแข็งแรงของ key และ passphrase เสริมความปลอดภัย ติดตั้ง public key เข้าสู่ ~/.ssh/authorized_keys บน server ใด ๆ ที่ต้องการเข้าใช้งาน

วิธีการเข้ารหัสที่ใช้ใน SSH

SSH จะใช้การเข้ารหัสผสมผสาน algorithm เช่น symmetric (AES, ChaCha20), asymmetric (RSA, ECDSA, Ed25519), และ hash function (SHA-256, SHA-512) – เพื่อความมั่นใจว่าข้อมูลมีความลับ integrity เต็มเปี่ยม แนะนำเลือก algorithm ที่ใหม่ที่สุดเสมอ

แนวทางปฏิบัติที่ดีที่สุดของ SSH Key Security

การตั้งค่า SSH Key อาจปลอดภัยได้มากหรือน้อย ขึ้นอยู่กับ การสร้าง passphrase ที่แข็งแรง, การตั้ง permission, การ backup และการ monitor key ตาม best practice ต่อไปนี้

แนวทางปฏิบัติที่ดีที่สุดของ SSH Key Security
มาตรการ สิ่งที่ต้องทำ ความสำคัญ
Passphrase สร้าง password เสริมให้กับ key สูง
การเก็บรักษา เก็บ key ในอุปกรณ์/Directory ที่ปลอดภัย สูง
Permission ตั้งสิทธิ์ไฟล์เป็น 600 หรือ 400 ปานกลาง
Audit ตรวจสอบการใช้งาน key เป็นระยะ ปานกลาง
    ขั้นตอนที่ควรปฏิบัติ
  1. สร้าง key ด้วย passphrase ที่แข็งแรง
  2. เก็บ key ในอุปกรณ์ที่เชื่อถือได้เท่านั้น
  3. ตั้ง permission ของไฟล์ key ให้เจ้าของเท่านั้นที่อ่าน/เขียนได้ (chmod 600 หรือ 400)
  4. backup key เป็น routine
  5. monitor และ audit key usage ทุกเดือน

อย่าลืม update หรือ revoke key ที่ไม่ได้ใช้แล้ว เมื่อตรวจพบกิจกรรมผิดปกติ แนะนำให้เปลี่ยน key ทันที

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

SSH Key authentication ไม่ใช่เพียงแค่ login แต่ยังสามารถสร้าง tunnel ข้าม network, ใช้กับ SFTP, SCP, automation ต่าง ๆ ได้อย่างปลอดภัย โดยหัวใจคือการจัดการ key ให้ดี

ตัวอย่างคำสั่งที่ใช้กับ SSH Key
วิธีสร้างการเชื่อมต่ออย่างปลอดภัยด้วย SSH Key
คำสั่ง คำอธิบาย ตัวอย่าง
ssh-keygen สร้าง key pair ใหม่ ssh-keygen -t rsa -b 4096
ssh-copy-id คัดลอก public key ไปยัง server ssh-copy-id user@hostname
ssh เชื่อมต่อ server (login) ssh user@hostname
ssh-agent โหลด key ไว้ใน memory eval $(ssh-agent -s)

อย่าลืมปิด PasswordAuthentication ใน sshd_config เลือก port ที่ไม่ใช่ 22 เพื่อป้องกัน bot, จำกัดรายชื่อ user ที่ให้ access เพื่อยกระดับ security อีกขั้น

ใช้งาน SSH กับโปรโตคอลอื่นๆ

SSH ไม่ได้ใช้แค่ SSH protocol เท่านั้น สามารถสร้าง tunnel สำหรับ HTTP, Database, File transfer หรือแม้แต่ forwarding port ได้อย่างปลอดภัย:

    เครื่องมือที่ช่วยรักษาความปลอดภัยในการเชื่อมต่อผ่าน SSH
  • OpenSSH – มาตรฐานสำหรับ Linux, macOS
  • PuTTY – SSH client ยอดนิยมบน Windows
  • MobaXterm – terminal advance บน Windows
  • Termius – cross platform SSH manager
  • Bitvise SSH Client – SSH client ที่ครบเครื่องบน Windows

แนะนำ rotate key เป็น routine และใช้ SSH Key management tool ตรวจสอบ key usage เพื่อลดความเสี่ยง (เช่น Keycloak, Vault)

แม้ SSH Key จะปลอดภัยกว่ารหัสผ่าน แต่ควรเสริม Multi-Factor Authentication (MFA) สำหรับระบบสำคัญ

ข้อควรระวังและแนะนำสำหรับการใช้ SSH Key

การเปลี่ยนมาใช้ SSH Key authentication เป็นการลงทุนด้าน security ที่สำคัญ – ลด brute-force, phishing, ให้ความคล่องตัวสำหรับ CI/CD, DevOps, หรือผู้ดูแลระบบ hosting

แนวทางปฏิบัติที่ควรยึดไว้ เช่น rotate key, backup key, audit key usage และควบคุมสิทธิ์ในการ distribute key ให้จำกัดเฉพาะผู้ที่จำเป็น

ข้อควรระวังและแนะนำสำหรับการใช้ SSH Key
สิ่งจำเป็น คำอธิบาย ความสำคัญ
ความปลอดภัยของ key เก็บและปกป้อง private key ป้องกันการเข้าถึงที่ไม่ได้รับอนุญาต
การ rotate key เปลี่ยน key ตามตารางหรือเมื่อมีเหตุฉุกเฉิน ลดความเสี่ยงหาก key ถูก compromise
การควบคุมสิทธิ์ เลือก user หรือ group ที่ให้ access ได้ ลดความเสี่ยงจาก insider threat
Audit monitor การใช้งาน key เป็นประจำ แจ้งเตือนกิจกรรมผิดปกติ
    ข้อควรระวังการใช้งาน SSH Key
  • ห้ามแจกจ่าย private key
  • ใช้ passphrase เสริมความปลอดภัย
  • สร้าง key บนอุปกรณ์ที่เชื่อถือได้เท่านั้น
  • ลบ key ที่ไม่ใช้งานออกเสมอ
  • rotate key เป็นประจำ
  • ใช้ firewall คุม access เพิ่มเติม

SSH Key authentication จึงเป็นทั้งเรื่องเทคนิคและนโยบายองค์กร ต้องฝึกอบรมให้ user และ admin เข้าใจวิธีการสร้าง, ใช้งาน, backup, revoke key และรู้วิธีจัดการเมื่อมีเหตุฉุกเฉิน

คำถามที่พบบ่อยเกี่ยวกับ SSH Key (FAQ)

ทำไม SSH Key authentication จึงปลอดภัยกว่ารหัสผ่าน?

SSH Key authentication ชนะการโจมตีแบบเดารหัสผ่าน (brute-force), phishing และซ่อนความลับด้วย asymmetric encryption ผู้โจมตีไม่สามารถเดา key ได้ตามหลักคณิตศาสตร์ ไม่ต้องแชร์ passphrase จาก user user สามารถ rotate key ได้ทันทีเมื่อพบความผิดปกติ

ควรเลือก algorithm ใดสำหรับ SSH Key?

Ed25519 เป็นอัลกอริทึมที่แนะนำ เพราะมีประสิทธิภาพสูงครอบคลุมตรงความปลอดภัยและ performance หากไม่รองรับ ให้ใช้ RSA (4096 bits) ซึ่งยังคงเป็นมาตรฐานที่ปลอดภัยมาก

ถ้าทำ private key หายต้องทำยังไง?

ต้อง revoke public key บนทุก server ที่เคยใช้งาน key นั้นทันที จากนั้นสร้าง key pair ใหม่และติดตั้ง public key ใหม่ทุก server ลดความเสี่ยงหาก device โดนขโมยหรือ key ถูกรั่ว

ใช้ SSH Key เดียวเพื่อ login หลาย server ดีหรือไม่?

ควรใช้ key pair แยกสำหรับ server สำคัญแต่ละตัว ถ้าใช้ key เดียวกันแล้ว key ถูก compromise จะเสี่ยงงานทั้งหมด มี best practice ให้สร้าง key ใหม่ราย server หรือ server group

เก็บ private key อย่างไรให้ปลอดภัย?

ควรใช้ passphrase เสริม, เก็บใน .ssh directory ที่ permission จำกัด (600), backup extra ใน hardware security module (HSM) หรือ key management system เท่านั้น หลีกเลี่ยงการเก็บใน cloud ไม่เข้ารหัส

SSH Key authentication fail มีสาเหตุอะไร?

สาเหตุหลักคือ authorized_keys ผิด, permission ไม่ถูกต้อง, service SSH ถูกหยุด หรือ key pair ไม่ตรงกัน แก้ไขโดยตรวจสอบ permission (chmod 600), ตรวจสอบ public key ใน authorized_keys, และลองสร้าง key ใหม่หากยังเข้าใช้งานไม่ได้

มี tool หรือ platform ไหนที่ช่วย automate SSH Key management?

แนะนำ Ansible, Chef, Puppet (config/deploy key), Keycloak, Vault (IAM) – ใช้สำหรับ rotate, distribute, revoke, monitor key แบบอัตโนมัติ

สามารถจำกัดสิทธิ์ของ SSH Key ได้ไหม? เช่น ให้ทำแค่บาง command อย่างเดียว

ได้ สามารถเพิ่ม options หน้า public key ใน authorized_keys เพื่อจำกัดสิทธิ์ เช่น restrict เฉพาะ command หรือใช้กับ backup job เท่านั้น เพิ่มความปลอดภัยอีกระดับ

แชร์บทความนี้:

ทีมงาน Hostragons

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

ติดต่อเรา