หน้าแรก / บทความ & คู่มือ / วิธีตั้งค่า RADIUS Server กับ MikroTik รองรับ SMS และ Social Login
MikroTik Tutorial

วิธีตั้งค่า RADIUS Server กับ MikroTik รองรับ SMS และ Social Login

โดย: AI Auto Poster 16/9/2569 เข้าชม: 2 ครั้ง
วิธีตั้งค่า RADIUS Server กับ MikroTik รองรับ SMS และ Social Login
แชร์เทคนิคตั้งค่า RADIUS Server ทำงานร่วมกับ MikroTik รองรับการยืนยันตัวตนผ่าน SMS OTP และ Social Login เพิ่มความเสถียร ยกระดับ WiFi Hotspot ให้มืออาชีพ

มากกว่า 75% ของงานที่ผมและทีมงาน SIAM-LOGIN เข้าไปปรับปรุงระบบ WiFi ให้กับโรงแรม คอนโด และห้างสรรพสินค้า มักจะเจอโจทย์เดียวกันครับ นั่นคือต้องการให้ผู้ใช้งานต่อ WiFi แล้วยืนยันตัวตนผ่าน SMS OTP หรือ Social Login อย่าง Facebook, Google และ LINE ได้ง่ายที่สุด แต่ในขณะเดียวกันก็ต้องเก็บ Log ตาม พ.ร.บ.คอมพิวเตอร์ ได้ถูกต้องและไม่ทำให้ Router ทำงานหนักเกินไป

ลำพังตัว MikroTik RouterBoard อย่างเดียว มีฟังก์ชั่น User Manager หรือ Hotspot Local ให้ใช้ก็จริงครับ แต่มันไม่ได้ถูกออกแบบมาให้เชื่อมต่อ API ภายนอกอย่างระบบส่ง SMS หรือระบบ OAuth ของ Social Media ได้อย่างยืดหยุ่น การดึง RADIUS Server แยกต่างหากออกมาทำงานคู่กัน จึงเป็นสถาปัตยกรรมเครือข่ายที่มาตรฐานที่สุดในระดับ Enterprise

ทำไมต้องแยก RADIUS Server ออกจาก MikroTik?

หลายคนเคยถามผมว่า "ทำไมไม่ทำทุกอย่างใน MikroTik เครื่องเดียวไปเลย?" จากประสบการณ์คีย์ระบบจริงมาหลายร้อย site ผมสรุปเหตุผลหลักได้ 3 ข้อครับ:

  • การประมวลผลไม่สะดุด (Offloading CPU): เมื่อมีผู้ใช้งานเชื่อมต่อ Captive Portal พร้อมกันหลักร้อยถึงหลักพันคน การถอดรหัส Token และการเรียก API ส่ง SMS OTP ใช้ทรัพยากรสูงมาก หากให้ Router ทำงานนี้ CPU จะแตะ 100% จนทำให้ระบบ Routing หลักร่วงทั้ง network
  • ความยืดหยุ่นในการเชื่อมต่อ API: RADIUS Server (เช่น FreeRADIUS หรือ Centralized Authentication Engine ของ SIAM-LOGIN) สามารถเขียน Logic เชื่อมต่อกับผู้ให้บริการ SMS Gateway และระบบ OAuth 2.0 ของ Google/LINE/Facebook ได้อย่างไร้ขีดจำกัด
  • ความปลอดภัยและ Log Centralization: การพิสูจน์ตัวตนผ่าน Access-Request และ Access-Accept ตามมาตรฐาน RADIUS Protocol ช่วยให้การจัดเก็บข้อมูลการเข้าใช้งาน (Accounting Log) แยกออกจาก Router ชัดเจน ปลอดภัยจากการถูกลบเมื่อ Router มีปัญหา

3 ขั้นตอนการตั้งค่า MikroTik ร่วมกับ RADIUS Server

การทำระบบนี้ประกอบด้วย 3 ส่วนหลัก คือ การเตรียม Network Architecture, การคอนฟิก RADIUS Client บน MikroTik และการตั้งค่า Walled Garden ครับ ผมขอสรุปขั้นตอนปฏิบัติตามได้จริงดังนี้

ขั้นตอนที่ 1: กำหนดค่า RADIUS Client บน MikroTik

เริ่มแรกให้เข้าไปที่ MikroTik ผ่าน Winbox จากนั้นไปที่เมนู Radius แล้วกดเพิ่ม (+) เพื่อสร้าง RADIUS Client ใหม่

  • Service: ติ๊กเลือก hotspot (และ wireless หากต้องการ)
  • Address: ใส่ IP Address ของ RADIUS Server (เช่น 192.168.88.10 หรือ Public IP ของ Cloud RADIUS)
  • Secret: กำหนด Shared Secret Key ที่ตรงกันทั้งฝั่ง MikroTik และ RADIUS Server
  • Authentication & Accounting Port: โดยทั่วไปคือ Port 1812 และ 1813
  • Timeout: ปรับเป็น 3000ms - 5000ms เพื่อรองรับช่วงที่ API ภายนอกทำงานช้า

หลังจากนั้น ให้ไปที่เมนู IP > Hotspot > Server Profiles เลือก Profile ที่ใช้งาน ติ๊กเลือกช่อง Use RADIUS และเลือก MAC Authentication หากต้องการรองรับการจำค่าอุปกรณ์

ขั้นตอนที่ 2: ตั้งค่า Walled Garden สำหรับ Social Login และ SMS Gateway

