Systemd Lernpfad: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Neue Seite: Lernpfad systemd mit Stufen und Bausteinen |
Animationen Stufe 2 und 3 verlinkt |
||
| (2 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
| Zeile 3: | Zeile 3: | ||
*systemd startet, überwacht und beendet alle Dienste eines Linux-Systems. | *systemd startet, überwacht und beendet alle Dienste eines Linux-Systems. | ||
*Der Lernpfad führt in drei Stufen vom Benutzen über das Schreiben eigener Units bis zur Härtung und zur Suche nach Angreifern. | *Der Lernpfad führt in drei Stufen vom Benutzen über das Schreiben eigener Units bis zur Härtung und zur Suche nach Angreifern. | ||
*Jede | *Jede Seite hat dasselbe Gerüst: Einfach erklärt, das Wichtigste, Befehle, Stolperfallen, Aufgaben. | ||
*Alle Beispiele sind auf Debian 13 mit systemd 257 geprüft. | |||
{| class="wikitable" | {| class="wikitable" | ||
| Zeile 10: | Zeile 11: | ||
| '''[[Systemd Stufe 1 Basic|Stufe 1 · Basic]]''' || Ich verwende es || Dienste bedienen, Status lesen, Logs mit journalctl, Targets und Runlevel || [https://labs.xinux.net/systemd-start.html Targets und Reihenfolge] | | '''[[Systemd Stufe 1 Basic|Stufe 1 · Basic]]''' || Ich verwende es || Dienste bedienen, Status lesen, Logs mit journalctl, Targets und Runlevel || [https://labs.xinux.net/systemd-start.html Targets und Reihenfolge] | ||
|- | |- | ||
| '''[[Systemd Stufe 2 Fortgeschritten|Stufe 2 · Fortgeschritten]]''' || Ich schreibe Units || Aufbau einer Unit, Pfade und Drop-ins, Wants und After, Type= und Restart=, Timer || [https://labs.xinux.net/systemd-start.html#3-1 Was gegen Wann] | | '''[[Systemd Stufe 2 Fortgeschritten|Stufe 2 · Fortgeschritten]]''' || Ich schreibe Units || Aufbau einer Unit, Pfade und Drop-ins, Wants und After, Type= und Restart=, Timer || [https://labs.xinux.net/systemd-units.html Units schreiben] · [https://labs.xinux.net/systemd-start.html#3-1 Was gegen Wann] | ||
|- | |- | ||
| '''[[Systemd Stufe 3 Security|Stufe 3 · Security]]''' || Ich härte und untersuche || systemd-analyze security, Dienste Schritt für Schritt härten, Persistenz erkennen || | | '''[[Systemd Stufe 3 Security|Stufe 3 · Security]]''' || Ich härte und untersuche || systemd-analyze security, Dienste Schritt für Schritt härten, systemd-run, Persistenz erkennen || [https://labs.xinux.net/systemd-security.html härten und untersuchen] | ||
|} | |} | ||
==Vorwissen== | ==Vorwissen== | ||
*[https://labs.xinux.net/kernel-initialisierung.html Kernel-Initialisierung]: wie es bis zu systemd als Prozess 1 kommt | *[https://labs.xinux.net/kernel-initialisierung.html Kernel-Initialisierung]: wie es bis zu systemd als Prozess 1 kommt | ||
*[https://labs.xinux.net/kernel-module.html Kernel und Module] | |||
=Themen-Bausteine= | =Themen-Bausteine= | ||
*Die Bausteine ergänzen den Lernpfad. In der Spalte steht, ab welcher Stufe man sie versteht. | *Die Bausteine ergänzen den Lernpfad. In der Spalte steht, ab welcher Stufe man sie versteht. | ||
{| class="wikitable" | {| class="wikitable" | ||
! Baustein !! ab Stufe !! | ! Baustein !! ab Stufe !! Inhalt | ||
|- | |- | ||
| '''Journal und Logging''' || | | '''[[Systemd Baustein Journal|Journal und Logging]]''' || 1–3 || lesen, filtern nach Feldern, Größe, FSS-Versiegelung, Logs wegschicken ins SIEM | ||
|- | |- | ||
| ''' | | '''[[Systemd Baustein Fehlersuche|Fehlersuche und Analyse]]''' || 1–3 || Fehlercodes in status, verify, blame und critical-chain, Rettungswege, coredumpctl | ||
|- | |- | ||
| ''' | | '''[[Systemd Baustein Zeit und Sitzungen|Zeit und Sitzungen]]''' || 1 || timedatectl, timesyncd mit eigenem NTP-Server, loginctl, Linger | ||
|- | |- | ||
| ''' | | '''[[Systemd Baustein Timer|Timer]]''' || 2 || OnCalendar und Abstände, Persistent, systemd-run, cron und Timer im Vergleich | ||
|- | |- | ||
| ''' | | '''[[Systemd Baustein Mounts|Mounts]]''' || 2 || fstab und Mount-Units, nofail und Automount, eigene .mount, RequiresMountsFor | ||
|- | |- | ||
| ''' | | '''[[Systemd Baustein Netzwerk|Netzwerk]]''' || 2 || systemd-networkd, feste IP und DHCP, networkctl, resolved, Karte umbenennen, Bridge | ||
|- | |- | ||
| ''' | | '''[[Systemd Baustein Sockets|Socket-Aktivierung]]''' || 2 || Dienste erst bei Bedarf starten, Echo-Server, Accept=yes und no | ||
|- | |- | ||
| ''' | | '''[[Systemd Baustein Ressourcen|Ressourcen und cgroups]]''' || 2 || Slices, systemd-cgls und cgtop, MemoryMax, CPUQuota, set-property | ||
|- | |||
| '''[[Systemd Baustein Systemdateien|tmpfiles, sysctl, Module]]''' || 2 || tmpfiles.d, sysctl.d, modules-load.d und weitere *.d-Verzeichnisse | |||
|- | |||
| '''[[Systemd Baustein Container|Container]]''' || 2–3 || systemd-nspawn, machinectl, .nspawn-Dateien, Portable Services | |||
|} | |||
=Bilder= | |||
*Alle Bilder sind drawio-Bilder und lassen sich im Wiki direkt bearbeiten. | |||
{| class="wikitable" | |||
! Bild !! verwendet in | |||
|- | |||
| systemd-targets || [[Systemd Stufe 1 Basic]] | |||
|- | |||
| systemd-unit-pfade || [[Systemd Stufe 2 Fortgeschritten]] | |||
|- | |||
| systemd-wants-after || [[Systemd Stufe 2 Fortgeschritten]] | |||
|- | |||
| systemd-security-score || [[Systemd Stufe 3 Security]] | |||
|} | |} | ||
| Zeile 44: | Zeile 64: | ||
*[[Systemctl kurz und knapp]]: Crashkurs auf einer Seite | *[[Systemctl kurz und knapp]]: Crashkurs auf einer Seite | ||
*[[Systemd Service examples]]: fertige Service-Beispiele | *[[Systemd Service examples]]: fertige Service-Beispiele | ||
*[[Systemd Hardening Workshop]]: die Härtung Schritt für Schritt mit sed | |||
==Ältere Einzelseiten== | |||
*Journal: [[Systemd journald]] · [[Systemd-journalctl-beschreibung]] · [[Journald Remote Logging]] | |||
*Timer: [[Systemd Service timers]] · [[Systemd-time-beschreibung]] · [[Systemd Certbot Apache Timer]] | |||
*Mounts und Netzwerk: [[Systemd mounts]] · [[Systemd-networkd]] · [[Systemd link]] · [[Systemd Isolieren von Diensten vom Netzwerk]] | |||
*Ressourcen: [[Systemd.slice]] · [[Systemd.resource-control]] · [[Systemd cgroups Eigener Slice]] · [[Systemd cgroups Nutzen von systemctl set-property]] · [[Systemd cgroups Servicedateien bearbeiten]] · [[Systemd cgroups Verwendung von Drop-in-Dateien]] | |||
*Container: [[Systemd-nspawnd]] · [[Systemd-nspawnd-beschreibung]] · [[Systemd-portabled]] | |||
*Zeit und Benutzer: [[Systemd timedatectl]] · [[Systemd NTP]] · [[Loginctl]] · [[Systemd-homed-beschreibung]] | |||
*Analyse: [[Systemd-analyze-beschreibung]] | |||
=Links= | =Links= | ||
Aktuelle Version vom 17. Oktober 2026, 17:53 Uhr
Lernpfad systemd
- systemd startet, überwacht und beendet alle Dienste eines Linux-Systems.
- Der Lernpfad führt in drei Stufen vom Benutzen über das Schreiben eigener Units bis zur Härtung und zur Suche nach Angreifern.
- Jede Seite hat dasselbe Gerüst: Einfach erklärt, das Wichtigste, Befehle, Stolperfallen, Aufgaben.
- Alle Beispiele sind auf Debian 13 mit systemd 257 geprüft.
| Stufe | Ziel | Inhalte | Animation |
|---|---|---|---|
| Stufe 1 · Basic | Ich verwende es | Dienste bedienen, Status lesen, Logs mit journalctl, Targets und Runlevel | Targets und Reihenfolge |
| Stufe 2 · Fortgeschritten | Ich schreibe Units | Aufbau einer Unit, Pfade und Drop-ins, Wants und After, Type= und Restart=, Timer | Units schreiben · Was gegen Wann |
| Stufe 3 · Security | Ich härte und untersuche | systemd-analyze security, Dienste Schritt für Schritt härten, systemd-run, Persistenz erkennen | härten und untersuchen |
Vorwissen
- Kernel-Initialisierung: wie es bis zu systemd als Prozess 1 kommt
- Kernel und Module
Themen-Bausteine
- Die Bausteine ergänzen den Lernpfad. In der Spalte steht, ab welcher Stufe man sie versteht.
| Baustein | ab Stufe | Inhalt |
|---|---|---|
| Journal und Logging | 1–3 | lesen, filtern nach Feldern, Größe, FSS-Versiegelung, Logs wegschicken ins SIEM |
| Fehlersuche und Analyse | 1–3 | Fehlercodes in status, verify, blame und critical-chain, Rettungswege, coredumpctl |
| Zeit und Sitzungen | 1 | timedatectl, timesyncd mit eigenem NTP-Server, loginctl, Linger |
| Timer | 2 | OnCalendar und Abstände, Persistent, systemd-run, cron und Timer im Vergleich |
| Mounts | 2 | fstab und Mount-Units, nofail und Automount, eigene .mount, RequiresMountsFor |
| Netzwerk | 2 | systemd-networkd, feste IP und DHCP, networkctl, resolved, Karte umbenennen, Bridge |
| Socket-Aktivierung | 2 | Dienste erst bei Bedarf starten, Echo-Server, Accept=yes und no |
| Ressourcen und cgroups | 2 | Slices, systemd-cgls und cgtop, MemoryMax, CPUQuota, set-property |
| tmpfiles, sysctl, Module | 2 | tmpfiles.d, sysctl.d, modules-load.d und weitere *.d-Verzeichnisse |
| Container | 2–3 | systemd-nspawn, machinectl, .nspawn-Dateien, Portable Services |
Bilder
- Alle Bilder sind drawio-Bilder und lassen sich im Wiki direkt bearbeiten.
| Bild | verwendet in |
|---|---|
| systemd-targets | Systemd Stufe 1 Basic |
| systemd-unit-pfade | Systemd Stufe 2 Fortgeschritten |
| systemd-wants-after | Systemd Stufe 2 Fortgeschritten |
| systemd-security-score | Systemd Stufe 3 Security |
Nachschlagen
- Systemd systemctl: alle systemctl-Befehle
- Systemctl kurz und knapp: Crashkurs auf einer Seite
- Systemd Service examples: fertige Service-Beispiele
- Systemd Hardening Workshop: die Härtung Schritt für Schritt mit sed
Ältere Einzelseiten
- Journal: Systemd journald · Systemd-journalctl-beschreibung · Journald Remote Logging
- Timer: Systemd Service timers · Systemd-time-beschreibung · Systemd Certbot Apache Timer
- Mounts und Netzwerk: Systemd mounts · Systemd-networkd · Systemd link · Systemd Isolieren von Diensten vom Netzwerk
- Ressourcen: Systemd.slice · Systemd.resource-control · Systemd cgroups Eigener Slice · Systemd cgroups Nutzen von systemctl set-property · Systemd cgroups Servicedateien bearbeiten · Systemd cgroups Verwendung von Drop-in-Dateien
- Container: Systemd-nspawnd · Systemd-nspawnd-beschreibung · Systemd-portabled
- Zeit und Benutzer: Systemd timedatectl · Systemd NTP · Loginctl · Systemd-homed-beschreibung
- Analyse: Systemd-analyze-beschreibung