วิธีใช้ Login Keys ใน DirectAdmin

Login Keys ใน DirectAdmin ช่วยให้ล็อกอินได้โดยไม่ต้องใช้ Username/Password ผ่าน URL พิเศษ เหมาะสำหรับ Developer ที่ต้องการสร้าง Auto-Login จากระบบอื่น

วิธีสร้าง Login Key

  1. ล็อกอิน DirectAdmin แล้วไปที่ Advanced Features
  2. คลิก Login Keys
  3. คลิก Create Key
  4. ตั้งชื่อ Key เพื่อจดจำการใช้งาน
  5. กำหนด IP ที่อนุญาต (แนะนำ) และวันหมดอายุ
  6. คลิก Create
  7. คัดลอก URL ที่ได้เก็บไว้ใช้
หน้า Login Keys แสดงรายการ Key ที่สร้างไว้
หน้า Login Keys แสดงรายการ Key ที่สร้างไว้
กดปุ่ม Create (วงแดง) เพื่อสร้าง Login Key ใหม่
กดปุ่ม Create (วงแดง) เพื่อสร้าง Login Key ใหม่
กรอกชื่อ Key และกำหนดสิทธิ์ แล้วกด Create
กรอกชื่อ Key และกำหนดสิทธิ์ แล้วกด Create

การใช้งาน Login Key

URL Login Key จะอยู่ในรูปแบบ:

https://yourdomain.com:2222/CMD_LOGIN_KEYS?key=XXXXXXXX&action=login

เปิด URL นี้ในเบราว์เซอร์จะเข้า DirectAdmin ได้ทันทีโดยไม่ต้องกรอกรหัสผ่าน

Login Keys คืออะไรและแตกต่างจาก Password อย่างไร

Login Key คือโทเค็นยืนยันตัวตนแบบ API Key-based ที่ DirectAdmin สร้างขึ้นให้ใช้แทนรหัสผ่าน แทนที่จะส่ง Username และ Password ผ่านฟอร์ม ระบบจะใช้ URL พิเศษที่มีโทเค็นฝังอยู่ เมื่อเปิด URL นั้นในเบราว์เซอร์หรือส่ง HTTP Request ไปยัง Server DirectAdmin จะตรวจสอบโทเค็นและอนุญาตให้เข้าใช้งานได้ทันที

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

การสร้าง Login Key สำหรับ Admin และ Reseller

DirectAdmin รองรับการสร้าง Login Key ในหลายระดับสิทธิ์ ทั้ง Admin Level (เข้าถึงทุก Account บนเซิร์ฟเวอร์), Reseller Level (จัดการ User ภายใต้ Reseller), และ User Level (เฉพาะ Account ของตัวเอง) โดยสิทธิ์ของ Key จะขึ้นอยู่กับระดับของบัญชีที่สร้าง Key นั้น

ชนิดของ Login Key และสิทธิ์

การตั้งค่าวันหมดอายุ (Expiry)

แนะนำให้ตั้งวันหมดอายุทุกครั้ง โดยเฉพาะ Key ที่ให้แก่บุคคลภายนอก เช่น Developer หรือทีม Support ชั่วคราว เมื่อถึงวันหมดอายุ Key จะถูกยกเลิกอัตโนมัติโดยไม่ต้องดำเนินการใดๆ เพิ่มเติม Key ที่ไม่มีวันหมดอายุควรตรวจสอบและ Rotate เป็นระยะเพื่อลดความเสี่ยง

การใช้ Login Key กับ DirectAdmin API

Login Key มีประโยชน์มากที่สุดเมื่อใช้กับ DirectAdmin API สำหรับงาน Automation ต่างๆ เช่น การสร้าง Subdomain อัตโนมัติ การตรวจสอบสถานะ Account หรือการ Deploy เว็บไซต์ผ่าน Script เพียงแนบ Key ไปกับ HTTP Request ก็สามารถควบคุม DirectAdmin ได้โดยไม่ต้องกรอกรหัสผ่าน

ตัวอย่าง cURL พื้นฐาน

วิธีง่ายที่สุดในการใช้ Login Key กับ API คือใส่ Key ใน HTTP Header หรือใส่ใน URL Query String ดังตัวอย่าง:

ข้อดีของการใช้ Key ผ่าน cURL คือสามารถฝังใน Shell Script, Python Script หรือ Deployment Pipeline ได้อย่างปลอดภัย เพราะแม้ Script หลุดออกไป Key ก็ยังสามารถ Revoke ได้ทันทีโดยไม่ต้องเปลี่ยน Password หลักของบัญชี

การ Revoke Login Key เมื่อสงสัยว่าถูก Compromise

หากสังเกตเห็นพฤติกรรมผิดปกติ เช่น มีการเข้าถึง API จาก IP ที่ไม่รู้จัก หรือได้รับแจ้งว่า Login Key หลุดออกไปในรายงาน Git Repository สาธารณะ ควรดำเนินการทันที เพราะ Login Key ที่ถูก Compromise เสี่ยงเปิดช่องให้ผู้ไม่ประสงค์ดีเข้าถึงข้อมูลและไฟล์บนเซิร์ฟเวอร์

