CodeGym /Kurse /Docker SELF /Überwachung aktiver Benutzer und Logins: Befehle `who`, `...

Überwachung aktiver Benutzer und Logins: Befehle `who`, `w`, `last`

Docker SELF
Level 5 , Lektion 4
Verfügbar

Überwachung aktiver Benutzer und Logins: Befehle who, w, last

1. Warum ist die Überwachung von Benutzern wichtig?

Linux, wie auch jeder andere Server (oder sogar diese böse Kiste mit Webseiten), ermöglicht es mehreren Benutzern gleichzeitig zu arbeiten. Aber was, wenn dein Server gehackt wurde? Oder ein Kollege-Bösewicht beschließt mitten in der Nacht "zufällig" wichtige Dateien zu löschen? Die Überwachung von Benutzeraktivitäten hilft uns zu verstehen, wer wann und von wo auf das System zugegriffen hat und welche Prozesse sie ausgeführt haben. Es ist wie eine Überwachungskamera, nur für deinen Server.

Wichtige Überwachungstools

Um die Aktivität der Benutzer auf einem Server zu bewerten, stehen in Linux drei Hauptbefehle zur Verfügung:

  • who — zeigt die aktuellen Benutzer an, die im System aktiv sind.
  • w — gibt etwas mehr Infos: was die Benutzer gerade machen und die Systemauslastung.
  • last — zeigt die Anmeldehistorie im System an.

Jeder dieser Befehle hat seine eigenen Feinheiten und ist in unterschiedlichen Szenarien anwendbar. Lass uns diese an Beispielen durchgehen.


2. Befehl who

Der Befehl who zeigt eine Liste von Benutzern, die aktuell im System angemeldet sind. Das ist wie ein „Gästebuch“, in dem du nachschauen kannst, wer gerade auf dem Server ist.

who

Beispielausgabe des Befehls:

user1    pts/0        2023-10-20 09:10 (192.168.1.100)
root     pts/1        2023-10-20 09:15 (192.168.1.101)

Was wir hier sehen:

  • Benutzername user1, root.
  • Terminal, über das sie verbunden sind pts/0, pts/1.
  • Anmeldezeit 2023-10-20 09:10.
  • Von wo aus die Verbindung kommt 192.168.1.100.

Optionen für who:

  • who -a: Zeigt auch Systeminformationen wie Boot-Zeit, laufende Prozesse und Benutzer.
  • who am i: Zeigt nur Informationen über den Benutzer, der den Befehl ausgeführt hat.

3. Befehl w

Wenn who einfach nur registriert, wer sich eingeloggt hat, gibt w mehr Infos – es zeigt, was der Nutzer gerade macht. Das ist praktisch, um zu verstehen, ob er etwas Nützliches macht oder etwas, das gestoppt werden sollte.

w

Beispielausgabe:

10:20:42 up 1 day,  5:12,  2 users,  load average: 0.00, 0.01, 0.00
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
user1    pts/0    192.168.1.100    09:10    1:00   0.01s  0.01s nano app.py
root     pts/1    192.168.1.101    09:15    2:00   0.02s  0.02s htop

Was passiert hier:

  • Die obere Zeile gibt Systeminfos aus: aktuelle Uhrzeit, Server-Uptime, Anzahl der Nutzer und Systemlast load average.
  • Die Tabelle zeigt:
    • Den Nutzernamen user1, root.
    • Das Terminal, durch das der Nutzer verbunden ist pts/0, pts/1.
    • Die IP-Adresse des Nutzers 192.168.1.100.
    • Die Login-Zeit 09:10.
    • Die Leerlaufzeit IDLE.
    • Aktuelle Aktivität des Nutzers WHAT, z. B. das Bearbeiten der Datei app.py mit nano.

Optionen für w:

  • w -h: Entfernt die Tabellenüberschriften.
  • w username: Zeigt Infos nur über einen bestimmten Nutzer an.

4. Der Befehl last

Wenn who und w die Gegenwart betrachten, erlaubt last, einen Blick in die Vergangenheit zu werfen. Es zeigt eine Historie aller Logins im System. Dieser Befehl liest die Datei /var/log/wtmp, wo alle Nutzer-Logins gespeichert werden.

last

Beispielausgabe:

user1    pts/0        192.168.1.100    Fri Oct 20 09:10 - 09:30  (00:20)
root     pts/1        192.168.1.101    Fri Oct 20 09:15 - down   (00:15)

Was sehen wir hier:

  • Nutzername user1, root.
  • Terminal pts/0, pts/1.
  • IP-Adresse oder Hostname 192.168.1.100, 192.168.1.101.
  • Login-Zeit Fri Oct 20 09:10.
  • Logout-Zeit 09:30 und gesamte Sitzungsdauer 00:20.

Parameter für last:

  • last -n 10: Zeigt nur die letzten 10 Einträge.
  • last username: Login-Historie für einen bestimmten Nutzer.
  • last reboot: Zeigt, wann der Server zuletzt gestartet wurde.

5. Praktisches Beispiel: Analyse der Benutzeraktivität

Stell dir vor, du willst herausfinden, wer nachts auf dem Server gearbeitet hat, um sicherzustellen, ob nichts Verdächtiges passiert ist. Fangen wir mit der Anzeige der aktuellen Benutzer an:

who

Schauen wir uns jetzt an, was diese Benutzer gerade tun:

w

Falls du etwas Ungewöhnliches entdeckst (z. B. einen unbekannten Prozess), solltest du überprüfen, wer sich nachts eingeloggt hat. Dafür benutzen wir:

last

Wir schauen die Einträge für einen spezifischen Benutzer an, der deine Aufmerksamkeit erregt hat:

last user1

Falls du eine Anomalie bemerkst, zum Beispiel einen Login von einer unbekannten IP, solltest du Maßnahmen ergreifen: den Zugang einschränken, Zwei-Faktor-Authentifizierung aktivieren oder den Benutzer sperren.


6. Besonderheiten und typische Fehler

Beim Arbeiten mit Monitoring-Befehlen ist es wichtig, Folgendes zu beachten:

  1. Logdatei kann gelöscht werden. Wenn jemand absichtlich die Einträge in /var/log/wtmp löscht, zeigt der Befehl last nichts an. Das ist einer der Gründe, warum es wichtig ist, regelmäßig Backups der Logdateien zu erstellen oder sie auf einen entfernten Server zu senden.

  2. Erleichterung des Verständnisses der Ausgabe. Manchmal kann die Ausgabe der Befehle überladen sein (z. B. wenn viele Benutzer aktiv sind). Verwende Filter wie grep, um die benötigten Informationen zu finden:

    last | grep user1
    
  3. Abhängigkeit von den Systemeinstellungen. Manche Systeme führen keine Login-Protokolle, wenn dies aufgrund der Konfiguration deaktiviert wurde. Stelle sicher, dass /var/log/wtmp regelmäßig aktualisiert wird.

Wie wendet man dieses Wissen in der Praxis an?

  • Serveradministration. Zum Beispiel bist du der Administrator eines Unternehmens und musst die Systemsicherheit überwachen, damit niemand versehentlich oder absichtlich „alles kaputt macht“.
  • Bedrohungserkennung. Monitoring-Tools helfen dir dabei, Versuche eines unbefugten Zugriffs zu erkennen.
  • Systemaudit. Beim Überprüfen von Servern auf die Einhaltung von Sicherheitsstandards werden diese Befehle häufig verwendet, um die Benutzeraktivitäten zu analysieren.
  • Diagnose. Du bemerkst, dass der Server langsam geworden ist? Schau nach, wer und was dort gerade macht!

Jetzt bist du bereit, dein System wie ein Profi zu überwachen! Denk dran: Der Schutz deines Systems fängt mit dem Verständnis an, was unter der Haube vor sich geht.

Kommentare
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION