Heute schauen wir uns an, wie man eine zentralisierte Protokollverwaltung für den Linux-Server einrichtet. Dies hilft dem Linux-Administrator, mehrere Serverprotokolle an einem einzigen Ort zu haben. Der Linux-Administrator muss sich nicht bei jedem Server anmelden, um die Protokolle zu überprüfen, er kann sich einfach beim zentralisierten Server anmelden und mit der Überwachung des Protokolls beginnen.
Linux kennzeichnet (auth, cron, FTP, LPR, authpriv, news, mail, syslog usw.) die Protokollmeldungen, um die Art der Software anzugeben, die die Meldungen mit Schweregrad generiert hat (Alert, Critical, Warning, Notice, Info, usw.).
Weitere Informationen zu Nachrichtenlabels und Schweregraden finden Sie hier
Stellen Sie sicher, dass Sie über Folgendes verfügen, um einen Protokollserver einzurichten.
Zwei Linux-Server (Server und Client).
server.itzgeek.local 192.168.0.10
client.itzgeek.local 192.168.0.20
Syslog-Server-Setup
Installieren Sie das Rsyslog-Paket, falls Sie es nicht installiert haben.
yum -y install rsyslog
Bearbeiten Sie die /etc/rsyslog.conf
Datei.
vi /etc/rsyslog.conf
TCP oder UDP
Rsyslog unterstützt sowohl das UDP- als auch das TCP-Protokoll zum Empfangen von Protokollen. Das TCP-Protokoll bietet eine zuverlässige Übertragung von Protokollen.
UDP
Kommentieren Sie Folgendes aus, damit der Syslog-Server das UDP-Protokoll abhören kann.
VON:
# Provides UDP syslog reception #$ModLoad imudp #$UDPServerRun 514
AN:
# Provides UDP syslog reception $ModLoad imudp $UDPServerRun 514
TCP
Kommentieren Sie Folgendes aus, damit der Syslog-Server das TCP-Protokoll abhören kann.
VON:
# Provides TCP syslog reception #$ModLoad imtcp #$InputTCPServerRun 514
AN:
# Provides TCP syslog reception $ModLoad imtcp $InputTCPServerRun 514
Starten Sie den Syslog-Dienst neu
systemctl restart rsyslog
Überprüfen Sie, ob der Syslog-Server Port 514 überwacht.
netstat -antup | grep 514
Ausgabe:
udp 0 0 0.0.0.0:514 0.0.0.0:* 1467/rsyslogd udp6 0 0 :::514 :::* 1467/rsyslogd
Syslog-Client-Setup
Installieren Sie das Rsyslog-Paket, falls Sie es nicht installiert haben.
yum -y install rsyslog
Bearbeiten Sie die /etc/rsyslog.conf
Datei.
vi /etc/rsyslog.conf
Platzieren Sie am Ende der Datei die folgende Zeile, um das Nachrichtenprotokoll des Clients auf den Server zu verweisen.
UDP
*.info;mail.none;authpriv.none;cron.none @192.168.0.10:514
TCP
*.info;mail.none;authpriv.none;cron.none @@192.168.0.10:514
Sie können entweder den Hostnamen oder die IP-Adresse verwenden.
Starten Sie den Syslog-Dienst neu
systemctl restart rsyslog
Jetzt werden alle Nachrichtenprotokolle an den zentralen Server gesendet und die Kopie wird auch lokal aufbewahrt.
Firewall
Fast alle Produktionsumgebungen sind durch eine Hardware-Firewall geschützt, bitten Sie sie, TCP &UDP 514 zu öffnen.
Wenn Sie FirewallD aktiviert haben, führen Sie den folgenden Befehl auf einem Server aus, um eingehenden Datenverkehr auf UDP/TCP-Port 514 zu akzeptieren.
TCP
firewall-cmd --permanent --add-port=514/tcp firewall-cmd --reload
UDP
firewall-cmd --permanent --add-port=514/udp firewall-cmd --reload
Validieren
Wechseln Sie zum Syslog-Server und sehen Sie sich die Meldungsprotokolldatei an.
tail -f /var/log/messages
Sie sollten sehen, dass die Protokolle des Clients auf einem Syslog-Server aufgezeichnet werden.
Feb 9 04:26:09 client systemd: Stopping System Logging Service... Feb 9 04:26:09 client rsyslogd: [origin software="rsyslogd" swVersion="8.24.0-41.el7_7.2" x-pid="910" x-info="http://www.rsyslog.com"] exiting on signal 15. Feb 9 04:26:09 client systemd: Stopped System Logging Service. Feb 9 04:26:09 client systemd: Starting System Logging Service... Feb 9 04:26:09 client rsyslogd: [origin software="rsyslogd" swVersion="8.24.0-41.el7_7.2" x-pid="1546" x-info="http://www.rsyslog.com"] start Feb 9 04:26:09 client systemd: Started System Logging Service.
Auf diese Weise können Sie die anderen Protokolle wie Secure-, Mail-, Cron-Protokolle usw. überwachen.
Schlussfolgerung
Das ist alles. Ich hoffe, Sie haben erfolgreich einen zentralisierten Syslog-Server auf CentOS 7 / RHEL 7 eingerichtet. Sie können auch Open-Source-Protokollverwaltungstools wie ELK-Stack oder Graylog für erweiterte Funktionen wie Webschnittstelle, korrelierende Protokollereignisse usw. ausprobieren.