วันพฤหัสบดีที่ 3 พฤศจิกายน พ.ศ. 2559

Mikrotik HotSpot

ในปัจจุบันนี้ มีการใช้งาน HotSpot กันแพร่หลาย เนื่องจากบริหารจัดการผู้ใช้งานระบบเครือข่ายได้ง่ายกว่าการใช้รหัสผ่านร่วมกันหลาย ๆ คน อีกทั้งยังสามารถปรับแต่งการให้บริการของแต่ละกลุ่ม แต่ละผู้ใช้ตามความต้องการ สามารถตัดการเชื่อมต่อ ตรวจสอบ และแก้ไขได้สะดวกกว่า เป็นต้น

HotSpot นั้นมักจะมากับอุปกรณ์เครือข่ายที่มีราคาแพง อย่างเช่น Cisco, Aruba ถ้าเป็น Opensource อย่าง ChilliSpot หรือ CoovaChilli ก็มีความซับซ้อนในการติดตั้งสูง และ บางตัวก็หยุดพัฒนาต่อไปแล้ว Mikrotik เป็น OS Router (รวมถึง Hardware) ที่ใช้งานง่าย ติดตั้งผ่านระบบ GUI จึงเป็นอีกทางเลือกที่นำมาทดลองใช้งาน

การใช้ Mikrotik สำหรับทำเป็น HotSpot มีขั้นตอนดังนี้

Step:

  1. Mikrotik installation
  2. Configure Mikrotik
  3. Client virtual machine
  4. Configure Hotspot
    1. User Profiles
    2. Walled Garden
    3. Web Templates
  5. Applied

Mikrotik installation

เริ่มต้น ให้ download Virtual machine จาก http://www.mikrotik.com/download เลือก vmdk (support ทั้ง virtual box และ vmware) version 6.37.1 (Current)



เปิดโปรแกรม Virtual box เลือกเมนู Machine -> New...

กำหนด
Name: MikrotikHotspot,
Type: Linux, version: Linux 2.4 (64 bit),
Memory 512 MB,
Harddisk: Use an existing hard disk file
จากนั้นเลือกไฟล์ chr-6.37.1 vmdk


จากนั้นกด Create เพื่อสร้าง Virtual machine และ เปิด vm (Virtual machine)
start เพื่อเปิด vm login ด้วย User: admin   Password:  (ให้กด Enter ผ่านไปเลย)
Software license กด Enter ผ่านไป และ กด q เพื่อออกจากรายการ


Note: กด Ctrl (ทางขวา) เป็นการออกจากหน้า Virtual machine

ตัวอย่างคำสั่ง:
> ip address print
> ip route print
> interface ethernet print
> sys shutdown

? : help,   .. ย้อนกลับมาก่อนหน้า

เพิ่มเติม: http://wiki.mikrotik.com/wiki/Manual:Console

ให้ configure vm ให้มีการเชื่อมต่อดังนี้
แสดงการเชื่อมต่อของ Mikrotik Router OS

ค่า default ของ vm จะกำหนดการเชื่อมต่อไว้เป็น NAT ให้เราเปลี่ยน เป็น Bridge Adapter โดยสั่งปิดตัว vm ก่อน จากนั้นให้ click ขวา ที่ vm ตัวนั้นและเลือก Settings -> Network และกำหนด Adapter ดังนี้

Adapter1: (เป็น WAN interface เชื่อมต่อ Internet)

Adapter2: (เป็น LAN interface เชื่อมต่อกับเครื่องลูกข่าย)

start virtual machine และ Configure ระบบผ่าน winbox  (อยู่ในหน้า download)

Configure Mikrotik

การ Configure Mikrotik สามารถ Configure ผ่าน web site URL http://172.26.1.165/webfig/ (ต้องเป็น WAN link)



webfig ที่ใช้ใน browser หากมีการ configure หลายอย่าง และเปิด browser เพื่อเข้าเว็บอื่น ๆ ด้วย browser จะ crash เป็นบางครั้ง แนะนำให้ใช้ winbox v3.7 เชื่อมต่อไปยัง vm โดยใช้ MAC Address จะเสถียรกว่า



เมื่อ login เข้ามาได้แล้ว ให้เลือกที่ IP -> Addresses เพื่อกำหนดค่า IP address ให้กับ Network Interface
จะเห็น IP 172.26.1.165/24 ใน WAN interface ether1 ที่กำหนดไว้ก่อนหน้านี้แล้ว (ผ่าน DHCP จาก Network ภายนอก)

