Zum Inhalt springen
PURPLEDUEL

Pipes und Filter

Linux-Grundlagen · Schwierigkeit mittel · 4 Ziele · 600 XP insgesamt

Eine Funkrelaisstation hat dieselbe Nachricht dutzende Male aufgefangen, aber Störungen haben viele Kopien beschädigt. Zähle und sortiere die Zeilen mit einer Befehlskette, um herauszufinden, welche Nachricht die echte ist.

Labor 7 von 9 im Lernpfad Linux-Grundlagen. Wenn du feststeckst, hast du 3 Hinweise, vom vagesten bis zum genauesten: Sie kosten 0, 50 und 150 XP.

Was du lernst

Die Ziele erfüllen sich von selbst, während du im Terminal arbeitest; jedes bringt Erfahrungspunkte:

  • Zwei Befehle mit einer Pipe (|) verketten (80 XP)
  • Die Nachrichtenspalte mit cut -d -f herausziehen (120 XP)
  • Die Wiederholungen mit sort | uniq -c zählen (150 XP)

Themen: linux, pipe.

Die Befehle, die du brauchst

Das Terminal ist simuliert und versteht etwa vierzig Linux-Befehle. In diesem Labor brauchst du vor allem diese:

  • cat: gibt den Inhalt einer Datei aus: der direkteste Weg, Konfigurationen, Notizen und Logs zu lesen.
  • cut: schneidet aus jeder Zeile eine Spalte mit einem gewählten Trennzeichen heraus, um ein bestimmtes Feld eines Logs zu isolieren.
  • sort: sortiert Zeilen, auch numerisch (-n) oder umgekehrt (-r).
  • uniq: entfernt direkt aufeinanderfolgende doppelte Zeilen und zählt sie mit -c: Zusammen mit sort entstehen Ranglisten, etwa der hartnäckigsten Adressen.
  • head: zeigt nur die ersten Zeilen einer Datei, praktisch, um das Format eines Logs zu verstehen, ohne alles zu lesen.
  • base64: kodiert und dekodiert Base64, das Format, das Bytes in Text verwandelt. Es schützt nichts: Es lässt sich ohne Schlüssel rückgängig machen.
  • |: der senkrechte Strich | verkettet Befehle: Die Ausgabe des ersten wird zur Eingabe des nächsten, so werden kleine Werkzeuge zu einer vollständigen Analyse.

Die simulierte Umgebung

Du arbeitest in einer simulierten Linux-Shell, im Home-Verzeichnis des Benutzers runner: erfundene Dateien und Ordner, kein Ziel im Netzwerk.

Die Lektion zur Abwehr

Ist das Labor gelöst, erklärt der Bericht, was schiefging und wie man sich schützt:

Pipes (|) verketten kleine Befehle zu einer Kette: cut wählt die Spalte, sort sortiert, uniq -c zählt, sort -nr erstellt die Rangliste, head behält die ersten. So analysiert man Logs: zum Beispiel, um herauszufinden, welche IP die meisten Anfragen schickt. Verteidigung: Dieselbe Kette ist das schnellste Werkzeug, um einen Angriff zu bemerken (eine IP mit Tausenden Versuchen), also bewahre deine Logs auf und lerne, sie zu lesen.

Vor und nach diesem Labor

Um es zu öffnen, musst du gelöst haben:

Nach diesem Labor kannst du weitermachen mit:

Der Lernpfad Linux-Grundlagen

Linux-Grundlagen ist der Einstieg. Fast alle Server, Netzwerkgeräte und Sicherheitswerkzeuge laufen unter Linux, und wer ein System verteidigt (oder es mit Erlaubnis testet), verbringt viel Zeit im Terminal. Hier lernst du, dich im Dateisystem zu bewegen, versteckte Dateien zu finden, endlose Logs stückweise zu lesen, mit grep nach Wörtern zu suchen, Befehle mit Pipes zu verketten und Rechte, Umgebungsvariablen und den Befehlsverlauf zu verstehen: die Grundlagen, die du in allen anderen Lernpfaden brauchst.

Alle Labore im Lernpfad Linux-Grundlagen

Mehr in den Guides (auf Englisch)

Alle Guides (auf Englisch)