จุดที่หลายคนตกม้าตายที่สุดคือเรื่อง Walled Garden ครับ เพราะก่อนที่ผู้ใช้จะยืนยันตัวตนสำเร็จ มือถือของผู้ใช้จะยังไม่มีอินเทอร์เน็ต แต่เครื่องต้องสามารถวิ่งไปดึงสคริปต์ Auth จาก Google, Facebook, LINE หรือส่ง Request ไปยัง SMS OTP Authentication Gateway ได้

ให้ไปที่เมนู IP > Hotspot > Walled Garden กดเพิ่ม (+) รายการโดเมนที่จำเป็น เช่น:

  • *.facebook.com และ *.fbcdn.net สำหรับ Facebook Login
  • accounts.google.com และ *.gstatic.com สำหรับ Google Auth
  • access.line.me สำหรับ LINE Login
  • Domain หรือ IP ของ SMS Gateway API provider ที่คุณใช้งาน

คำแนะนำจากผม: ควรกำหนด Walled Garden IP List แทนการใช้ Wildcard Domain ปริมาณมากเกินไป เพราะอาจทำให้ MikroTik RouterBoard โหลด DNS Lookup หนักเกินความจำเป็น

ขั้นตอนที่ 3: ระบบการส่ง Access-Request และส่งผ่าน Session ไปยัง Captive Portal

เมื่อผู้ใช้งานเกาะ WiFi ระบบ Hotspot ของ MikroTik จะทำการ Redirect ผู้ใช้ไปยังหน้า Captive Portal ที่โฮสต์อยู่บน Web Server หรือ RADIUS Authentication Server

เมื่อผู้ใช้กรอกเบอร์โทรศัพท์เพื่อรับ SMS OTP หรือกดปุ่ม Login ด้วย Social Media ตัว RADIUS Server จะทำการตรวจสอบสิทธิ์ และส่งแพ็กเกจ Access-Accept กลับมายัง MikroTik พร้อมกำหนดค่า Session-Timeout, Rate-Limit (ความเร็ว Speed Download/Upload) ตามที่เรากำหนดไว้ใน Profile โดยอัตโนมัติ

เทคนิคหน้างาน: ป้องกันปัญหา Social Login หลุดบน iOS และ Android

จากประสบการณ์ตรง ปัญหายอดฮิตของ Captive Portal บนระบบปฏิบัติการสมาร์ตโฟนคือ Captive Network Assistant (CNA) หรือหน้าป๊อปอัพเว็บเบราว์เซอร์ลอยของระบบปฏิบัติการ (โดยเฉพาะ iOS) มักจะตัดการทำงานก่อนที่ Social Login จะ Redirect เสร็จสมบูรณ์

วิธีแก้ที่ผมใช้เสมอในการวางระบบให้ SIAM-LOGIN คือการส่ง HTTP Redirect ให้เบราว์เซอร์เปิดออกไปยัง External Browser (เช่น Safari หรือ Chrome) หรือการตั้งค่า Bypass CNA Domain บางส่วนชั่วคราว เพื่อให้กระบวนการยืนยันตัวตนผ่าน SMS OTP หรือ Social OAuth ทำงานจบกระบวนการ 100% โดยไม่ถูกปิดหน้าต่างไปก่อน

สรุป: ยกระดับ WiFi Hotspot ให้เสถียรและปลอดภัย

การรวมพลังระหว่าง MikroTik RouterBoard และ RADIUS Server ประสิทธิภาพสูง ไม่เพียงแต่ช่วยให้ธุรกิจของคุณได้ข้อมูลการตลาดที่แม่นยำจาก Social Login และ SMS OTP เท่านั้น แต่ยังช่วยแบ่งเบาภาระของ Router ทำให้ระบบ WiFi ภาพรวมมีความเสถียร รองรับโหลดผู้ใช้จำนวนมากได้แบบไม่สะดุด และถูกต้องตามข้อกำหนดกฎหมายจัดเก็บ Log อีกด้วยครับ หากคุณต้องการคำปรึกษาเรื่องการออกแบบสถาปัตยกรรม RADIUS สำหรับองค์กร ทีมงาน SIAM-LOGIN พร้อมดูแลทุกขั้นตอนครับ

Tags: RADIUS Server MikroTik RouterBoard Captive Portal OAuth 2.0 Walled Garden SMS OTP Authentication Access-Request FreeRADIUS

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

Q: ทำไมทำ Social Login บน MikroTik Hotspot แล้วหน้าต่างชอบเด้งปิดเอง?

เกิดจากฟีเจอร์ Captive Network Assistant (CNA) บน iOS และ Android ปิดเบราว์เซอร์อัตโนมัติ สามารถแก้ไขได้ด้วยการตั้งค่า Walled Garden และใช้เบราว์เซอร์หลักของเครื่องในการยืนยันตัวตน OAuth 2.0

Q: จำเป็นต้องใช้ Cloud RADIUS Server หรือไม่?

หากมีหลายสาขาหรือต้องการรองรับ SMS OTP และ Social Login แนะนำ Cloud RADIUS Server ครับ เพราะบริหารจัดการจากศูนย์กลางได้ง่าย แต่ถ้ามีสาขาเดียวและผู้ใช้ไม่เกิน 50 คน สามารถใช้ On-Premise RADIUS ได้ครับ

Q: Shared Secret ในการตั้งค่า RADIUS คืออะไร?

คือรหัสผ่านความปลอดภัยที่ตรงกันระหว่าง MikroTik (Client) และ RADIUS Server เพื่อให้ทั้งสองฝ่ายยืนยันแพ็กเกจ Access-Request และ Accounting Log ได้อย่างถูกต้องและปลอดภัย

ต้องการความช่วยเหลือหรือจ้างวางระบบ Network?

ทีมวิศวกร SIAM-LOGIN ยินดีให้คำปรึกษา ออกแบบระบบ และจัดส่งทีมเข้าติดตั้งหน้างาน