หาก IP Address configure ไว้เรียบร้อยแล้วจะสามารถ ping www.google.com ได้

Note: หาก DHCP จาก WAN interface ไม่ทำงาน สามารถไปกำหนดที่ IP -> DHCP Client -> + -> Interface (เลือก ether1 ที่เป็น WAN)  แล้วกด OK เพื่อรับ IP จาก Internet

Configure LAN interface

กดปุ่ม + เพื่อ ปรับแต่ง IP address ใน LAN interface ether2 (10.0.1.254/24)


(สามารถปรับแต่ง ชื่อ Network Interface ได้ จากเมนู Interface)

กำหนด Hotspot server ที่ LAN interface เพื่อปล่อย IP address ให้กับเครื่องลูกข่าย

เลือก IP -> Hotspot เลือก Hotspot Setup


เลือก HotSpot Interface เป็น LAN interface (ether2) โดยกำหนดค่าตามข้อมูลนี้ (กด Next ไปเรื่อย ๆ)

Local Address of Network: 10.0.1.254/24
Address Pool of Network: 10.0.1.1-10.0.1.253
Select Certificate: none
IP Address of SMTP Server: 0.0.0.0
DNS Servers: 172.26.0.5
DNS Name: (blank)
HotSpot user: admin / (blank password)



เป็นการ Setup HotSpot เรียบร้อย

Client Virtual Machine

ทดสอบ Client โดยการสร้าง VM Hotspot อีกตัว (จะใช้ Linux หรือ Windows ก็ได้)
ในตัวอย่างนี้ ผมจะใช้ Windows 7 ที่ download ได้จาก https://developer.microsoft.com/en-us/microsoft-edge/tools/vms/  เลือก IE8 on Win7 / Virtual Box เมื่อ download เสร็จเรียบร้อยให้แตก ZIP file มา จะได้ IE8 - Win7.ova จากนั้นการ import VM เข้ามาผ่านเมนูของ Virtual Box

File -> Import ... -> Appliance to import (IE8-Win7.ova) แล้วกด Import (รอประมาณ 5 นาที)

หลังจากได้ VM Windows7 มาแล้วให้ Setup Network Interface ใน Virtual Box ให้เป็น
Attach to: Internal network
Name: intnet

และ start VM Windows 7

ทดสอบว่า DHCP ที่ Hotspot แจกมา ทำงานได้ถูกต้องหรือไม่


 ทดลองเปิด IE เพื่อเข้า Web site



ถ้ากำหนดได้ถูกต้องจะ Redirect กลับมาที่หน้า Login

Login ด้วย User: admin,  password: (blank)  จะเข้า web site ได้

Configure Hotspot

กลับมาตรวจสอบที่ Mikrotik ที่ Hotspot Console ใน Tab Active และ Host จะเห็นรายการของ admin ได้ login เข้ามา

Tab Host คือ Client ที่ทำการเชื่อมต่อ (เกาะ) กับ Switch (หรือ Access Point) แล้ว มีการเรียกหน้า Page ที่ให้ Login
Tab Active คือ Client ที่ login ผ่านมาได้แล้ว

User Profiles:

เราสามารถสร้าง User Profiles ใหม่ โดยไปที่ Tab ของ User Profiles กด + เพื่อสร้าง User profiles ใหม่



Name: uprof1
Idle Timeout: ถ้าไม่เล่น net นานเท่าไรจึงตัดออก กำหนดเป็น none คือ ไม่จำกัด หรือถ้าจำกัด 2 นาที ก็กำหนดเป็น 00:02:00
Keepalive Timeout: ถ้าปิดเครื่องไปโดยไม่ได้ logout  ทำให้ Hotspot (Mikrotik) ติดต่อเครื่องไม่ได้ นาน 2 นาที จึงจะยกเลิกการเชื่อมต่อ
Status Autorefresh: ให้ HotSpot จะติดต่อเครื่องที่มาเชื่อมต่อด้วยทุก ๆ 1 นาที
Shared Users: 5  หมายถึง 1 user account ที่เลือก profile นี้ สามารถ ใช้งานได้ 5 อุปกรณ์พร้อมกัน
Rate Limit (rx/tx): 512k/5M  หมายถึง Upload 512 Kbps, Download 5 Mbps (rx คือ ฝั่ง upload ของ user)
Add MAC Cookie ให้เอาออก ถ้าเลือกไว้ แสดงว่า ถ้า login ผ่านมาได้ 1 ครั้งก็จะเล่นได้ตลอด เพราะมีการจำ Cookie ไว้ (สามารถไปลบออกได้ที่ Tab Cookies)


การสร้าง Users
หลังจากสร้าง User Profiles แล้ว ก็ให้สร้าง User โดยกำหนดให้ User ที่สร้างเลือกใช้ User Profiles ที่ได้สร้างไว้แล้วดังนี้
ไปที่ Tab Users -> กดเครื่องหมาย +


เลือก
Server: hotspot1
Name: user1
Password: 123456
Profile: uprof1

กดปุ่ม OK เพียงเท่านี้ user1 ก็สามารถ Login ใช้งานได้

ดูรายละเอียดของค่าตัวแปรอื่น ๆ เพิ่มเติม ของ Users และ User Profiles ได้ที่ http://wiki.mikrotik.com/wiki/Manual:IP/Hotspot/User#User_Profile

ลองเข้า download program หรือเข้า http://www.speedtest.net  ก็จะเห็นว่า rx/tx จำกัดความเร็วไว้ อาจจะไม่ตรงกับที่ กำหนดเพราะทั้งหมดเป็นการทำงานบน VM และ ความเร็วในช่วงเวลานั้น 


ถึงแม้ว่าใน User/ User Profile ไม่ได้ Add MAC Cookie เข้าไป แต่ถ้าไปดูใน Tab Cookie ก็จะเห็น Cookie อยู่


เครื่องหมาย ลบ เพื่อ Cookie  ออก

จากนั้นแก้ไขโดยเลือก Tab server Profile -> hsprof1 -> Login แล้วเอา check หน้า Cookie ออก


สั่ง Logout ที่ URL http://10.0.1.253/logout หรือจะไป เอาออกใน Tab Host/Active ก็ได้

คราวนี้ Login เข้าไปใหม่ก็จะไม่มี Cookie แล้ว ถ้ามี Cookie เก็บไว้ แม้จะปิดไปแล้วก็จะสามารถเข้าหน้า web ได้ อัตโนมัติ แม้ว่าจะปิดไปแล้ว

Walled Garden:

เป็นการอนุญาต/หรือไม่อนุญาต ให้เข้าไปยัง Server ปลายทาง โดยที่ไม่จำเป็นต้อง Authentication
เช่น กำหนด Destination host ไว้เป็น www.sanook.com เครื่องลูกข่ายสามารถเข้า web www.sanook.com โดยที่ไม่จำเป็นจะต้อง Login ก่อน



Web template:

การปรับแต่งหน้า web สามารถ download หน้า login ได้จากเมนู File -> File List  
ทดลองแก้ไขไฟล์ hotspot\login.html โดยการ ลากไฟล์ (Drag) มาวางไว้ที่หน้า Desktop เพื่อทำการแก้ไข  เมื่อแก้ไขเสร็จเรียบร้อยแล้ว ก็ลากกลับไปวางไว้ที่เดิม (Copy กลับเข้าไปยัง Hotspot server)



จากนั้นทดลอง Logout และ Login ใหม่อีกรอบจะเห็นว่าหน้า Login ได้เปลี่ยนไปตามที่ได้แก้ไขแล้ว

Applied:

หากต้องการนำไปใช้เป็นตัว Authentication Gateway แบบง่าย ๆ ก็สามารถใช้ PC ที่มี Network Interface 2 interface เลือก Network Interface เป็น Bridge และ กำหนดค่าตามตัวอย่าง




หรือสามารถนำไปทดลองใช้ Notebook เป็น Hotspot โดยให้ Wireless Network Interface เป็น WAN port ส่วนที่เชื่อมต่อกับ Internet (ผ่าน PSU-WiFi Authentication) และ ส่วนที่เป็น LAN Port ต่อกับ Access Point (AP) เพื่อปล่อย DHCP ให้อุปกรณ์ตัวอื่น ๆ ที่มาเชื่อมต่อ (กรณีนี้จะคล้ายกับเป็น Switch เหมือนรูปข้างบน) หรืออาจจะเป็น Broadband Router เช่น Linksys ดังรูป (ซึ่งกรณีนี้จะมี NAT + DHCP ของตัว Router เองอีกชั้นหนึ่ง)



หรืออาจจะให้ Mikrotik OS Router เชื่อมต่อกับ FreeRadius ในการพิสูจน์ตัวตนผู้ใช้งาน


2 ความคิดเห็น:

Mongkonrat Noosuwan กล่าวว่า...

สนุกมากครับอาจารย์

ไม่ระบุชื่อ กล่าวว่า...
ความคิดเห็นนี้ถูกลบโดยผู้ดูแลระบบของบล็อก