11. Zentralisiertes Logging für Ubuntu Server: Ein unverzichtbarer Leitfaden

Monitoring und Logging sind kritische Aspekte bei der Verwaltung und Wartung von Ubuntu Server 22.04. Ob Sie einen einzelnen Server betreiben oder eine komplexe Infrastruktur verwalten – effektive Monitoring-Tools ermöglichen es Ihnen, die Systemleistung zu verfolgen, Probleme zu beheben und die Zuverlässigkeit sicherzustellen. Diese Anleitung behandelt die Einrichtung von zentralisiertem Logging mit rsyslog oder syslog-ng, das Weiterleiten von Logs an einen Remote-Logging-Server und die Integration von Ubuntu Server in beliebte Monitoring-Plattformen wie Nagios, Zabbix und Prometheus.


01. Einführung in Ubuntu Server – SysOSX: AI & Cloud

02. So richten Sie Ihren ersten Ubuntu-Server ein: Ein Leitfaden für Anfänger – SysOSX: AI & Cloud

03. Die Linux-Befehlszeile für Ubuntu Server meistern – SysOSX: AI & Cloud

04. Nutzer und Berechtigungen auf Ubuntu Server verwalten: Ein umfassender Leitfaden – SysOSX: AI & Cloud

05. Netzwerkgrundlagen für Ubuntu Server: Ein umfassender Leitfaden – SysOSX: AI & Cloud

06. Software auf Ubuntu Server installieren und verwalten: Ein vollständiger Leitfaden – SysOSX: AI & Cloud

07.Patchen und Aktualisieren von Ubuntu Server: Ein umfassender Leitfaden – SysOSX: AI & Cloud

08. So sichern Sie Ihren Ubuntu-Server: Praktische Schritte zur Härtung und zum Schutz – SysOSX: AI & Cloud

09. Ubuntu-Server-Audits und -Logging

10. Systemmonitoring-Tools für Ubuntu Server: Ein umfassender Leitfaden – SysOSX: AI & Cloud



Warum Servermonitoring wichtig ist

In der heutigen Always-on-Digitallandschaft halten 97 % der Unternehmen Servermonitoring für entscheidend für die Geschäftskontinuität (IDC, 2024). Für Nutzer von Ubuntu Server 22.04 bedeutet effektives Monitoring:

📊 Liefert umsetzbare Erkenntnisse für die Kapazitätsplanung

🛠️ Verhindert 68 % potenzieller Ausfälle durch proaktive Erkennung

📈 Optimiert die Ressourcenzuweisung durch Verfolgung der CPU-/RAM-/Festplattenauslastung

🔍 Ermöglicht eine schnelle Fehlerbehebung durch zentralisiertes Logging

Zentralisiertes Logging auf Ubuntu Server

Zentralisiertes Logging führt Logs von mehreren Servern an einem einzigen Ort zusammen und erleichtert so die Analyse und Fehlerbehebung in Ihrer gesamten Infrastruktur. Ubuntu Server 22.04 unterstützt leistungsstarke Logging-Tools wie rsyslog und syslog-ng.


Zentralisiertes Logging meistern

rsyslog vs. syslog-ng: Kurzvergleich

Funktionrsyslogsyslog-ng
ProtokollunterstützungUDP/TCPUDP/TCP/TLS
FilterungEinfachErweitert
LeistungHochSehr hoch
KonfigurationEinfachKomplex

rsyslog für zentralisiertes Logging einrichten

rsyslog ist ein zuverlässiger und weit verbreiteter Logging-Daemon, der auf Ubuntu Server vorinstalliert ist. Führen Sie die folgenden Schritte aus, um ihn für zentralisiertes Logging zu konfigurieren:

  • rsyslog installieren (falls noch nicht installiert):
sudo apt update && sudo apt install rsyslog
  • rsyslog-Konfigurationsdatei bearbeiten:
    Öffnen Sie /etc/rsyslog.conf und entfernen Sie die Kommentarzeichen in den folgenden Zeilen, um die UDP- oder TCP-basierte Log-Weiterleitung zu aktivieren:
# For UDP
#module(load="imudp")
#input(type="imudp" port="514")

# For TCP
#module(load="imtcp")
#input(type="imtcp" port="514")
  • rsyslog-Dienst neu starten:
sudo systemctl restart rsyslog
  • Log-Weiterleitung einrichten:
    Um Logs an einen Remote-Server weiterzuleiten, fügen Sie die folgende Zeile in /etc/rsyslog.conf:
*.* @@remote-server-ip:514

  • Ersetzen Sie remote-server-ip durch die IP-Adresse Ihres Logging-Servers. Verwenden Sie @ für UDP oder @@ für TCP.

syslog-ng für zentralisiertes Logging einrichten

syslog-ng ist ein weiteres robustes Logging-Tool, das erweiterte Filter- und Logging-Funktionen bietet. So richten Sie es ein:

  • syslog-ng installieren:
 sudo apt update && sudo apt install syslog-ng
  • syslog-ng für zentralisiertes Logging konfigurieren:
    Bearbeiten Sie die Konfigurationsdatei /etc/syslog-ng/syslog-ng.conf:
