Ghid de securitate · România

Cum actualizez serverul Linux cu patch-uri de securitate fără să opresc producția?

Majoritatea intruziunilor pe servere folosesc vulnerabilități pentru care patch-ul exista de săptămâni. Problema nu e lipsa actualizărilor, ci lipsa unei rutine: cine le aplică, când, cum afli că e nevoie de restart și ce faci dacă ceva se rupe.

Actualizat la

Răspuns scurt

  1. Actualizezi serverul Linux cu patch-uri de securitate automatizând actualizările din depozitul de securitate, prin unattended-upgrades pe Debian și Ubuntu sau dnf-automatic pe RHEL, Alma și Rocky.
  2. Patch-urile de kernel și de glibc cer restart, pe care îl planifici într-o fereastră de mentenanță anunțată sau îl amâni cu livepatch.
  3. Verifici cu needrestart ce servicii încă rulează cod vechi după actualizare și le repornești.
  4. Aplici întâi pe staging, apoi pe producție, iar containerele nu le patch-uiești: reconstruiești imaginea și faci rollout.
Debian / Ubuntu
unattended-upgrades, doar sursa -security
RHEL / Alma / Rocky
dnf-automatic cu upgrade_type = security
Ce cere restart complet
kernel, glibc, systemd
Verificarea după actualizare
needrestart -b

De ce actualizările de securitate se aplică automat, iar restul nu

Depozitul de securitate al distribuției conține doar corecții, fără funcționalități noi, deci riscul de a rupe aplicația e mic, iar riscul de a nu le aplica e mare. Le lași să ruleze zilnic, fără intervenție. Versiunile noi de PHP, PostgreSQL sau Node.js le tratezi ca pe o schimbare de aplicație: staging, planificare, documentare. Pe Debian și Ubuntu separarea se face în Allowed-Origins; pe RHEL, prin upgrade_type = security. Securitate automată plus funcționalități manuale e compromisul care ține.

Kernel, restart și fereastra de mentenanță

Un patch de kernel instalat fără repornire nu protejează nimic: kernelul vechi rulează până la următorul boot. La fel glibc, folosită de toate procesele. needrestart îți spune ce servicii țin în memorie biblioteci înlocuite și dacă e nevoie de reboot. Planifici repornirea noaptea, anunți clienții, verifici după că totul a pornit. Dacă nu poți reporni, livepatch pe Ubuntu sau kpatch pe RHEL aplică o parte din corecții în memorie. Cu două servere în spatele unui load balancer, repornești câte unul.

  • Snapshot sau backup înainte de fiecare fereastră de mentenanță
  • Staging cu cel puțin o zi înaintea producției
  • Containerele se reconstruiesc din imaginea de bază actualizată, nu se patch-uiesc din interior

Ce spune legislația din România

Pentru entitățile înregistrate la DNSC sub OUG 155/2024, transpunerea NIS2 aprobată prin Legea 124/2025, gestionarea vulnerabilităților face parte din măsurile minime de gestionare a riscului, iar la un incident vei fi întrebat când a apărut patch-ul și când l-ai aplicat. Pentru orice firmă care prelucrează date personale, un server compromis printr-o vulnerabilitate corectată de luni de zile e greu de apărat în fața ANSPDCP sub art. 32 GDPR. Logul scris automat de unattended-upgrades e proba cea mai simplă.

Tipuri de actualizări și cum le tratezi pe un server de producție
Tip de actualizareCum se aplicăRestart necesarStaging
Patch de securitate pentru pacheteAutomat, zilnicDoar serviciul afectat (needrestart)Opțional
Kernel, glibc, systemdAutomat, cu reboot planificatReboot complet sau livepatchRecomandat
Versiune nouă de PHP, PostgreSQL, Node.jsManual, planificatServiciulObligatoriu
Imagine DockerReconstruire în CI și rolloutContainerul se înlocuieșteObligatoriu

Comenzi și configurări

