โปรแกรม Syslog Server สำหรับเก็บ Log ร่วมกับ Mikrotik

(1/7) > >>

yod:
    
โปรแกรม Syslog Server สำหรับเก็บ Log ใช้งานร่วมกับ Mikrotik






พอดีมีลูกค้า Mikrotik สอบถามมาครับ เรื่อง Log ของตัว Routerboard ต้องการจะตรวจสอบ Error, Information ต่างๆ ผมก็เลยทำโปรแกรม Syslog Server แบบง่ายๆขึ้นมา โดยจะเก็บได้สูงสุด 65535 บรรทัด ถ้าเกินจะลบบรรทัดแรกออก (first in first out) ทีแรกจะให้ write ลง ไฟล์ทุกบรรทัดแทน แต่น่าจะมีปัญหาเรื่อง transaction ไม่ทัน

ส่วนการใช้งานร่วมกับอุปกรณ์ Router รุ่นอื่นๆ ผมยังไม่ได้ลองครับ ไม่แน่ใจว่า Syslog Raw Data มันจะมารูปแบบเดียวกันหรือเปล่า ถ้าลองแล้ว click ตรง debug แล้ว copy ตรง text box ด้านล่างของโปรแกรม post ในกระทู้นี้ให้ผมด้วยนะครับ  ;D


Download ได้ที่ Link จากนั้นก็แตกไฟล์ออกมา double click ที่โปรแกรมใช้งานได้เลยครับ ตั้งค่า IP Address ของเครื่อง Computer ที่ติดตั้งที่ menu Config


รายละเอียดการ Update software ผมจะให้อยู่ท้ายกระทู้นี้ครับ


การ config ตัว routerboard ให้ส่ง log ออกมาที่เครื่องที่ลงโปรแกรมครับ

1. เข้า Winbox --> System --> Logging
ที่ Tab Actions --> Click [ + ]
Name: syslog
Type: remote
Remote Address: IP Address ของเครื่องที่ลงโปรแกรม
Src Address: 0.0.0.0
Click [OK]





ที่ Tab Rules --> Click [ + ]
Topics: เลือกรูปแบบ Log ที่ต้องการ เช่น info, Warning, Error, Critical
Action: syslog

Click [OK]






ปล. โปรแกรมนี้เพื่อความรวดเร็วผมเลยเขียนแบบลูกทุ่งมาก  ;D ;D ;D
และเขียนแจกฟรี ไม่ขายแน่นอนครับ ถ้ามี bug หรือต้องการอะไรเพิ่มเติม แจ้งได้ที่หัวข้อนี้เท่านั้นนะครับ



//Updated 26/12/2012

เพิ่ม function การเก็บ log ไม่แน่ใจว่าตรงตาม พรบ.หรือเปล่าครับ แต่มีแสดง Date/Time, Login name, IP Address, Website ส่วน mac address เดี๋ยวหาอีกทีครับ




ก่อน Click Start ที่โปรแกรมให้ Click Main --> "Mode เก็บ log" ครับ จะมีการบันทึกลง text file ที่ folder log ของโปรแกรม


สร้าง Proxy ก่อน โดย ใช้ code ด้านล่างครับ แก้ไข ip address ให้ตรงกับขา lan ของ router (ใน code จะเป็น 192.168.1.1) ที่ใช้ แล้ว copy ลง terminal ใน winbox ได้เลยครับ ส่วนที่ tab rules ใน loging ให้เพิ่ม web-proxy กับ hotspot

โค๊ด:

/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

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

#/ip firewall filter
#add chain=input in-interface=pppoe-out1 src-address=0.0.0.0/0  protocol=tcp dst-port=8080 action=drop


เสร็จแล้วก็ลากมาไว้ด้านล่างสุดครับ






เพิ่ม Loging ในส่วนของ Proxy ทำตามรูปเลยครับ




และก็เพิ่ม log ในส่วน DHCP ด้วยครับ





หรือให้เก็บตอน User มีการ Login (ใน Usermanager ก็จะโชว์เหมือนกันนะครับ)


เข้าที่ Menu IP --> Hotspot --> User Profile
Double click ที่ User-Profile ที่สร้างไว้ ที่ tab script

เพิ่ม script ในส่วน on-login

โค๊ด:

:log info ("User login: $user")
:log info ("IP: ".$address)
:log info ("Mac Address:" $user mac-address)



เพิ่ม Loging ในส่วน Info จะได้ log ตามรูปครับ




++++++++++++++++++++
+        Release note.       +
++++++++++++++++++++
V.0.2.2
- Add filter6.
- Check box for auto save info log to text file.
- Add sysnet banner.

V.0.2.1
- Improve speed compare string > 40% .
- Add mode keep log.
- Add filter for check type of log.
- Writeline to texfile.
- Create log file by yyyymmdd.txt in log folder.

V.0.1.2
- add filter function.

V.0.1.1
- add debug mode for check raw data.
- add export log to text file.

yod:
เดี๋ยวคืนนี้จะ run โปรแกรมค้างไว้ครับ จะทดสอบว่าตอนยิง log ไปเรื่อยๆช่วงกำลังเปลี่ยนวันจะเป็นยังไง  ;D

yuttapong:
รันใน syslog ไม่ขึ้นครับ ไม่ขึ้นเหมือนคุณยอดนะครับ

yod:
อ้างจาก: yuttapong ที่ วันที่  27 ธันวาคม 2012, 21:09:53

รันใน syslog ไม่ขึ้นครับ ไม่ขึ้นเหมือนคุณยอดนะครับ


IP address ใน logging ส่วนของ remote ใส่ค่าเครื่องที่ลงโปรแกรม syslog นะครับ และในตัวโปรแกรมใส่หมายเลข ip ของเครื่องที่ลง ปิด/เปิด โปรแกรมแล้วกด start ครับ

yuttapong:
ทำแล้วครับ แต่ไม่มี log ส่งมาที่โปรแกรม sysnetlog.exe ส่วนในตัว  mikrotik ไม่มีปัญหาครับ ที่ผมโพสว่ารัน syslog ไม่ขึ้น หมายถึง รันแล้วไม่ยอมส่งค่า log มาที่โปรแกรม sysnetlog ครับ ผมก็ทำตามขั้นตอนนะคับ จะเกี่ยวกับที่ผมทำ forward port remote 3389 ไว้ไหมครับ

นำร่อง

[0] ดัชนีข้อความ

[#] หน้าถัดไป