ตั้งค่า MikroTik Captive Portal เก็บ Log ถูกต้องตาม พ.ร.บ. คอมพิวเตอร์
บ่ายวันอังคารเมื่อสองปีก่อน มีเจ้าหน้าที่ตำรวจพร้อมหมายค้นก้าวเข้ามาในร้านกาแฟของลูกค้าผม ถามหา Log การใช้งานอินเทอร์เน็ตย้อนหลังเพราะมีผู้ไม่หวังดีใช้ WiFi ฟรีของร้านไปโพสต์ฉ้อโกงออนไลน์ เจ้าของร้านหน้าซีดหันมาหาผมทันที เพราะอุปกรณ์ที่ใช้อยู่ในตอนนั้นเป็นเพียง Router บ้านธรรมดาที่เปิดให้ต่อ WiFi โดยไม่มีหน้าล็อกอิน และไม่มีการเก็บบันทึกข้อมูลจราจรทางคอมพิวเตอร์เลยแม้แต่บรรทัดเดียว เหตุการณ์นั้นทำให้เจ้าของร้านต้องเสียเวลาไปให้การและโดนเปรียบเทียบปรับตามกฎหมาย
จากประสบการณ์ทำระบบ Network ให้หอพัก โรงแรม และร้านค้ามาหลายร้อยแห่ง ผมบอกได้เลยว่าเรื่องนี้ไม่ใช่เรื่องไกลตัว การปล่อยให้ผู้ใช้ภายนอกเข้าถึงอินเทอร์เน็ตโดยไม่มีการยืนยันตัวตน (Authentication) และไม่เก็บ Log คือความเสี่ยงใหญ่ของเจ้าของสถานที่ วันนี้ผมจะมาสรุปวิธีตั้งค่า MikroTik RouterOS เพื่อทำ Captive Portal และการส่ง Log ไปเก็บยัง Syslog Server ให้ถูกต้องตามกฎหมายด้วยตัวเองครับ
ทำไม Router บ้านทั่วไปถึงไม่เพียงพอต่อ พ.ร.บ. คอมพิวเตอร์?
ตาม พ.ร.บ. ว่าด้วยการกระทำความผิดเกี่ยวกับคอมพิวเตอร์ (ฉบับที่ 2) พ.ศ. 2560 ระบุชัดเจนว่าผู้ให้บริการอินเทอร์เน็ต ซึ่งครอบคลุมถึงร้านค้า โรงแรม ออฟฟิศ และหอพักที่แจก WiFi ต้องจัดเก็บข้อมูลจราจรทางคอมพิวเตอร์ (Traffic Log) ไว้ไม่น้อยกว่า 90 วัน ข้อมูลที่เก็บต้องระบุตัวตนของผู้ใช้งานได้ เช่น Username, IP Address, MAC Address และเวลา เข้า-ออก ระบบ
Router จากผู้ให้บริการอินเทอร์เน็ต (ISP) ทั่วไป มีพื้นที่จัดเก็บข้อมูล (Flash Memory) จำกัดมาก ไม่สามารถบันทึก Log ปริมาณมหาศาลต่อเนื่องหลายเดือนได้ หากพยายามบันทึกไว้ในตัวอุปกรณ์ ไม่นาน Flash Memory จะเต็มและเสียทันที เราจึงต้องใช้ MikroTik มาทำหน้าที่เป็น Hotspot Gateway เพื่อสร้างหน้าล็อกอิน (Captive Portal) และส่ง Log ออกไปเก็บภายนอกครับ
ขั้นที่ 1: ตั้งค่า MikroTik Hotspot (Captive Portal)
การเปิดใช้งาน Hotspot บน MikroTik RouterOS เพื่อให้ผู้ใช้ต้องกรอกรหัสผ่านก่อนใช้งานอินเทอร์เน็ต สามารถทำผ่าน WinBox ได้ตามขั้นตอนต่อไปนี้
1. วิ่ง Hotspot Setup Wizard
เปิดโปรแกรม WinBox ไปที่เมนู IP > Hotspot จากนั้นกดปุ่ม Hotspot Setup
- Hotspot Interface: เลือกพอร์ตที่ต้องการแจก WiFi ให้ผู้ใช้งาน (เช่น vlan10-guest หรือ ether5)
- Local Address of Network: กำหนด IP Gateway ของวง Hotspot (เช่น 192.168.88.1/24) และติ๊กถูกที่ Masquerade Network
- Address Pool of Network: กำหนดช่วง IP Address ที่จะแจกให้ผู้ใช้ (เช่น 192.168.88.10-192.168.88.254)
- Select Server Certificate: หากยังไม่มี SSL Certificate ให้เลือก none ไปก่อน
- IP Address of SMTP Server: ปล่อย 0.0.0.0
- DNS Servers: ใส่ DNS ที่ต้องการ เช่น 8.8.8.8 และ 1.1.1.1
- DNS Name: ใส่ชื่อ domain สมมุติสำหรับหน้าล็อกอิน เช่น wifi.siamlogin.local
2. ปรับแต่ง Server Profile และ User Profile
เมื่อ Setup เสร็จ ให้ไปที่แท็บ Server Profiles ดับเบิลคลิกชื่อโปรไฟล์ที่เพิ่งสร้างขึ้น ในแท็บ Login ให้เลือกวิธีการยืนยันตัวตน เช่น HTTP PAP หรือ HTTP CHAP จากนั้นกด Apply
ถัดมาไปที่แท็บ User Profiles สร้างโปรไฟล์การใช้งาน เช่น 1Hour-Limit กำหนด Rate Limit (Upload/Download Speed) และ Shared Users เพื่อจำกัดการเข้าใช้งานต่อ 1 บัญชี
ขั้นที่ 2: ตั้งค่า Time & NTP Client (สิ่งสำคัญที่สุดในการเก็บ Log)
ข้อผิดพลาดที่ผมเจอบ่อยที่สุดเวลาไปตรวจระบบคือ MikroTik เวลาไม่ตรง Log ที่เก็บไว้จึงใช้เป็นหลักฐานทางกฎหมายไม่ได้เลย เพราะเมื่อ Router รีบูต เวลาจะย้อนกลับไปปี 1970 ทันที ดังนั้นเราต้องตั้งค่า NTP Server ให้ Router ซิงก์เวลาจริงเสมอ
- ไปที่ System > NTP Client
- ติ๊กถูกที่ Enabled
- เลือก Mode เป็น unicast
- ในช่อง Primary NTP Server ให้ใส่ IP หรือ Domain ของ NTP ประเทศไทย เช่น
time.navy.mi.thหรือpool.ntp.org - ไปที่ System > Clock ปรับ Time Zone Name เป็น
Asia/Bangkok
ขั้นที่ 3: การตั้งค่า Remote Logging ส่ง Log ไป Syslog Server
หน่วยความจำ NAND ของ MikroTik ไม่เหมาะกับการบันทึก Log ลงดิสก์ตัวเอง ผมแนะนำให้ตั้งค่า Remote Logging เพื่อส่ง Log ทั้งหมดไปยัง Syslog Server หรือ RADIUS Server ภายนอก
1. เพิ่ม Logging Action สำหรับ Remote Server
ไปที่เมนู System > Logging คลิกแท็บ Actions แล้วกดเพิ่ม (+) ตั้งค่าดังนี้:
- Name: remote-log
- Target: remote
- Remote Address: ใส่ IP Address ของ Syslog Server หรือ RADIUS Server ที่คุณเตรียมไว้
- Remote Port: 514 (พอร์ตมาตรฐานของ Syslog)
- Syslog Facility: daemon
2. กำหนด Rules ในการส่ง Log
สลับไปที่แท็บ Rules กดเพิ่ม (+) เพื่อเลือกประเภทข้อมูลที่ต้องส่งออกไปเก็บ:
- Topics: เลือก
hotspot, infoและaccount(บันทึกการเข้าล็อกอิน ออกจากระบบ และการรับแจก IP) - Action: เลือก
remote-log(ชื่อ Action ที่เราสร้างไว้ในขั้นตอนก่อนหน้า)
นอกจากนี้ หากต้องการเก็บข้อมูลการเชื่อมต่อระดับ IP และ Port (NAT Log / Connection Tracking Log) ให้เพิ่ม Rule โดยเลือก Topic เป็น firewall เพื่อบันทึกว่า IP ภายในเครื่องไหน เชื่อมต่อไปยัง IP ปลายทางใด เวลาไหน ซึ่งเป็นข้อมูลสำคัญในการสืบค้นตาม พ.ร.บ. คอมพิวเตอร์ 2560
3 สิ่งที่ต้องตรวจเช็กก่อนเปิดใช้งานจริง
หลังจากตั้งค่า MikroTik Captive Portal และระบบ Log เรียบร้อยแล้ว ผมแนะนำให้ทดสอบ 3 ข้อนี้เพื่อความชัวร์ครับ
- ทดสอบทดลอง Login: ตรวจสอบว่าหน้า Captive Portal เด้งขึ้นมาโดยอัตโนมัติ (POC - Proof of Concept) เมื่ออุปกรณ์มือถือเชื่อมต่อ WiFi หรือไม่
- ตรวจสอบไฟล์ Log บน Remote Server: ลองล็อกอินเข้าใช้งาน แล้วเช็กดูที่เครื่อง Syslog Server ว่ามีข้อความบันทึกเวลา, MAC Address, IP Address และ Username เด้งเข้ามาแบบ Real-time หรือไม่
- ทดสอบการปิด-เปิด Router ใหม่ (Reboot Test): ลองถอดปลั๊ก MikroTik แล้วเสียบใหม่ จากนั้นเช็กว่า นาฬิกายังตรงกับเวลาปัจจุบันทันทีหรือไม่ ถ้าเวลาเพี้ยน Log ที่ส่งออกไปหลังจากนั้นจะใช้ประโยชน์ทางกฎหมายไม่ได้
สรุป
การตั้งค่า MikroTik ทำ Captive Portal ร่วมกับระบบเก็บ Log ไม่ได้ยุ่งยากอย่างที่คิดครับ หัวใจสำคัญคือการระบุตัวตนผู้ใช้งานได้ชัดเจน และมี Log บันทึกไว้นอกตัว Router เพื่อเก็บรักษาย้อนหลังได้ครบ 90 วันตาม พ.ร.บ. คอมพิวเตอร์
หากองค์กร ร้านค้า หรือหอพักของคุณกำลังมองหาโซลูชันระบบล็อกอิน WiFi Hotspot และเครื่องบันทึก Log สำเร็จรูปที่ไม่ต้องปวดหัวกับการดูแล Server เอง ทีมงาน SIAM-LOGIN พร้อมให้คำแนะนำและออกแบบระบบ Network Security ที่เหมาะกับงบประมาณของคุณครับ
คำถามที่พบบ่อยเกี่ยวกับบทความนี้ (FAQ)
Q: เก็บ Log ใน Flash Memory ของ MikroTik โดยตรงได้ไหม?
ไม่แนะนำอย่างยิ่งครับ เพราะ Flash Memory ของ MikroTik มีขนาดเล็กมาก หากเก็บบันทึก Log อย่างต่อเนื่องจะทำให้พื้นที่เต็มอย่างรวดเร็ว และทำให้ Flash Memory เสื่อมสภาพจน Router เสียหายได้ ควรส่ง Log ไปเก็บที่ Syslog Server หรือ RADIUS Server ภายนอก
Q: ต้องเก็บ Log อินเทอร์เน็ตไว้อย่างน้อยกี่วันถึงจะถูกต้องตามกฎหมาย?
ตาม พ.ร.บ. ว่าด้วยการกระทำความผิดเกี่ยวกับคอมพิวเตอร์ (ฉบับที่ 2) พ.ศ. 2560 กำหนดให้ผู้ให้บริการต้องจัดเก็บข้อมูลจราจรทางคอมพิวเตอร์ไว้ไม่น้อยกว่า 90 วันนับแต่วันที่ข้อมูลนั้นเข้าสู่ระบบ
Q: ถ้าไม่มี Syslog Server จะเก็บ Log ตาม พ.ร.บ. คอมพิวเตอร์ ได้อย่างไร?
สามารถใช้บริการ Cloud RADIUS Server หรือติดตั้ง Cloud Log Management จาก SIAM-LOGIN ที่เชื่อมต่อกับ MikroTik ผ่าน Remote Logging ได้โดยไม่ต้องลงทุนซื้อ Server มาตั้งเองที่ร้านครับ
ต้องการความช่วยเหลือหรือจ้างวางระบบ Network?
ทีมวิศวกร SIAM-LOGIN ยินดีให้คำปรึกษา ออกแบบระบบ และจัดส่งทีมเข้าติดตั้งหน้างาน