วิธีตั้งค่า MikroTik Hotspot + Radius เก็บ Log 90 วัน ตาม พ.ร.บ.
วันที่เจ้าหน้าที่ตำรวจไซเบอร์พร้อมหนังสือขอความร่วมมือเดินทางมาหาผมที่ออฟฟิศ เพื่อขอตรวจดู Log การใช้งานอินเทอร์เน็ตย้อนหลังของอพาร์ตเมนต์แห่งหนึ่งย่านลาดกระบัง เพราะมีผู้ใช้ WiFi ภายในอาคารไปก่อคดีฉ้อโกงออนไลน์ วันนั้นผมตอบเจ้าหน้าที่ได้อย่างมั่นใจและดึงข้อมูลออกมาให้ได้ภายในเวลาไม่ถึง 10 นาที เหตุการณ์วันนั้นทำให้ผมตระหนักเลยว่า การตั้งค่าระบบยืนยันตัวตน WiFi และการเก็บข้อมูลจราจรทางคอมพิวเตอร์อย่างถูกต้อง ไม่ใช่แค่เรื่องเทคนิค แต่คือเกราะป้องกันเจ้าของธุรกิจจากโทษปรับและโทษจำคุกตาม พ.ร.บ. คอมพิวเตอร์ อย่างแท้จริง
วันนี้ผมเลยตั้งใจเอาประสบการณ์ตรงที่เซ็ตระบบให้ลูกค้า SIAM-LOGIN มาย่อยให้เข้าใจง่ายๆ ว่า เราจะตั้งค่า Captive Portal บน MikroTik ร่วมกับ Radius Server อย่างไร ให้ทั้งเสถียร ใช้งานง่าย และถูกต้องตามกฎหมายในการเก็บ Log ย้อนหลังอย่างน้อย 90 วันครับ
ทำไมต้องใช้ MikroTik คู่กับ Radius Server ในการเก็บ Log?
หลายคนอาจสงสัยว่า ทำไมไม่เก็บ Log ลงใน Flash Memory หรือ Storage ของ MikroTik ตรงๆ เลย? คำตอบสั้นๆ จากประสบการณ์ผมคือ 'หน่วยความจำเต็มและ Router พัง' ครับ MikroTik เป็น Router Board ที่ออกแบบมาเพื่อประมวลผล Routing ไม่ได้ถูกออกแบบมาให้เขียนข้อมูลมหาศาลลงดิสก์ตลอด 24 ชั่วโมง การเขียน Traffic Log ทุกๆ คำร้องขอลงในตัว MikroTik นอกจากจะทำให้หน่วยความจำเต็มรวดเร็วในเวลาไม่กี่ชั่วโมงแล้ว ยังทำให้ Router ทำงานช้า แฮงก์ และ Flash Memory เสื่อมสภาพอย่างรวดเร็ว
ดังนั้น สถาปัตยกรรมที่ถูกต้องและได้มาตรฐานอุตสาหกรรม คือการใช้ MikroTik ทำหน้าที่เป็น Captive Portal ในการดักจับหน้าล็อกอินและส่งผ่านข้อมูล จากนั้นโยนภาระการตรวจสอบสิทธิ์ (Authentication) และการจัดเก็บ Log ไปให้ Radius Server และ Centralized Syslog Server ที่แยกต่างหากรับหน้าที่แทน
ขั้นตอนการตั้งค่า MikroTik Captive Portal ร่วมกับ Radius Server
เพื่อให้เห็นภาพชัดเจน ผมจะแบ่งขั้นตอนการตั้งค่าออกเป็น 4 ส่วนหลักๆ ที่คุณสามารถนำไปทำตามได้ทันทีครับ
1. การตั้งค่า Radius Client บน MikroTik
ขั้นแรกคือการบอกให้ MikroTik รู้จักและเชื่อมต่อกับ Radius Server ของเรา โดยเข้าไปที่เมนู RADIUS ใน Winbox แล้วกดเพิ่มรายการใหม่:
- Service: เลือก
hotspot(เพื่อใช้ยืนยันตัวตนผู้ใช้ WiFi Hotspot) - Address: ใส่ IP Address ของ Radius Server (เช่น
192.168.1.100) - Secret: ใส่ รหัสผ่านเชื่อมต่อ (Shared Secret) ที่ตรงกันกับใน Server
- Timeout: ปรับเป็น
3000 msเพื่อป้องกันกรณี Network Latency เล็กน้อย
2. เปิดใช้งาน Radius บน Hotspot Server Profile
เมื่อสร้าง Radius Client เรียบร้อยแล้ว ต้องไปเปิดใช้งานในเมนู Hotspot โดยไปที่ IP -> Hotspot -> Server Profiles แล้วเลือก Profile ที่ใช้งานอยู่:
- คลิกที่แท็บ RADIUS
- ติ๊กถูกที่ช่อง Use RADIUS
- ในส่วน Accounting ให้ติ๊กเลือก Accounting เพื่อส่งข้อมูลเวลาเริ่มใช้งาน และเวลาเลิกใช้งานกลับไปบันทึกที่ Server
- ตั้งค่า
Interim Updateเป็น00:05:00(ทุก 5 นาที) เพื่อให้ Radius Server อัปเดตปริมาณการรับส่งข้อมูลของผู้ใช้จริงตลอดเวลา
3. ตั้งค่า Remote Logging ส่ง Traffic Log ไปยัง Server External
ข้อกำหนดสำคัญของ พ.ร.บ. คอมพิวเตอร์ คือต้องระบุได้ว่า ใคร (User ID / MAC Address) ใช้อินเทอร์เน็ต IP อะไร ออกไปที่ IP ปลายทางไหน เวลาใด ดังนั้นเราต้องส่ง Log การเชื่อมต่อ NAT ออกไปเก็บภายนอก:
ไปที่ System -> Logging -> Actions เพิ่ม Action ใหม่เป็น remote กำหนด Remote Address ไปยัง IP ของ Syslog Server และเลือก Port เป็น 514 UDP
จากนั้นไปที่ System -> Logging -> Rules เพิ่ม Rule ใหม่ เลือก Topics เป็น hotspot, info และ account เพื่อส่งข้อมูลการเข้าใช้งานและ Log จราจรไปยังเครื่องจัดเก็บ Log 90 วันทันที
หัวใจสำคัญ: การเก็บ Log 90 วันให้ถูกต้องตาม พ.ร.บ. คอมพิวเตอร์
จากประสบการณ์ทำระบบ SIAM-LOGIN สิ่งที่หลายคนมักตกหลุมพรางคือ 'เก็บ Log ไว้แต่ค้นหาไม่ได้' หรือ 'Log ถูกแก้ไขดัดแปลงได้' ซึ่งผิดหลักเกณฑ์ตามกฎหมาย การเก็บ Log ที่ถูกต้องเพื่อรองรับ พ.ร.บ. คอมพิวเตอร์ 90 วัน ต้องมีองค์ประกอบสำคัญดังนี้:
- การเทียบเวลาตรง (NTP Sync): MikroTik และ Radius Server ต้องตั้งค่า Time Zone ให้ตรงกัน (Asia/Bangkok) และซิงค์เวลาผ่าน NTP Server (เช่น
time.navy.mi.thหรือpool.ntp.org) ตลอดเวลา เพื่อให้เวลาใน Log มีความเที่ยงตรงอ้างอิงตามกฎหมาย - ความครบถ้วนของข้อมูล: Log ต้องระบุ วัน-เวลา, Username, IP Address ที่ได้รับ, MAC Address ของอุปกรณ์ client, IP/Port ปลายทาง และ Destination URL
- ความปลอดภัยและ Integrity: ไฟล์ Log ที่จัดเก็บใน RADIUS / Syslog Server ต้องมีระบบบีบอัดไฟล์รายวัน และสร้างค่า Hash (เช่น SHA-256) ป้องกันการแก้ไขเปลี่ยนแปลงข้อมูลย้อนหลัง
สรุปมุมมองวิศวกร
การตั้งค่า Captive Portal ร่วมกับ Radius Server บน MikroTik ไม่เพียงแต่ช่วยเพิ่มประสิทธิภาพ WiFi Hotspot ในสถานที่ของคุณให้ลื่นไหล ไม่กระตุก แต่ยังเป็นมาตรการปกป้องตัวคุณเองในฐานะผู้ให้บริการอินเทอร์เน็ต ให้รอดพ้นจากปัญหาทางกฎหมายหากเกิดเหตุ cybercrime ในพื้นที่ของคุณ หากคุณต้องการระบบยืนยันตัวตน WiFi ที่ได้มาตรฐาน ติดตั้งง่าย ไม่ยุ่งยาก SIAM-LOGIN พร้อมให้บริการและให้คำปรึกษาจากทีมวิศวกรมืออาชีพเสมอครับ
คำถามที่พบบ่อยเกี่ยวกับบทความนี้ (FAQ)
Q: หากผู้ให้บริการ WiFi ไม่เก็บ Log ย้อนหลัง 90 วัน มีบทลงโทษอย่างไร?
ตาม พ.ร.บ. คอมพิวเตอร์ หากผู้ให้บริการอินเทอร์เน็ต หรือเจ้าของสถานที่ให้บริการ WiFi ไม่จัดเก็บข้อมูลจราจรคอมพิวเตอร์ย้อนหลังไม่น้อยกว่า 90 วัน มีโทษปรับสูงสุดไม่เกิน 500,000 บาทครับ
Q: สามารถเสียบ USB Flash Drive เข้า MikroTik เพื่อเก็บ Log 90 วันได้หรือไม่?
ในทางเทคนิคทำได้แต่ไม่แนะนำอย่างยิ่งครับ เพราะ Flash Drive จะเสียอย่างรวดเร็วจากการอ่านเขียนข้อมูลต่อเนื่อง และไม่สามารถประมวลผล Log ขนาดใหญ่ได้ การส่ง Log ออกไป Radius Server หรือ External Syslog Server เสถียรและปลอดภัยกว่าครับ
Q: Radius Server และ Syslog Server ทำหน้าที่ต่างกันอย่างไร?
Radius Server ทำหน้าที่ตรวจสอบสิทธิ์ผู้ใช้งาน (Authentication) และบันทึกระยะเวลาใช้งาน (Accounting) ส่วน Syslog Server ทำหน้าที่รับและจัดเก็บ Traffic Log ข้อมูลการเชื่อมต่อ IP ปลายทางเพื่อรองรับ พ.ร.บ. คอมพิวเตอร์ ครับ
ต้องการความช่วยเหลือหรือจ้างวางระบบ Network?
ทีมวิศวกร SIAM-LOGIN ยินดีให้คำปรึกษา ออกแบบระบบ และจัดส่งทีมเข้าติดตั้งหน้างาน