Debian / Ubuntu: doar actualizările de securitate, cu reboot planificat
# /etc/apt/apt.conf.d/50unattended-upgrades (fragment)
Unattended-Upgrade::Allowed-Origins {
    "${distro_id}:${distro_codename}-security";
};
Unattended-Upgrade::Remove-Unused-Dependencies "true";
Unattended-Upgrade::Automatic-Reboot "true";
Unattended-Upgrade::Automatic-Reboot-Time "03:30";

# /etc/apt/apt.conf.d/20auto-upgrades
APT::Periodic::Update-Package-Lists "1";
APT::Periodic::Unattended-Upgrade "1";
RHEL / Alma / Rocky: dnf-automatic doar pe securitate
sudo dnf install -y dnf-automatic
# /etc/dnf/automatic.conf (fragment)
[commands]
upgrade_type = security
apply_updates = yes

sudo systemctl enable --now dnf-automatic.timer
Verifici ce e de actualizat și ce trebuie repornit
apt list --upgradable
sudo unattended-upgrade --dry-run
sudo needrestart -b

Exemple practice

Magazin online din Brașov pe un VPS Ubuntu

Serverul nu fusese repornit de un an și rula un kernel cu vulnerabilități cunoscute, deși pachetele erau la zi. needrestart a arătat că și PHP-FPM folosea o bibliotecă înlocuită. Reboot-ul planificat marți, la trei dimineața, a durat două minute.

Firmă de contabilitate din Cluj pe Rocky Linux

dnf-automatic aplica toate actualizările, inclusiv o versiune nouă de MariaDB care a schimbat un comportament de sortare. Configurația a trecut pe upgrade_type = security, iar upgrade-urile de funcționalități se fac lunar, întâi pe o copie de test.

Greșeli frecvente

  • Instalezi patch-ul de kernel și nu repornești, deci serverul rulează în continuare kernelul vulnerabil.
  • Lași automatizarea să aplice și actualizările de funcționalități, iar aplicația se rupe la trei dimineața.
  • Faci apt upgrade în container și te miri că la următorul restart vulnerabilitatea e înapoi.
  • Reboot-ul automat e pornit, dar nimeni nu verifică dimineața că serviciile au pornit.

Cum te ajută 4hosting

  • Serviciul Hardening & Compliance configurează actualizările automate de securitate și fereastra de mentenanță, în orele incluse: 1–8 lunar la VPS, 10 la dedicate și GPU, cerute din panoul de client, secțiunea „Servicii DevOps”; orele se consumă în luna calendaristică și nu se reportează.
  • Serviciul CI/CD & Monitoring pune reconstruirea imaginilor Docker în pipeline, ca patch-urile să ajungă în producție prin rollout.
  • Pe planurile cPanel, sistemul de operare și serviciile de bază sunt întreținute de 4hosting; tu răspunzi de aplicație și de plugin-uri.

Întrebări conexe

  • Cât de repede trebuie aplicat un patch de securitate?

    Pentru vulnerabilitățile exploatate activ, în aceeași zi, chiar cu un restart neplanificat. Pentru restul, rularea zilnică automată e suficientă. Contează să știi în ce categorie ești: urmărești anunțurile distribuției și, dacă ai obligații NIS2, buletinele DNSC.

  • Actualizările automate pot rupe serverul?

    Rar, dacă le limitezi la depozitul de securitate. Riscul real vine din upgrade-urile de funcționalități aplicate automat și din repornirile fără verificare. Păstrezi un snapshot înainte de fereastra de mentenanță și un check simplu, dimineața, că serviciile răspund.

  • Cum știu dacă serverul meu e afectat de o vulnerabilitate anunțată?

    Compari versiunea instalată, cu apt policy sau dnf info, cu versiunea corectată din anunțul distribuției, care menționează identificatorul CVE. Pentru un parc mai mare, un scaner de vulnerabilități rulat periodic face comparația pentru tine.

Cere o verificare de securitate

Un server de producție e atacat automat din primele minute după ce primește IP public, indiferent cât de mic e proiectul. Ghidul ordonează controalele după impact, de la accesul SSH până la răspunsul la incident, cu legislația din România care se aplică. Fiecare temă are o pagină dedicată, cu răspuns scurt, exemple și configurări.