ขั้นตอนรับมือฉุกเฉิน

  1. ล็อกอิน DirectAdmin ทันทีด้วย Username และ Password หลักของบัญชี
  2. ไปที่ Advanced Features > Login Keys
  3. ลบ Key ที่สงสัยออกทันทีโดยกด Delete — Key จะถูกยกเลิกทันที URL เดิมใช้งานไม่ได้อีก
  4. ตรวจ Access Log ของเว็บไซต์และ DirectAdmin เพื่อดูว่ามีการกระทำใดที่ไม่ได้รับอนุญาต
  5. เปลี่ยน Password หลักของบัญชีเพื่อความมั่นใจ แม้ Login Key จะไม่เปิดเผย Password ก็ตาม
  6. สร้าง Login Key ใหม่พร้อมตั้ง IP Allowlist ให้รัดกุมกว่าเดิม

การตอบสนองต่อ Incident อย่างรวดเร็วเป็นสิ่งสำคัญ ยิ่ง Revoke Key เร็วเท่าไร ก็ยิ่งลดโอกาสที่ผู้ไม่ประสงค์ดีจะใช้ Key นั้นสร้างความเสียหายได้

แนวทางปฏิบัติที่ดีในการจัดการ Login Keys

การบริหารจัดการ Login Keys อย่างมีระบบช่วยลดความเสี่ยงด้านความปลอดภัยได้อย่างมาก ควรทบทวน Key ที่มีอยู่ทั้งหมดเป็นระยะ ลบ Key ที่ไม่ได้ใช้งานแล้วออก และ Rotate Key ที่ใช้งานอยู่ทุก 3-6 เดือน

Security Best Practices สำหรับ Login Keys

นอกจากการตั้งค่าพื้นฐานแล้ว มีแนวทางด้านความปลอดภัยเพิ่มเติมที่ควรนำไปปฏิบัติจริงเพื่อให้ Login Keys ทำงานได้ปลอดภัยสูงสุดในระยะยาว การมองข้ามขั้นตอนเหล่านี้อาจเปิดช่องให้เกิดการเข้าถึงโดยไม่ได้รับอนุญาตได้แม้ว่าจะใช้ Key แทน Password แล้วก็ตาม

Rotate Keys เป็นประจำ

แนะนำให้ Rotate (สร้าง Key ใหม่แทนของเดิม) ทุก 3 ถึง 6 เดือนสำหรับ Key ที่ใช้งานต่อเนื่อง โดยเฉพาะ Key ที่ให้สิทธิ์ระดับ Full Access ขั้นตอนง่าย ๆ คือ สร้าง Key ใหม่ก่อน จากนั้นอัปเดต Script หรือ Config ให้ใช้ Key ใหม่ แล้วจึงลบ Key เก่าออก ทำให้มั่นใจว่าไม่มีดาวน์ไทม์ในการเปลี่ยน

ตั้ง IP Restriction ทุกครั้ง

แม้ระบบที่ใช้ Key จะเป็นระบบภายในที่เชื่อถือได้ ก็ควรตั้ง IP Allowlist เสมอ IP ของ Server หรือ Cloud Function ที่รัน Automation Script จะไม่เปลี่ยนบ่อย การตั้ง Allowlist จึงมีต้นทุนต่ำมากแต่ได้ผลลัพธ์ด้านความปลอดภัยสูง เพราะแม้ Key หลุดไปก็ใช้งานไม่ได้จาก IP อื่น

Audit การใช้งาน Key สม่ำเสมอ

ตรวจสอบ Access Log ของ DirectAdmin เป็นประจำเพื่อดูว่า Key แต่ละตัวถูกใช้งานจาก IP ไหน ในเวลาไหน และเรียก Endpoint ใดบ้าง ถ้าพบ Pattern ผิดปกติ เช่น มีการเรียก API ในเวลากลางดึกที่ไม่ใช่เวลาทำงานของ Automation Script ควรตรวจสอบทันที การ Audit สม่ำเสมอช่วยตรวจจับปัญหาได้ก่อนที่จะกลายเป็นความเสียหายจริง

Revoke ทันทีเมื่อมีเหตุสงสัย

ไม่ควรรอให้มีหลักฐานชัดเจนก่อนจะ Revoke Key ที่สงสัย ถ้าพบว่า Key URL ถูก Commit เข้า Git Repository สาธารณะโดยบังเอิญ หรือพบว่ามี Third Party ที่ไม่ควรมีสิทธิ์เข้าถึง Key ได้เห็น URL ควร Revoke Key นั้นทันทีก่อน แล้วค่อยสืบสวนว่าเกิดอะไรขึ้น ความรวดเร็วในการตอบสนองคือกุญแจสำคัญในการจำกัดความเสียหายจาก Incident ด้านความปลอดภัย

ความปลอดภัย: Login Key มีสิทธิ์เหมือนบัญชีหลัก ให้เก็บ URL เป็นความลับ ตั้งวันหมดอายุและจำกัด IP เสมอเพื่อลดความเสี่ยง

ต้องการ Hosting พร้อม DirectAdmin เต็มรูปแบบ?

AsiaGB Hosting รองรับ DirectAdmin ครบทุกฟีเจอร์ ราคาเริ่มต้น 149 บ./เดือน

ดูแพ็กเกจ Hosting