Skip to content
VDS · Sicherheit

Automatische Sicherheitsupdates

Wie Sie unattended-upgrades unter Debian und Ubuntu sowie dnf-automatic unter AlmaLinux konfigurieren, damit Patches sich selbst installieren, ohne dass der Dienst nachts ausfällt.

Aktualisiert am 23. August 2026

Die meisten Sicherheitsvorfälle gehen auf Schwachstellen zurück, die schon vor Monaten geschlossen wurden. Manuelle Updates werden aufgeschoben, automatische nicht. Ein vernünftiges Setup installiert nur Sicherheitsupdates und lässt alles andere unangetastet.

Debian und Ubuntu

apt install -y unattended-upgrades apt-listchanges
dpkg-reconfigure -plow unattended-upgrades

Die Datei /etc/apt/apt.conf.d/50unattended-upgrades:

Unattended-Upgrade::Allowed-Origins {
    "${distro_id}:${distro_codename}-security";
};
Unattended-Upgrade::Package-Blacklist {
    "postgresql-.*";
    "docker-ce";
};
Unattended-Upgrade::Remove-Unused-Dependencies "true";
Unattended-Upgrade::Automatic-Reboot "false";
Unattended-Upgrade::Mail "you@example.com";

Der Zeitplan steht in /etc/apt/apt.conf.d/20auto-upgrades:

APT::Periodic::Update-Package-Lists "1";
APT::Periodic::Unattended-Upgrade "1";

Ein Probelauf, ohne Änderungen vorzunehmen:

unattended-upgrade --dry-run --debug
systemctl status unattended-upgrades
cat /var/log/unattended-upgrades/unattended-upgrades.log

AlmaLinux und CentOS Stream

dnf install -y dnf-automatic

In /etc/dnf/automatic.conf:

[commands]
upgrade_type = security
apply_updates = yes
reboot = never
systemctl enable --now dnf-automatic.timer
systemctl list-timers | grep dnf

Was ausgeschlossen werden sollte

Nehmen Sie alles in die Ausschlussliste auf, was bricht, wenn sich seine Version unerwartet ändert: den Datenbankserver, Docker, die Anwendungs-Engine selbst. Aktualisieren Sie diese von Hand zu einer ruhigen Zeit — siehe System- und Paketupdates.

Kernel-Sicherheitsupdates werden ebenfalls installiert, wirken sich aber erst nach einem Neustart aus:

test -f /var/run/reboot-required && cat /var/run/reboot-required.pkgs

Neustart: ausschließlich eine menschliche Entscheidung

Die Versuchung, Automatic-Reboot "true" zu setzen, ist groß, doch ein automatischer nächtlicher Neustart bedeutet, dass der Dienst neu startet, ohne dass jemand zusieht. Wenn etwas nicht wieder hochkommt, erfahren Sie es am Morgen von Ihren Nutzern.

Ein vernünftiger Kompromiss: Die Updates installieren sich selbst, und Sie starten einmal im Monat manuell neu, während Sie die Konsole im Panel unter /hosting/vds/m/<id> beobachten. Prüfen Sie dabei gleich, ob die Dienste von selbst starten:

systemctl is-enabled nginx postgresql
systemctl list-units --state=failed

Häufige Fehler

FehlerFolgeLösung
Updates für alle Repositories aktiviert, nicht nur für SicherheitsupdatesFunktionsänderungen treffen einNur die -security-Quelle behalten
Die Datenbank steht nicht auf der AusschlusslisteEine Hauptversion beschädigt die DatenIn Package-Blacklist aufnehmen
Automatischer Neustart in der NachtDer Dienst kam nicht hoch, und niemand hat es bemerktAutomatic-Reboot "false"
Eingerichtet und vergessenDer Kernel wird aktualisiert, das Update aber nicht angewendetEinmal im Monat reboot-required prüfen
Heruntergeladene Pakete haben die Festplatte gefülltIhnen geht der Speicherplatz ausAutomatische Cache-Bereinigung aktiviert lassen

Automatische Updates sind eine Versicherung, kein Ersatz für Aufmerksamkeit. Öffnen Sie einmal im Monat die Maschine, werfen Sie einen Blick auf das Update-Log, die Liste der fehlgeschlagenen Dienste und ob ein Neustart nötig ist. Fünfzehn Minuten im Monat decken die meisten Szenarien aus dem Artikel Anzeichen eines Sicherheitsvorfalls ab.