การติดตั้ง Logs Server บน Rocky Linux 9 (ตอนที่ 1)

การติดตั้ง Logs Server บน Rocky Linux 9 (ตอนที่ 1)

ในยุคที่ระบบสารสนเทศประกอบด้วยหลายเซิร์ฟเวอร์ หลายบริการ และหลายแอปพลิเคชัน การกระจายตัวของไฟล์บันทึกเหตุการณ์ (Log) กลายเป็นอุปสรรคสำคัญต่อการดูแลระบบ การตรวจสอบปัญหา และความมั่นคงปลอดภัย

บทความชุดนี้มีเป้าหมายเพื่อแนะนำการสร้าง Logs Server (Centralized Logging Server) บน Rocky Linux 9 อย่างเป็นขั้นตอน เริ่มตั้งแต่การวางแนวคิด สถาปัตยกรรม ไปจนถึงการติดตั้งและทดสอบใช้งานจริง

ตอนที่ 1 จะเน้น “การวางพื้นฐาน” และการติดตั้ง Logs Server ด้วย rsyslog ซึ่งเป็นเครื่องมือมาตรฐานที่ใช้งานง่าย เหมาะสำหรับ SysAdmin ที่ต้องการติดตั้งระบบล็อกเซิร์ฟเวอร์กลางขององค์กร


แนวคิดของ Logs Server (Centralized Logging)

Logs Server คือเซิร์ฟเวอร์ศูนย์กลางที่ทำหน้าที่รวบรวม Log จากระบบต่าง ๆ เช่น

  • Web Server (Apache, Nginx)

  • Database Server (MySQL, MariaDB, SQL Server, Oracle, InfluxDB)

  • Mail Server (Postfix, Dovecot)
  • File Server (Samba)
  • Directory Server (AD, OpenLDAP, FreeIPA)
  • FTP Server (Vsftpd, ProFTPd)
  • Application Server

  • Network / Security Devices

ประโยชน์

  • ตรวจสอบปัญหาได้จากจุดเดียว

  • วิเคราะห์เหตุการณ์ย้อนหลัง (Forensic / Audit)

  • เพิ่มประสิทธิภาพงานด้าน Cybersecurity

  • รองรับการทำ Dashboard และ Alert ในอนาคต


สถาปัตยกรรมเบื้องต้น

โครงสร้างในตอนที่ 1 จะเป็นรูปแบบพื้นฐานดังนี้

[Client Servers]
├─ Web Server
├─ Database Server
├─ File Server
├─ Mail Server
├─ Mail Server
├─ Directory Server
├─ Printer Server
├─ CCTV Server
├─ Streaming Server
└─ Application Server

│ (TCP/UDP 514)

[Central Logs Server]
Rocky Linux 9
rsyslog
/var/log/remote/

การเตรียมระบบ Logs Server

ข้อกำหนดขั้นต่ำ

  • OS: Rocky Linux 9 (Minimal Install)

  • CPU: 2 Core

  • RAM: 2–4 GB

  • Storage: 50 GB ขึ้นไป (ขึ้นกับปริมาณ Log)

  • Network: IP แบบ Static

ตรวจสอบเวอร์ชันระบบ

cat /etc/rocky-release
 

ติดตั้ง rsyslog บน Rocky Linux 9

โดยปกติ rsyslog จะถูกติดตั้งมาแล้ว แต่ควรตรวจสอบและอัปเดต

sudo dnf install rsyslog -y
sudo systemctl enable rsyslog
sudo systemctl start rsyslog

ตรวจสอบสถานะบริการ

systemctl status rsyslog
 

เปิดรับ Log จากเครื่องภายนอก

แก้ไขไฟล์คอนฟิกหลัก

sudo nano /etc/rsyslog.conf

ยกเลิกคอมเมนต์ (หรือเพิ่ม) บรรทัดต่อไปนี้

module(load="imudp")
input(type="imudp" port="514")
 
module(load="imtcp")
input(type="imudp" port="514")

คำแนะนำเชิงปฏิบัติ

  • UDP ใช้งานง่าย เหมาะกับ Lab / Classroom

  • TCP มีความเสถียรกว่า เหมาะกับ Production

รีสตาร์ตบริการ

sudo systemctl restart rsyslog

ตั้งค่า Firewall

sudo firewall-cmd --add-port=514/tcp --permanent
sudo firewall-cmd --add-port=514/udp --permanent
sudo firewall-cmd --reload

ตรวจสอบพอร์ต

ss -tunlp | grep 514
 

กำหนดโฟลเดอร์จัดเก็บ Log จากเครื่องลูกข่าย

สร้างไดเรกทอรี

sudo mkdir -p /var/log/remote
sudo chmod 755 /var/log/remote

(ในตอนถัดไป จะสอนการแยก Log ตาม Hostname / IP)


สรุป

ตอนที่ 1 นี้ เราได้

  • เข้าใจแนวคิด Centralized Logging

  • ติดตั้งและเปิดใช้งาน rsyslog บน Rocky Linux 9

  • เตรียม Logs Server ให้พร้อมรับข้อมูลจากเครื่องอื่น

ใน ตอนที่ 2 จะเข้าสู่

✅ การตั้งค่า Client Server

✅ การแยก Log ตาม Host / Service

✅ การทดสอบส่ง Log แบบใช้งานจริง



เขียนและรวบรวมโดย
ฝ่ายวิชาการซิสแอดมินโนว์เลจ
https://www.sysadmin.in.th
24 January 2026