Sysnet Board คู่มือ การใช้งานอุปกรณ์ Network

การ Config อุปกรณ์ เครือข่าย Network Device => อุปกรณ์ Mikrotik Router => หัวข้อที่ตั้งโดย: yod เมื่อ วันที่ 18 มีนาคม 2014, 13:14:11

ชื่อ: เก็บ Log การใช้งาน Internet จาก Mikrotik Router
โดย: yod เมื่อ วันที่ 18 มีนาคม 2014, 13:14:11

เก็บ Log การใช้งาน Internet จาก Mikrotik Router




เคยทำไว้นานแล้วครับ และในหัวข้อนี้จะมีการเก็บเพิ่มเติมในส่วนหมายเลข IP Address และ Mac Address ที่ Login เข้ามาด้วย User อะไร ซึ่งจะช่วยให้ตรวจสอบได้ง่ายขึ้นครับ

ข้อเสียสำหรับการเก็บ log แบบนี้คือถ้า User เยอะ จะใช้เนื้อที่ในการจัดเก็บค่อนข้างเยอะ ไม่ควรใช้กับระบบที่ Users ใช้งานพร้อมๆกันเกิน 30-50 Users ครับ และจะเปลือง Traffice ในเครือข่ายค่อนข้างมาก เพราะจะต้องส่งข้อมูลไปยังเครื่อง Syslog Server ผ่านสาย Lan หรือ Wireless จะไม่เหมือนพวกโปรแกรม Internet Billing (https://www.sysnetcenter.com/24-hotspot-billing-internet-) ที่ติดตั้งบนเครื่อง Computer โดยตรง เพราะข้อมูลจะบันทึกลง Harddisk ผ่านสาย SATA ซึ่งจะเร็วกว่าเยอะและไม่รบกวน Traffic บนเครือข่าย และที่สำคัญคือ จะไม่ตรงกับ พรบ. ในเรื่องของการเข้ารหัสของไฟล์ข้อมูล

แต่ก็อีกละครับ ดีกว่าไม่มี อย่างน้อยเวลามีเรื่องมีราวขึ้นมาก็ยังพอตรวจสอบกันได้ครับ  ;D ;D


เครื่อง
NAS (https://www.sysnetcenter.com/22-network-attached-storage) ที่มี Service Syslog Server เดี๋ยวนี้ผมไม่แน่ใจว่ามียี่ห้อหรือรุ่นไหนบ้างครับ เดี๋ยวหาข้อมูลจากผู้นำเข้าแต่ละรายให้อีกที ในตัวอย่างผมใช้ NAS ของ Synology รุ่น DS213+ (https://www.sysnetcenter.com/989-synology-dsc213-network-attatch-storage.html) ซึ่งถ้าเอามาเก็บ Log อย่างเดียว ไม่ค่อยคุ้มครับ แต่พอดีผมเอามาใช้ Backup งานและก็ไว้ Download Bittorrent ด้วย ถ้าประหยัดๆ ก็น่าจะเป็นพวก Zyxel หรือ DLink ก็ได้ครับ หรือจะใช้เครื่อง Atom มาลง Linux พวก Ubutu หรือ CentOS และลง Syslog-ng ก็ได้เช่นกัน

ผมเคยทำโปรแกรม Syslog Server เอาไว้จะลองใช้ดูก่อนก็ได้นะครับ
https://www.sysnetcenter.com/software/exe.zip (https://www.sysnetcenter.com/software/exe.zip) แต่ยังไม่มีเวลาพัฒนาต่อเลย


เครื่อง NAS ที่ทดสอบ หมายเลข IP Address จะเป็น 192.168.2.3 กำหนด NTP Time ในเครื่อง NAS กับ Mikrotik ให้เรียบร้อยด้วยนะครับ ให้เวลาตรงกัน


1. Login เข้า Winbox ทำการ Enable Proxy โดยเข้า Menu IP --> Web Proxy

(https://www.sysnetcenter.com/board/images/mikrotik/log-internet/mikrotik-keep-log-001.gif)


หรือจะ Run Script ตามนี้

/ip proxy
set enabled=yes
set src-address=0.0.0.0
set port=8080
set parent-proxy=0.0.0.0
set parent-proxy-port=0
set cache-administrator="webmaster"
set max-cache-size=none
set cache-on-disk=no
set max-client-connections=600
set max-server-connections=600
set max-fresh-time=3d
set always-from-cache=no
set cache-hit-dscp=4
set serialize-connections=no



2. สร้าง NAT Redirect Port ให้ข้อมูล HTTP (80) วิ่งเข้า Proxy (8080) ส่วน Port HTTPS (443) ยังไม่ได้ทดสอบนะครับ

เข้า Menu IP --> Firewall --> NAT

Tab General
Chain: dstnat
Protocol: TCP
DST Port: 80

(https://www.sysnetcenter.com/board/images/mikrotik/log-internet/mikrotik-keep-log-002.gif)

Click [Apply]

Tab Action
Action: redirect
To Ports: 8080

(https://www.sysnetcenter.com/board/images/mikrotik/log-internet/mikrotik-keep-log-003.gif)

Click [OK]


หรือจะ Run Script ตามนี้

/ip firewall nat add action=redirect chain=dstnat disabled=no dst-port=80 protocol=tcp to-ports=8080


ลากขึ้นมาไว้ด้านบนสุด

(https://www.sysnetcenter.com/board/images/mikrotik/log-internet/mikrotik-keep-log-004.gif)


3. เข้า Menu System --> Logging

Tab Action

เพิ่ม Log Action
Name: syslog
Type: remote
Remote Address: 192.168.2.3 (เครื่อง NAS ที่มี Service Syslog Server)

(https://www.sysnetcenter.com/board/images/mikrotik/log-internet/mikrotik-keep-log-005.gif)

Click [OK]

Tab Rules
เพิ่ม Log Rule
Topics: web-proxy
debug ให้มีเครื่องหมาย ! นำหน้าด้วยนะครับ หมายถึงเป็นการไม่เก็บข้อมูล Debug ไม่งั้นจะเยอะ
Action: syslog

(https://www.sysnetcenter.com/board/images/mikrotik/log-internet/mikrotik-keep-log-006.gif)

Click [OK]


Tab Rules
เพิ่ม Log Rule
Topics: script
Topics: info
Action: syslog

(https://www.sysnetcenter.com/board/images/mikrotik/log-internet/mikrotik-keep-log-007.gif)

Click [OK]

หรือจะ Run Script ตามนี้

/system logging action
add name=syslog remote=192.168.2.3 target=remote

/system logging
add action=syslog topics=web-proxy,!debug
add action=syslog topics=script,info


(https://www.sysnetcenter.com/board/images/mikrotik/log-internet/mikrotik-keep-log-008.gif)


4. ทีนี้ก็สร้าง Event เวลาผู้ใช้งาน Login เพื่อเก็บค่า IP และ MAC Address

เข้า Menu --> IP --> Hotspot

Tab User Profiles เลือก property ของ default

ใส่ Scripts ตามรูปครับ

(https://www.sysnetcenter.com/board/images/mikrotik/log-internet/mikrotik-keep-log-009.gif)

On Login:
:local whouser $user;
:local whoip $address;
:local macaddr [/ip hotspot active get [find user=$whouser] mac-address];

:log info ("User Login:".$whouser." IP :".$whoip." Mac:".macaddr);

On Logout:
:log info ("User Logout: ".$user);


หรือจะสั่ง Run Script

/ip hotspot user profile
set [ find default=yes ] idle-timeout=none keepalive-timeout=2m \
    mac-cookie-timeout=3d on-login=":local whouser \$user;\r\
    \n:local whoip \$address;\r\
    \n:local macaddr [/ip hotspot active get [find user=\$whouser] mac-address\
    ];\r\
    \n\r\
    \n:log info (\"User Login:\".\$whouser.\" IP :\".\$whoip.\" Mac:\".macaddr\
    );" on-logout=":log info (\"User Logout: \".\$user);"



การ Config บนอุปกรณ์ Mikrotik มีแค่นี้ครับ ส่วนการ Config Syslog Server บนอุปกรณ์ NAS ก็แค่ Enable Service เท่านั้นครับ

(https://www.sysnetcenter.com/board/images/mikrotik/log-internet/mikrotik-keep-log-010.gif)


ทดสอบ

เมื่อมีการ Login เข้ามาในระบบ Hotspot ใน Log จะแจ้งหมายเลข IP, MAC Address และ UserName

(https://www.sysnetcenter.com/board/images/mikrotik/log-internet/mikrotik-keep-log-011.gif)


เครื่องที่ Login เข้าระบบ Hotspot

(https://www.sysnetcenter.com/board/images/mikrotik/log-internet/mikrotik-keep-log-012.gif)


เข้าใช้งาน Internet ในส่วน Proxy Log จะเก็บหมายเลข IP Address ว่าเข้า Web site อะไร เวลาไหน

(https://www.sysnetcenter.com/board/images/mikrotik/log-internet/mikrotik-keep-log-013.gif)


เมื่อทำการ Logout หรือ ขาดการเชื่อมต่อ จะมีการเก็บเวลาที่ Logout ของ User

(https://www.sysnetcenter.com/board/images/mikrotik/log-internet/mikrotik-keep-log-014.gif)


ตรวจสอบดูการใช้งาน ให้ใช้ function search ของ Service Syslog จากในตัวอย่าง จะเห็นว่าใช้งานในช่วง 21.35 - 21.38 ได้หมายเลข IP Address 192.168.2.181

(https://www.sysnetcenter.com/board/images/mikrotik/log-internet/mikrotik-keep-log-015.gif)


ทีนี้ก็ตรวจสอบช่วงเวลาที่ใช้งานว่าเข้า Website อะไรบ้างครับ

(https://www.sysnetcenter.com/board/images/mikrotik/log-internet/mikrotik-keep-log-016.gif)



เรียบร้อยครับ ลองทดลองใช้งานกันดูนะครับ  ;D ;D

ชื่อ: Re: เก็บ Log การใช้งาน Internet จาก Mikrotik Router
โดย: superangel12 เมื่อ วันที่ 24 สิงหาคม 2015, 12:29:56
` ??? ` เก็บ https ต้องทำไงเพิ่มครับ
ชื่อ: Re: เก็บ Log การใช้งาน Internet จาก Mikrotik Router
โดย: thooka เมื่อ วันที่ 5 เมษายน 2016, 17:33:29
เหมือน กันเลย คร๊าบ HTTPS ยังเก็บไม่ได้
ชื่อ: Re: เก็บ Log การใช้งาน Internet จาก Mikrotik Router
โดย: yod เมื่อ วันที่ 11 เมษายน 2016, 11:25:06
https เก็บไมใด้ครับ
ชื่อ: Re: เก็บ Log การใช้งาน Internet จาก Mikrotik Router
โดย: okezamako เมื่อ วันที่ 31 พฤษภาคม 2019, 20:38:09
ผมจะทำการเก็บ พวกเว็บ youtube กับ facebook ทำไมผมทำตามแล้วเก็บไม่ได้อะครับ
ชื่อ: Re: เก็บ Log การใช้งาน Internet จาก Mikrotik Router
โดย: Sugoiine เมื่อ วันที่ 5 กุมภาพันธ์ 2020, 17:01:40
ผมก็เก็บไม่ได้นะ

Users found this pages searching for: