Patrouillengang

So analysieren Sie Ihren Linux-Server

Ein einmal eingerichteter Linux-Server läuft weitgehend wartungsfrei. Gelegentliche Kontrolle hinsichtlich Hardware und Sicherheit ist aber dennoch Pflicht: Wer hat sich alles angemeldet? Wann wurde was von wem installiert? Wie steht es um Festplattenkapazität und Speicherbedarf?

Linux hat zahlreiche Standard-Tools, Protokoll-und Infodateien an Bord, die über alle Systemzustände und Ereignisse berichten. Dieser Beitrag nennt die wichtigsten Infoquellen. Dabei steht die Server-Kontrolle via Terminal und Webserver im Vordergrund, weil diese auch per Fernwartung uneingeschränkt funktioniert.

Die wichtigsten Kommandos

Zur Kontrolle der Partitionsbelegung, des RAM-Verbrauchs, der CPU-Auslastung, der internen und externen IP, der Prozesse oder der Systemlaufzeit reichen Kommandozeilen-Tools meist völlig aus, die Sie per SSH-Verbindung nutzen. Empfehlenswerte Nachinstallationen sind das Infoprogramm inxi (Aufruf mit maximalen Infos: inxi -v7) und der Taskmanager htop, der sich flexibel konfigurieren lässt (Setup mit Taste F2). Mit w oder who erhalten Sie die derzeit am System angemeldeten User, nach uptime die Systemlaufzeit.

Bei Hardware-Fragen oder Problemen halten Sie sich an das Display-Message-Tool dmesg für Kernel-Nachrichten. Zur besseren Lesbarkeit ist immer Schalter „-T“ zu empfehlen, der die seriellen Zeitangaben in lesbare Datums-und Stundenformate übersetzt. Zusätzlich sollte das simple Format-Tool ccze nachinstalliert werden, das etwa mit

dmesg –T | ccze -A

die dmesg-Textwüste übersichtlicher macht.

Protokolle und Infos im Klartext

Da hat’s jemand versucht: Der Befehl lastb meldet sieben gescheiterte Anmeldungen als „root“ innerhalb einer Minute mit einer externen IP-Adresse.
Da hat’s jemand versucht: Der Befehl lastb meldet sieben gescheiterte Anmeldungen als „root“ innerhalb einer Minute mit einer externen IP-Adresse.

Mit die wichtigsten Infos liefern die Dateien unter „/var/log“. Mit root-Rechten auf der Konsole können Sie diese mit den üblichen Kommando-Tools durchsuchen (cat, less odertail). Beachten Sie dabei die Möglichkeiten, gleich mehrere Dateien zu durchforsten und auf jüngste Einträge zu sichten (etwa mittail -n20 auth.log syslog dpkg.log).

auth.log protokolliert im Klartext und ausführlich alle Systemanmeldungen. Wer in aller Kürze die erfolgreichen und gescheiterten Log-ins kontrollieren will, kann sich zusätzlich an die Dateien „/var/log/wtmp“ (erfolgreich) und „/var/log/btmp“ (gescheitert) halten. Diese binären Dateien lassen sich am bequemsten mit last (erfolgreich) und lastb (gescheitert) auslesen:

last -200
lastb -200 root

Gezeigt werden hier jeweils die letzten 200 Anmeldungen, die sich – wie das zweite Beispiel zeigt – auch auf ein bestimmtes Konto filtern lassen.

syslog ist das Systemlogbuch und zeigt Ereignisse aller Art, die an den syslogd-Daemon berichten – vorwiegend Kernel-, Hardware-und Cron-Ereignisse.

dpkp.log vermerkt alle manuellen (De-)Installationen und automatischen Updates. Ergänzend und in mancher Hinsicht übersichtlicher lohnt sich in diesem Zusammenhang auch der Blick in die Datei „/var/log/apt/history.log“.

Im Unterverzeichnis „/var/log/samba“ finden Sie für jedes zugreifende Netzgerät ein eigenes Protokoll – entweder mit Host-Namen oder lokaler IP-Adresse. Infos zur Hardware liegen bekanntlich im Klartext im Verzeichnis „/proc“. Wo Ihnen die Detailschärfe eines Tools wie inxi nicht ausreicht, können Sie diese Dateien mit cat auslesen. Prominente Kandidaten sind cpuinfo, meminfo, mounts, partitions, version.

Server-Fernwartung mit SSH