source s_local {
    system();
    internal();
};

destination d_remote {
    tcp("remote-server-ip" port(514));
};

log {
    source(s_local);
    destination(d_remote);
};

  • Ersetzen Sie remote-server-ip durch die IP-Adresse Ihres Logging-Servers.
  • syslog-ng neu starten:
 sudo systemctl restart syslog-ng

    Weiterleiten von Logs an einen Remote-Logging-Server

    Das Weiterleiten von Logs an einen Remote-Server ist für zentralisiertes Monitoring in verteilten Umgebungen unerlässlich. Die beiden Tools rsyslog und syslog-ng unterstützen die Log-Weiterleitung über UDP oder TCP. Stellen Sie sicher, dass Ihr Remote-Logging-Server so konfiguriert ist, dass er eingehende Logs auf dem angegebenen Port (z. B. 514) akzeptiert.

    Konfigurieren des Remote-Logging-Servers

    Stellen Sie auf dem Remote-Logging-Server sicher, dass rsyslog oder syslog-ng für den Empfang von Logs konfiguriert ist:

    • Für rsyslog fügen Sie die folgenden Zeilen in /etc/rsyslog.conf:
    module(load="imtcp")
    input(type="imtcp" port="514")
    
    
    • Für syslog-ng definieren Sie eine Quelle für eingehende Logs:
    source s_remote {
        tcp(port(514));
    };
    
    

    Ubuntu Server in Monitoring-Plattformen integrieren

    Monitoring-Plattformen wie Nagios, Zabbix und Prometheus bieten Echtzeit-Einblicke in den Zustand, die Leistung und die Ressourcenauslastung Ihres Servers. So integrieren Sie Ubuntu Server 22.04 in diese Tools.

    Nagios: Die klassische Lösung

    Nagios ist ein leistungsstarkes Monitoring-Tool, das die Serverleistung verfolgt und Sie auf potenzielle Probleme hinweist. So integrieren Sie Nagios in Ubuntu Server:

    • Nagios-Agent installieren:
     sudo apt update && sudo apt install nagios-nrpe-server nagios-plugins
    
    • NRPE konfigurieren:
      Bearbeiten Sie /etc/nagios/nrpe.cfg um die Befehle zu definieren, die Nagios überwachen wird:
    command[check_load]=/usr/lib/nagios/plugins/check_load -w 5,4,3 -c 10,8,6
    command[check_disk]=/usr/lib/nagios/plugins/check_disk -w 20% -c 10% -p /
    
    
    • NRPE neu starten:
     sudo systemctl restart nagios-nrpe-server
    

      Zabbix: Monitoring auf Enterprise-Niveau

      Zabbix ist eine Monitoring-Plattform auf Enterprise-Niveau mit umfangreichen Anpassungsoptionen. So integrieren Sie Zabbix in Ubuntu Server:

      • Zabbix-Agent installieren:
       sudo apt update && sudo apt install zabbix-agent
      
      • Zabbix-Agent konfigurieren:
        Bearbeiten Sie /etc/zabbix/zabbix_agentd.conf und legen Sie Server und Hostname fest:
      Server=your-zabbix-server-ip
      Hostname=UbuntuServer22.04
      
      
      • Zabbix-Agent neu starten:
      sudo systemctl restart zabbix-agent
      

        Prometheus + Grafana: Moderner Monitoring-Stack

        Prometheus ist ein modernes Monitoring-Tool, das auf Skalierbarkeit und Flexibilität ausgelegt ist. So integrieren Sie Prometheus in Ubuntu Server:

        • Node Exporter installieren:
          Node Exporter ist ein leichtgewichtiger Agent zur Bereitstellung von Metriken für Prometheus.
        wget https://github.com/prometheus/node_exporter/releases/download/v1.7.0/node_exporter-1.7.0.linux-amd64.tar.gz
        tar xvf node_exporter-1.7.0.linux-amd64.tar.gz
        sudo mv node_exporter-1.7.0.linux-amd64/node_exporter /usr/local/bin/
        
        
        • Node Exporter ausführen:
         sudo nohup /usr/local/bin/node_exporter &
        
        • Prometheus konfigurieren:
          Fügen Sie den Ubuntu-Server zu Prometheus hinzu, indem Sie die Datei prometheus.yml bearbeiten:
        scrape_configs:
          - job_name: 'ubuntu_servers'
            scrape_interval: 15s
            static_configs:
              - targets: ['server1:9100', 'server2:9100']
        
        

        Grafana-Dashboard-Ideen:

        1. Clusterweite Ressourcen-Heatmap
        2. Prädiktive Speicherplatzprognose
        3. Alarme zur Anomalieerkennung

        Profi-Monitoring-Strategien

        1. Log-Aufbewahrungsrichtlinie
          • 7 Tage – Kritische Systeme
          • 30 Tage – Allgemeine Server
          • 1 Jahr – Compliance-Systeme
        2. Best Practices für Alarmschwellen
          • 🟢 Warnung: 75 % Festplattenauslastung
          • 🔴 Kritisch: 90 % Festplattenauslastung
          • 📈 Auto-Scaling-Auslöser: 70 % CPU dauerhaft
        3. Kostenoptimierung
          • Verwenden Sie VictoriaMetrics für eine 10-fache Speicherkomprimierung im Vergleich zu Vanilla-Prometheus
          • Implementieren Sie Log-Sampling für Debug-Einträge

        Die moderne Lösung: Mehrstufiges Log-Management

        Clevere Teams kombinieren Aufbewahrungsstrategien:

        EbeneAufbewahrungsdauerSpeichertypAnwendungsfall
        Hot7 TageNVMe/SSDAktive Fehlerbehebung
        Warm30 TageHDD/Cloud-SpeicherPost-mortem-Analyse
        Cold1 Jahr+Glacier/S3 Deep ArchiveCompliance/Audits

        Implementierungsbeispiel:

        # Use logrotate with AWS S3 lifecycle rules
        /var/log/nginx/*.log {
            daily
            rotate 7
            compress
            postrotate
                /usr/bin/aws s3 sync /var/log/nginx/ s3://logs-hot/
                find /var/log/nginx/ -type f -mtime +7 -exec aws s3 cp {} s3://logs-cold/ \;
            endscript
        }
        
        

        Schlüsselfaktoren zur Neubewertung der Aufbewahrung

        1. Compliance-Anforderungen
          • GDPR: Bis zu 6 Jahre für personenbezogene Daten
          • SOX: 7 Jahre für Finanzsysteme
          • PCI-DSS: 1 Jahr mit 3 Monaten sofortiger Verfügbarkeit
        2. Anforderungen an die Untersuchung von Vorfällen
          • APT-Angriffe werden oft erst 6+ Monate nach einem Einbruch entdeckt (Mandiant M-Trends 2024)
        3. Kostenoptimierte Strategien
          • Komprimieren Sie Logs nach 7 Tagen: zstd --ultra -22 (über 80 % Komprimierung)
          • Verwenden Sie spaltenorientierte Formate (Parquet/ORC) für 60 % kleineren Analysespeicher

        Überarbeitete Empfehlung

        Für die meisten produktionskritischen Systeme:

        • Hot-Zugriff: 7-14 Tage (SSD/NVMe)
        • Compliance-Archiv: 1 Jahr+ (Cold Storage)
        • Sicherheits-Logs: mindestens 180 Tage (CIS Benchmark v4)

        Beispiel für ein Compliance-Setup:

        # Auditd rules for PCI-DSS
        -a always,exit -F arch=b64 -S all -F path=/var/log/payment.log -F perm=wa -k payment_logs
        

        Häufige Fragen: Ubuntu-Server-Monitoring

        Q: Wie oft sollte ich Servermetriken prüfen?
        A: – 15-Sekunden-Intervalle für Produktionssysteme

        • 1 Min. für unkritische Workloads

        Q: Kann ich Docker-Container überwachen?
        A: Ja! Verwenden Sie:

        • cAdvisor für Container-Metriken
        • Prometheus Docker Swarm exporter

        Q: Was kostet Enterprise-Monitoring?
        A: Open-Source-Lösungen sind kostenlos. Enterprise-Versionen:

        • Nagios XI: ~$1,995/Jahr
        • Zabbix Enterprise: ~$1,700/Jahr
        • Grafana Cloud: ~$50+/Monat

        Referenzdokument:

        Syslog-ng: https://syslog-ng.github.io/

        Rsyslogd: https://www.rsyslog.com/doc/index.html


        Fazit

        Monitoring und Logging sind für die Erhaltung der Gesundheit und Leistung von Ubuntu Server unerlässlich. Durch die Einrichtung von zentralisiertem Logging mit rsyslog oder syslog-ng, das Weiterleiten von Logs an einen Remote-Server und die Integration mit Plattformen wie Nagios, Zabbix und Prometheus erhalten Sie wertvolle Einblicke in Ihre Infrastruktur und stellen einen reibungslosen Betrieb sicher.

        Bleiben Sie dran: Best Practices für Audit und Compliance für Ubuntu Server

        Effektives Systemmonitoring ist nur ein Teil der Aufrechterhaltung einer sicheren und konformen Serverumgebung. Im nächsten Artikel befassen wir uns eingehend mit Best Practices für Audits und Compliance für Ubuntu Server, darunter ein Überblick über Compliance-Standards wie PCI-DSS und GDPR, das Konfigurieren von Audit-Regeln mit auditctl und das Erstellen von Audit-Berichten zur Erkennung verdächtiger Aktivitäten. Nicht verpassen!

        3 thoughts on “11. Centralized Logging for ubuntu server: a must read guide”

        Kommentar hinterlassen