ตอนที่ 1: Radius Server ทำหน้าที่อะไรในระบบ WiFi Hotspot และองค์กร
คืนวันศุกร์ตอนสี่ทุ่มกว่าๆ มีเจ้าของอพาร์ตเมนต์ขนาด 120 ห้องโทรหาผมด้วยน้ำเสียงลนลาน 'ช่างครับ เน็ตที่หอล่มหมดเลย ผู้เช่าล็อกอินเข้าหน้า Captive Portal ไม่ได้ บางคนกรอกรหัสผ่านแล้วค้าง แถมเน็ตช้าจนโดนโวยเต็มกรุ๊ปไลน์!' พอลอง Remote เข้าไปดู MikroTik CCR ตัวหลัก ปรากฏว่า CPU วิ่งแตะ 100% ค้างอยู่แบบนั้น เพราะ Router ตัวเดียวต้องแบกรับภาระทุกอย่าง ตั้งแต่วิ่งส่ง Traffic, ตรวจสอบรหัสผ่านผู้เช่ากว่าร้อยห้อง, จัดการคูปองเน็ตรายวัน, ไปจนถึงเก็บบันทึก Log ตาม พ.ร.บ. คอมพิวเตอร์
เหตุการณ์คืนนั้นทำให้ผมต้องรีบเข้าไปปรับโครงสร้างระบบใหม่ทันที ด้วยการดึงภาระงานเรื่องการตรวจสอบสิทธิ์และจัดการผู้ใช้งาน ออกมาจาก Router แล้วโยกไปให้ระบบเฉพาะทางที่เรียกว่า Radius Server ทำหน้าที่แทน และนั่นคือจุดเริ่มต้นที่ผมอยากนำมาเล่าให้ฟังในบทความนี้ครับ
ทำไมการปล่อยให้ Router ทำงานทุกอย่าง ถึงเป็นแนวทางที่เสี่ยง?
ในช่วงที่ผมเริ่มวางระบบ Network ใหม่ๆ หลายโครงการมักนิยมใช้ MikroTik ตัวเดียวในการรันระบบ WiFi Hotspot ทั้งทำหน้าที่เป็น Router, สร้างหน้าล็อกอิน, และสร้างฐานข้อมูลเก็บ Username/Password ไว้ในตัวผ่าน MikroTik User Manager วิธีนี้ใช้งานได้ดีมากสำหรับอพาร์ตเมนต์หรือออฟฟิศขนาดเล็กที่มีผู้ใช้งาน 20-30 คน
แต่เมื่อไหร่ก็ตามที่จำนวนอุปกรณ์เพิ่มขึ้นเป็นหลักร้อยเครื่อง หรือมีผู้ใช้งานเชื่อมต่อพร้อมกัน (Concurrent Users) จำนวนมาก การที่ Router ต้องสลับประมวลผลระหว่างการรับส่งแพ็กเก็ตข้อมูล กับการค้นหาข้อมูลใน Database จะทำให้ทรัพยากร CPU และ RAM ของ Router ถูกดึงไปใช้งานจนหมด ผลลัพธ์คือ Router ค้าง เน็ตช้า หรือบางครั้งผู้ใช้ก็นำรหัสผ่านเดียวกันไปแชร์ใช้งานพร้อมกันหลายเครื่องโดยที่ระบบคุมไม่อยู่
Radius Server ทำหน้าที่อะไร? เข้าใจง่ายๆ ผ่านหลักการ AAA Framework
คำว่า RADIUS ย่อมาจาก Remote Authentication Dial-In User Service ครับ แต่ถ้าอธิบายให้เห็นภาพง่ายที่สุด Radius Server ก็คือ 'ผู้ดูแลประตูและสมองส่วนกลาง' ที่ทำหน้าที่รับคำร้องขอจาก Access Point หรือ Router แล้วตรวจสอบว่าผู้ใช้คนนั้นมีสิทธิ์เข้าใช้งานเครือข่ายหรือไม่ โดยทำงานตามหลักการมาตรฐานที่เรียกว่า AAA Framework ดังนี้ครับ
1. Authentication (การยืนยันตัวตน - คุณคือใคร?)
เมื่อผู้ใช้พิมพ์ Username และ Password บนหน้า Captive Portal หรือพยายามเชื่อมต่อ WiFi องค์กร ตัว Access Point หรือ Router (เรียกว่า NAS - Network Access Server) จะส่งข้อมูลนั้นมาถาม Radius Server ว่า 'รหัสผ่านนี้ถูกต้องไหม?' เซิร์ฟเวอร์จะทำการค้นหาในฐานข้อมูล เช่น MySQL, PostgreSQL หรือ Active Directory เพื่อยืนยันว่าผู้ใช้มีตัวตนจริงในระบบ
2. Authorization (การอนุมัติสิทธิ์ - คุณทำอะไรได้บ้าง?)
หลังจากยืนยันตัวตนผ่านแล้ว Radius Server จะส่งคำตอบกลับไปบอก Router พร้อมกำหนดเงื่อนไขการใช้งานทันที เช่น ผู้ใช้คนนี้ได้ Bandwidth Management ความเร็ว Download/Upload เท่าไหร่, สามารถใช้งานได้กี่วัน, ล็อกอินได้พร้อมกันกี่อุปกรณ์ (Simultaneous Use), หรือต้องจัดให้อยู่บน VLAN ไหนเพื่อความปลอดภัย
3. Accounting (การบันทึกข้อมูลการใช้งาน - คุณใช้อะไรไปเท่าไหร่?)
ทำหน้าที่บันทึกพฤติกรรมการใช้งานอย่างละเอียด เช่น ล็อกอินเข้ามาเมื่อไหร่, ออกไปเวลาไหน, ใช้ปริมาณข้อมูลไปกี่ Megabyte รวมถึงหมายเลข IP Address และ MAC Address ที่ได้รับ ซึ่งข้อมูลส่วนนี้มีประโยชน์มากสำหรับการนำไปคิดเงินค่าบริการคูปอง WiFi รวมถึงการเก็บข้อมูลการจราจรทางคอมพิวเตอร์ให้สอดคล้องกับข้อกำหนดตาม พ.ร.บ. คอมพิวเตอร์
บทบาทของ Radius Server ในระบบ WiFi Hotspot และเครือข่ายองค์กร
จากประสบการณ์การวางระบบของ SIAM-LOGIN เรานำ Radius Server มาประยุกต์ใช้งาน 2 รูปแบบหลักๆ ที่แตกต่างกันตามโจทย์ของลูกค้าครับ
1. ในระบบ WiFi Hotspot (หอพัก โรงแรม และพื้นที่สาธารณะ)
ในงาน ระบบ WiFi Hotspot ตัว Radius Server (นิยมใช้ซอฟต์แวร์ open-source อย่าง FreeRADIUS) จะทำงานร่วมกับระบบจัดการคูปอง สามารถสร้างแพ็กเกจเน็ตที่หลากหลาย เช่น บัตรรายชั่วโมง บัตรรายวัน หรือระบบสมาชิกรายเดือนสำหรับอพาร์ตเมนต์ โดยที่ Router หน้างานมีหน้าที่แค่ส่งข้อมูลตามคำสั่ง ทำให้รองรับผู้ใช้งานพร้อมกันได้หลายร้อยห้องโดยที่เน็ตไม่สะดุด
2. ในเครือข่ายองค์กร (Corporate Network & 802.1X)
สำหรับออฟฟิศหรือองค์กรขนาดใหญ่ Radius Server จะถูกใช้ร่วมกับโปรโตคอล 802.1X Authentication เพื่อทำ Centralized Authentication พนักงานไม่ต้องคอยจำรหัสผ่าน WiFi ที่ตั้งแจกกันทั่วไป แต่สามารถใช้ Username/Password ของตัวเองที่ผูกกับ Domain Controller ล็อกอินเข้าใช้งานได้ทันที ช่วยป้องกันปัญหาพนักงานที่ลาออกไปแล้วแอบกลับมาเชื่อมต่อ WiFi องค์กรได้อย่างเด็ดขาด
ข้อดีของการแยก Radius Server ออกมาจาก Router หลัก
- ความเสถียรสูง (Scalability): ช่วยลดภาระ CPU บน MikroTik หรือ Core Router ทำให้การRouting ข้อมูลทำได้อย่างเต็มประสิทธิภาพ ส่วนงานประมวลผลตัวตนให้เป็นหน้าที่ของเซิร์ฟเวอร์
- บริหารจัดการจากศูนย์กลาง (Centralized Management): หากมีหลายสาขา เช่น โรงแรมที่มี 3 สาขา เราสามารถใช้ Radius Server เครื่องเดียวในการควบคุมสิทธิ์และฐานข้อมูลผู้ใช้ของทุกสาขาได้ทันที
- ความปลอดภัยระดับองค์กร: รองรับการกำหนดสิทธิ์แยก VLAN ตามแผนกพนักงานได้อย่างยืดหยุ่น และปิดช่องโหว่การแอบใช้รหัสผ่านซ้ำ
สรุปจากประสบการณ์ของผม: เมื่อไหร่ที่คุณควรเริ่มใช้ Radius Server?
ถ้าระบบของคุณมีผู้ใช้งานพร้อมกันเกิน 50-100 อุปกรณ์ มีหลายสาขา หรือต้องการสร้างระบบ WiFi Hotspot ที่มีการคิดเงินและจำกัดสิทธิ์ผู้ใช้แบบจริงจัง การฝากฐานข้อมูลไว้บน Router ตัวเดียวคือความเสี่ยงครับ การลงทุนติดตั้ง Radius Server แยกออกมา ไม่ว่าจะเป็นการรันบน Cloud VPS หรือ Dedicated Server ในออฟฟิศ จะช่วยให้ระบบเครือข่ายของคุณนิ่งขึ้นอย่างเห็นได้ชัด และลดงานบริการหลังการขายลงไปได้มากครับ
คำถามที่พบบ่อยเกี่ยวกับบทความนี้ (FAQ)
Q: Radius Server จำเป็นต้องใช้อุปกรณ์เซิร์ฟเวอร์ราคาแพงเสมอไปไหม?
ไม่จำเป็นเสมอไปครับ สำหรับเครือข่ายขนาดเล็กถึงปานกลาง สามารถรัน FreeRADIUS บน Linux Cloud VPS หรือเซิร์ฟเวอร์ขนาดเล็กได้ แต่หากเป็นองค์กรขนาดใหญ่ การใช้ Dedicated Server หรือ Virtual Machine ย่อมให้เสถียรภาพและความยืดหยุ่นในการขยายระบบที่ดีกว่า
Q: ถ้า Radius Server ล่ม ผู้ใช้งานจะยังเล่นอินเทอร์เน็ตได้ไหม?
หากไม่มีการวางระบบสำรอง ผู้ใช้งานใหม่จะไม่สามารถยืนยันตัวตนเพื่อเข้าใช้งานได้ครับ แต่สำหรับ SIAM-LOGIN เราจะออกแบบโครงสร้างให้มี Secondary Radius Server ทำงานควบคู่กันเสมอ เพื่อให้ระบบทำงานต่อเนื่องได้แบบไร้รอยต่อ
Q: Radius Server ต่างจาก Captive Portal อย่างไร?
Captive Portal คือหน้าเว็บอินเทอร์เฟซที่แสดงขึ้นมาให้ผู้ใช้กรอกข้อมูล ส่วน Radius Server คือระบบเบื้องหลังที่ทำหน้าที่ตรวจสอบรหัสผ่าน กำหนดความเร็วเน็ต และบันทึกเวลาการใช้งาน พูดง่ายๆ คือ Captive Portal เปรียบเหมือนหน้าต่างรับข้อมูล แต่ Radius Server คือสมองประมวลผลครับ
ต้องการความช่วยเหลือหรือจ้างวางระบบ Network?
ทีมวิศวกร SIAM-LOGIN ยินดีให้คำปรึกษา ออกแบบระบบ และจัดส่งทีมเข้าติดตั้งหน้างาน