Kernel Hardening Defaults: sysctl, lockdown mode, module signing

Ein gehärteter Linux-Kernel ist die Basis für sichere Server. Durch geeignete Standardkonfigurationen lassen sich Angriffsflächen reduzieren, unautorisierte Änderungen verhindern und Systeme stabil betreiben. In diesem Tutorial werden sysctl-Einstellungen, Kernel Lockdown-Modi und Modul-Signierung betrachtet, um ein sicheres, audittaugliches Setup zu erreichen.

Sysctl: Kernel-Parameter für Sicherheit

Sysctl ermöglicht die Laufzeitkonfiguration von Kernelparametern. Viele Sicherheitsmaßnahmen lassen sich hier zentral einstellen, ohne Kernel-Quellcode anzupassen.

Netzwerk-Hardening

Empfohlene Parameter für TCP/IP und ICMP:

# ICMP Redirects deaktivieren
net.ipv4.conf.all.accept_redirects = 0
net.ipv4.conf.default.accept_redirects = 0

Source Routing verhindern

net.ipv4.conf.all.accept_source_route = 0
net.ipv4.conf.default.accept_source_route = 0

SYN-Flood Schutz

net.ipv4.tcp_syncookies = 1

IPv6 Schutz

net.ipv6.conf.all.accept_ra = 0
net.ipv6.conf.default.accept_ra = 0

Dateisystem- und Kernel-Hardening

Parameter, die Schreibrechte und Kernelzugriffe einschränken:

# IP-Fwd deaktivieren, außer explizit benötigt
net.ipv4.ip_forward = 0

Kernel-Panik bei OOM vermeiden

vm.panic_on_oom = 0

Modul- und Kernel-Parameter

kernel.kptr_restrict = 2

Kernel Lockdown Mode

Der Lockdown-Modus schützt kritische Kernelbereiche vor unautorisierten Änderungen, selbst von Root.

Lockdown-Level

  • none: Kein Lockdown
  • integrity: Schützt kritische Kernel-Interfaces; Root kann keine Module laden oder Bootparameter ändern.
  • confidentiality: Zusätzlich Schutz sensibler Daten wie /proc/kcore.

Aktivierung

# Bootparameter in GRUB setzen
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash lockdown=integrity"
sudo update-grub

Nach einem Reboot prüft cat /sys/kernel/security/lockdown den aktuellen Status.

Module Signing: Nur vertrauenswürdige Kernelmodule

Die Signierung von Kernelmodulen stellt sicher, dass nur geprüfte Module geladen werden können. Dies reduziert die Gefahr von Rootkits.

Schritte zur Modul-Signierung

  • Schlüsselpaar erstellen:
  • openssl req -new -x509 -newkey rsa:2048 -keyout MOK.priv -outform DER -out MOK.der -nodes -days 36500 -subj "/CN=Kernel Module Signing/"
    
  • Kernel-Key importieren:
  • sudo mokutil --import MOK.der
    # Passwort setzen, Reboot, MOK-Passwort im UEFI-Menü bestätigen
    
  • Module signieren:
  • sudo /usr/src/linux-headers-$(uname -r)/scripts/sign-file sha256 MOK.priv MOK.der .ko
    
  • Verifizierung:
  • modinfo .ko | grep signer
    

Best Practices für Kernel-Hardening

  • Sysctl-Parameter versionieren und automatisiert anwenden (z. B. über Ansible oder Puppet).
  • Lockdown-Modus auf allen produktiven Servern aktivieren, solange keine Legacy-Module erforderlich sind.
  • Nur signierte Kernelmodule zulassen und unvertrauenswürdige Module blockieren.
  • Kernel-Updates regelmäßig prüfen und automatisiert testen, um Sicherheitslücken zeitnah zu schließen.
  • Audit-Mechanismen (auditd) verwenden, um Änderungen an sysctl-Parametern und Kernelmodulen zu protokollieren.

Monitoring und Validierung

Regelmäßige Checks stellen sicher, dass Hardening-Parameter wirksam bleiben:

# Aktuelle Sysctl-Parameter prüfen
sysctl -a | grep 'net.ipv4'

Lockdown Status prüfen

cat /sys/kernel/security/lockdown

Signierte Module prüfen

lsmod | xargs -n1 modinfo | grep signer

Diese Baselines sollten in automatisierte Monitoring-Skripte integriert werden, um Abweichungen sofort zu erkennen.

Fazit

Ein gehärteter Kernel mit systematischen sysctl-Einstellungen, aktiviertem Lockdown-Modus und signierten Modulen reduziert die Angriffsfläche erheblich. Die Kombination aus Netzwerk-, Datei- und Kernelhärtung, kontinuierlicher Validierung und Monitoring bildet eine solide Grundlage für audittaugliche, sichere Linux-Serverumgebungen.

Konfiguriere Cisco Router & Switches und liefere ein Packet-Tracer-Lab/GNS3

Ich biete professionelle Unterstützung im Bereich Netzwerkkonfiguration und Network Automation für private Anforderungen, Studienprojekte, Lernlabore, kleine Unternehmen sowie technische Projekte. Ich unterstütze Sie bei der Konfiguration von Routern und Switches, der Erstellung praxisnaher Topologien in Cisco Packet Tracer, dem Aufbau und Troubleshooting von GNS3- und EVE-NG-Labs sowie bei der Automatisierung von Netzwerkaufgaben mit Netmiko, Paramiko, NAPALM und Ansible. Kontaktieren Sie mich jetzt – klicken Sie hier.

Meine Leistungen umfassen:

  • Professionelle Konfiguration von Routern und Switches

  • Einrichtung von VLANs, Trunks, Routing, DHCP, NAT, ACLs und weiteren Netzwerkfunktionen

  • Erstellung von Topologien und Simulationen in Cisco Packet Tracer

  • Aufbau, Analyse und Fehlerbehebung von Netzwerk-Labs in GNS3 und EVE-NG

  • Automatisierung von Netzwerkkonfigurationen mit Python, Netmiko, Paramiko, NAPALM und Ansible

  • Erstellung von Skripten für wiederkehrende Netzwerkaufgaben

  • Dokumentation der Konfigurationen und Bereitstellung nachvollziehbarer Lösungswege

  • Konfigurations-Backups, Optimierung bestehender Setups und technisches Troubleshooting

Benötigen Sie Unterstützung bei Ihrem Netzwerkprojekt, Ihrer Simulation oder Ihrer Network-Automation-Lösung? Kontaktieren Sie mich jetzt – klicken Sie hier.

Related Articles