ติดตั้ง syslog-ng สำหรับรับ log message จาก Mikrotik Router
1. เตรียมเครื่อง Server ด้วย Debian 10 และ update/upgrade ให้เรียบร้อย
root@livingsoft:~#apt update
root@livingsoft:~#apt upgrade
2. ติดตั้งโปรแกรม Syslog-ng สำหรับรับ log message จาก Mikrotik
root@livingsoft:~#apt install syslog-ng
3. ทำการเพิ่ม config ใน /etc/syslog-ng/conf.d โดยตั้งชื่อไฟล์เป็น mikrotik.conf (ต้องลงท้ายด้วย .conf)
root@livingsoft:~#vim /etc/syslog-ng/conf.d/mikrotik.conf
source s_mikrotik {
udp(port(514));
//กำหนดให้มีการส่งข้อมูลมาแบบ udp ที่ port 514
};
destination d_mikrotik_firewall {
//กำหนดปลายทางของ Firewall log
file("/var/log/mikrotik/${HOST}/${YEAR}/${MONTH}/${DAY}/$HOUR-firewall.log" create_dirs(yes));
//ให้มีปลายทางไปที่ /var/log/mikrotik/{IP ของเครื่อง Mikrotik}/{ปี}/{เดือน}/{วัน}/{ชั่วโมงที่}-firewall.log
};
filter f_mikrotik_firewall {
//กำหนดให้เลือกเฉพาะ Log ที่ส่งมาจาก IP 10.0.0.1 และ เป็น firewall log
host("10.0.0.1") and match("firewall");
};
log {
//กำหนดให้มีการบันทึก log โดยมีเงื่อนไข ตามนี้ ต้นทาง -> คัดเลือกโดย Filter -> บันทึกลงปลายทาง
source(s_mikrotik); filter(f_mikrotik_firewall); destination(d_mikrotik_firewall);
};
destination d_mikrotik_dns {
//กำหนดปลายทางของ DNS log
file("/var/log/mikrotik/${HOST}/${YEAR}/${MONTH}/${DAY}/$HOUR-dns.log" create_dirs(yes));
};
filter f_mikrotik_dns {
//กำหนดให้เลือกเฉพาะ Log ที่ส่งมาจาก IP 10.0.0.1 และ เป็น DNS log
host("10.0.0.1") and match("dns");
};
log {
//กำหนดให้มีการบันทึก log โดยมีเงื่อนไข ตามนี้ ต้นทาง -> คัดเลือกโดย Filter -> บันทึกลงปลายทาง
source(s_mikrotik); filter(f_mikrotik_dns); destination(d_mikrotik_dns);
};
destination d_mikrotik_dhcp {
//กำหนดปลายทางของ DHCP log
file("/var/log/mikrotik/${HOST}/${YEAR}/${MONTH}/${DAY}/$HOUR-dhcp.log" create_dirs(yes));
};
filter f_mikrotik_dhcp {
//กำหนดให้เลือกเฉพาะ Log ที่ส่งมาจาก IP 10.0.0.1 และ เป็น DHCP log
host("10.0.0.1") and match("dhcp");
};
log {
//กำหนดให้มีการบันทึก log โดยมีเงื่อนไข ตามนี้ ต้นทาง -> คัดเลือกโดย Filter -> บันทึกลงปลายทาง
source(s_mikrotik); filter(f_mikrotik_dhcp); destination(d_mikrotik_dhcp);
};
4. หลังจากที่กำหนด Config ของ syslog-ng เรียบร้อยแล้ว ให้ทำการ restert service syslog-ng ใหม่
root@livingsoft:~#systemctl restart syslog-ng
เตรียมเครื่อง Mikrotik Router ให้ทำการส่ง log ไปยัง syslog-ng
1. สร้าง กฏ Firewall ให้เก็บข้อมูลจากขา LAN ที่ส่องออกไปยังขา WAN (pppoe-out1)
/ip firewall mangle add chain=forward in-interface=ether1 out-interface=pppoe-out1 action=log
2. สร้างเส้นทาง log ให้ส่งไปหา syslog-ng โดย ip 10.0.0.218 คือ ip ของเครื่อง syslog-ng
/system logging action add remote=10.0.0.218 name=syslog target=remote
3. กำหนดให้ทำการส่ง log จาก firewall ,dns ,dhcp ไปยัง suslog-ng
/system logging add action=syslog topics=firewall
/system logging add action=syslog topics=dns
/system logging add action=syslog topics=dhcp
หลังจากเสร็จเรียบร้อยแล้ว ให้กลับไปตรวจสอบที่ syslog-ng server ว่ามีการสร้างไฟล์ log ขึ้นมาให้หรือไม่
root@livingsoft:~#ls -al /var/log/mikrotik/10.0.0.1/2019/10/26
หากมีไฟล์ขึ้นตามภาพแล้ว แสดงว่า เราสามารถส่ง log message กลับมาเก็บที่ syslog-ng ได้แล้ว
เสร็จเรียบร้อยแล้ว สำหรับการจัดเก็บ log การจราจรบนเครื่อข่ายเบื้องต้น
**หมายเหตุ เป็นเพียงส่วนหนึ่งของการจัดเก็บข้อมูล logfile ตาม พ.ร.บ. คอมพิวเตอร์เท่านั้น