Episode IV – Eine neue Hoffnung auf funktionierende Repos · Die Handelsföderations-Firewall ist aktiv – und diesmal ist das gut so
Du hast navigiert. Du hast Dateien bearbeitet, Benutzer angelegt, Rechte gesetzt, Prozesse kontrolliert. Die Werkzeuge sitzen. Die Macht fließt.
Jetzt wird es RHEL-spezifisch. Denn ein Jedi-Ritter kämpft nicht nur im Übungsraum des Tempels – er kämpft in der echten Galaxie, mit echten Werkzeugen, unter echten Bedingungen.
Phase IV zeigt dir, wie Software auf einem produktiven RHEL 9-System verwaltet wird: mit Subscriptions, Repositories und DNF – dem Paketmanager, der keine Wünsche offen lässt, solange das richtige Repo aktiv ist. Und danach: das Netzwerk. Die Firewall. Der Schild des Servers.
Wenn du Phase IV abgeschlossen hast, bist du kein Padawan mehr.
Du bist bereit für das Abschlussprojekt.
„Vorsicht mit den Repos, junger Padawan. Nicht alles, was sich anbietet, kommt von der hellen Seite.“
– Meister Yoda, über EPEL und unbekannte Paketquellen
| Modul | Titel | Was du lernst | Schwierigkeit |
|---|---|---|---|
| 7 | Paketverwaltung mit DNF | dnf, rpm, Repos, Subscription, AppStream | ● ● ○ |
| 8 | Netzwerk und Firewall | ip, ss, nmcli, firewalld, ping, traceroute | ● ● ● |
<note>
RHEL-spezifisch: dnf und firewalld sind auf Debian/Ubuntu anders. Was du hier lernst, gilt für RHEL 8/9, CentOS Stream, AlmaLinux und Rocky Linux – also für alle Enterprise-Linux-Distributionen, die du im Berufsalltag antreffen wirst.
</note>
Was du nach Phase IV kannst – und erklären kannst:
dnfrpm für gezielte Paket-Abfragen nutzen (ohne direkte Installation)ss anzeigenping und traceroutefirewall-cmd konfigurieren: Zonen, Services, Portssubscription-manager status # Subscription aktiv? subscription-manager repos --list-enabled # Aktive Repos anzeigen subscription-manager repos --enable=rhel-9-for-x86_64-appstream-rpms dnf repolist # Kurzübersicht aller Repos
# Suchen und informieren (kein sudo nötig) dnf search wget # Paket suchen dnf info wget # Details: Version, Repo, Beschreibung dnf list installed # Alle installierten Pakete dnf list installed | grep httpd # Gezielt suchen dnf list available | grep php # Verfügbare Pakete # Installieren und entfernen (sudo nötig) sudo dnf install -y wget # Installieren ohne Rückfrage sudo dnf remove wget # Entfernen sudo dnf reinstall wget # Neu installieren # Updates dnf check-update # Verfügbare Updates anzeigen (kein Install!) dnf check-update --security # Nur Sicherheitsupdates sudo dnf update # Alles aktualisieren sudo dnf update wget # Nur ein Paket # AppStream-Module (mehrere Versionen gleichzeitig verfügbar) dnf module list # Alle Module anzeigen dnf module list php # Verfügbare PHP-Versionen sudo dnf module enable php:8.1 # Version wählen sudo dnf install php # Dann installieren # Transaktionsverlauf dnf history # Alle bisherigen Transaktionen dnf history info 5 # Details zu Transaktion Nr. 5 sudo dnf history undo 5 # Rückgängig machen
rpm -qa # Alle installierten Pakete rpm -qi vim-enhanced # Info zu einem installierten Paket rpm -ql vim-enhanced # Welche Dateien hat dieses Paket? rpm -qf /usr/bin/vim # Zu welchem Paket gehört diese Datei?
ip addr # Alle Interfaces und IP-Adressen ip addr show ens33 # Nur ein Interface ip route # Routing-Tabelle ip route show default # Standard-Gateway anzeigen cat /etc/resolv.conf # DNS-Server cat /etc/hosts # Lokale Hostnamen hostname -f # Vollständiger Hostname (FQDN) ping -c 4 8.8.8.8 # Erreichbarkeit testen (4 Pakete) traceroute google.com # Netzwerkpfad anzeigen ss -tlnp # Offene TCP-Ports mit Prozessname ss -tlnp | grep :80 # Läuft etwas auf Port 80? curl -I http://localhost # HTTP-Header abrufen nmcli device status # NetworkManager: Gerätestatus nmcli connection show # Konfigurierte Verbindungen
firewall-cmd --state # Läuft die Firewall? firewall-cmd --list-all # Vollständige Regelübersicht firewall-cmd --list-services # Freigegebene Dienste firewall-cmd --list-ports # Freigegebene Ports firewall-cmd --get-services # Alle vordefinierten Dienstnamen # Dienst freigeben: sudo firewall-cmd --add-service=http # Temporär (bis Reload) sudo firewall-cmd --permanent --add-service=http # Dauerhaft sudo firewall-cmd --reload # Permanente Regeln aktivieren # Port freigeben (wenn kein Servicename vorhanden): sudo firewall-cmd --permanent --add-port=8443/tcp # Regeln entfernen: sudo firewall-cmd --permanent --remove-service=http sudo firewall-cmd --permanent --remove-port=8443/tcp sudo firewall-cmd --reload
Wer nicht weiß, woher ein Paket kommt, weiß nicht, ob er ihm vertrauen kann.
Das ist in der IT wie in der Politik: Herkunft und Autorisierung zählen.
| Repository-ID | Inhalt | Beispiele |
|---|---|---|
rhel-9-for-x86_64-baseos-rpms | Kern-Betriebssystem | Kernel, Bash, systemd, coreutils |
rhel-9-for-x86_64-appstream-rpms | Anwendungen + Laufzeiten | httpd, php, postgresql, nginx |
satellite-client-6-for-rhel-9-x86_64-rpms | Satellite Client-Tools | subscription-manager, Katello-Agent |
<note warning> Niemals EPEL, RPM Fusion oder unbekannte externe Repos auf Produktivsystemen aktivieren – ohne Genehmigung und ohne zu wissen was man tut. Ein Paket aus einer unverifizierten Quelle kann das gesamte System kompromittieren. Das ist die dunkle Seite der Paketverwaltung. </note>
firewalld denkt nicht in Regeln, sondern in Vertrauen. Jede Zone ist ein Vertrauensniveau:
| Zone | Bedeutung | Wann nutzen |
|---|---|---|
public | Standard – nur explizit freigegebenes erlaubt | Produktivserver im Netz |
trusted | Alles erlaubt | Nur im komplett gesicherten, isolierten Testnetz |
drop | Alle eingehenden Pakete lautlos verwerfen | Maximale Härtung |
internal | Weniger streng als public | Interne Netzwerk-Segmente |
Goldene Regel: Erst temporär testen (ohne --permanent), dann erst dauerhaft setzen. Ein vergessenes –reload hat schon manchen Admin aus dem Server ausgesperrt.
Aufgabenblatt, Theorie und Musterlösungen – als LaTeX oder PDF
Das vollständige Dokument zu Phase IV enthält alle Erklärungen, Aufgaben und Musterlösungen.
Overleaf (Quelldatei + Live-Vorschau):
→ Overleaf: Linux Padawan Workshop
Mission Briefing – Phase IV
Du prüfst die aktiven Repositories, installierst Pakete aus den korrekten Quellen, liest die Netzwerkkonfiguration des Servers aus und richtest die Firewall so ein, dass nur HTTP und SSH durchkommen.
Die drei Gesetze dieser Phase:
ss -tlnp läuft bevor und nach jeder Firewall-Änderung – Kontrolle ist PflichtWenn du diese Phase abgeschlossen hast, bist du bereit für das, was danach kommt: das Abschlussprojekt. Kein Tutorial mehr. Kein Schritt-für-Schritt. Nur du, ein leerer Server und eine Anforderung.
Wer Phase I bis IV abgeschlossen hat, ist bereit für das Abschlussprojekt: DokuWiki auf RHEL 9 – mit dediziertem Benutzer, PHP-FPM, Apache, SELinux, Firewall und automatischer E-Mail-Alarmierung bei Dienstausfall.
← Phase III – Die Macht kontrollieren
↑ Übersicht – Der Weg zur Macht
→ Abschlussprojekt: Webserver
„Der Weg des Jedi-Ritters ist nicht das Ende der Ausbildung.
Es ist der Anfang der Verantwortung.“
Möge die Macht – und ein stabiler SSH-Tunnel – mit dir sein.
[azubi01@rhel9-kurs ~]$ _