Absicherung von Diensten mit systemd
Version vom 10. Januar 2023, 14:50 Uhr von Thomas.will (Diskussion | Beiträge)
Systemd absichern
- Diese systemd-Funktionen wurden so konzipiert, dass sie so einfach wie möglich zu verwenden sind, um sie für Administratoren und Upstream-Entwickler attraktiv zu machen:
- Isolieren von Diensten vom Netzwerk
- Service-private /tmp
- Verzeichnisse als schreibgeschützt oder für Dienste unzugänglich erscheinen lassen
- Funktionen von Diensten wegnehmen
- Verbieten von Forking, Einschränkung der Dateierstellung für Dienste
- Steuern des Geräteknotenzugriffs auf Dienste
- Alle hier beschriebenen Optionen sind in den Manpages von systemd dokumentiert, insbesondere in systemd.exec(5)
- Alle diese Optionen sind auf allen systemd-Systemen verfügbar, unabhängig davon, ob SELinux oder ein anderer MAC aktiviert ist oder nicht.
- Alle diese Optionen sind relativ günstig, also nutze sie im Zweifelsfall.
- Auch wenn Sie denken, dass Ihr Dienst nicht in /tmp schreibt und daher die Aktivierung von PrivateTmp=yes (wie unten beschrieben) möglicherweise nicht erforderlich ist, ist es aufgrund der heutigen komplexen Software immer noch vorteilhaft, diese Funktion zu aktivieren, einfach weil Sie auf Bibliotheken verlinken (und Plug-Ins für diese Bibliotheken), die Sie nicht kontrollieren, benötigen möglicherweise doch temporäre Dateien. Beispiel: Sie wissen nie, welche Art von NSS-Modul Ihre lokale Installation aktiviert hat und was dieses NSS-Modul mit /tmp macht.
- Diese Optionen sind hoffentlich sowohl für Administratoren interessant, um ihre lokalen Systeme zu sichern, als auch für Upstream-Entwickler, um ihre Dienste standardmäßig sicher bereitzustellen. Wir empfehlen Upstream-Entwicklern dringend, diese Optionen standardmäßig in ihren Upstream-Serviceeinheiten zu verwenden.
- Sie sind sehr einfach zu bedienen und bieten große Vorteile für die Sicherheit.
Möglichkeiten
- systemd Isolieren von Diensten vom Netzwerk
- systemd Dienst-Privat /tmp=
- systemd Verzeichnisse als schreibgeschützt oder für Dienste nicht zugänglich machen
- systemd Fähigkeiten von Diensten wegnehmen
- systemd Verbieten von Forking, Einschränkung der Dateierstellung für Dienste
- systemd Steuern des Geräteknotenzugriffs auf Dienste
- systemd Andere Optionen