Aktuálna situácia: PHP2Shell. Dve kritické zraniteľnosti PHP (CVSS 9.2) umožňujú spustenie škodlivého kódu bez prihlásenia. Záplaty od 21. 10. 2026.Čo treba urobiť teraz →

Automatické bezpečnostné aktualizácie na serveroch Linux

Podľa správ distribúcie dodávali backporty PHP sčasti už 21. októbra 2026, v deň záplat. Kto používa automatické bezpečnostné aktualizácie, mal ich na serveri rýchlo. Aby zabrali, treba reštarty, zdroje tretích strán a kontrolu.

Stav 5 min čítaniaHardening a konfigurácia

Stručne: Pomocou unattended-upgrades pod Debian a Ubuntu a dnf-automatic v rodine RHEL nasadzujú servery Linux bezpečnostné aktualizácie samostatne. Aby aktualizácia aj zabrala, dotknuté služby ako PHP-FPM sa po nej musia reštartovať; overte to pomocou needrestart alebo časov spustenia procesov. Zdroje tretích strán ako sury.org sa musia výslovne uvoľniť, kontajnery a zmeny hlavnej verzie automatika nepokrýva.

Od záplaty k serveru: automatika šetrí čas

Keď php.net 21. októbra 2026 o 16:00 nemeckého času zverejnil záplaty proti PHP2Shell, začali pre administrátorov preteky. Podľa správ distribúcie dodali svoje backporty sčasti ešte v ten istý deň. Servery s automatickými bezpečnostnými aktualizáciami mohli nové balíky nainštalovať pri najbližšom plánovanom behu, bez toho, aby niekto musel zasiahnuť.

To je dobrá správa. Menej dobrá: nainštalované neznamená účinné. Služba PHP-FPM, ktorá beží týždne, pracuje ďalej so starým kódom v pamäti, kým sa nereštartuje. A balíky zo zdrojov tretích strán, kontajnery alebo hostingové panely s vlastnou správou PHP zostávajú automatikou často nedotknuté.

Tento príspevok ukazuje, ako nastaviť automatické bezpečnostné aktualizácie a doplniť ich tak, aby v krajnom prípade skutočne chránili.

unattended-upgrades pod Debian a Ubuntu

Pod Ubuntu je balík unattended-upgrades štandardne nainštalovaný a nasadzuje bezpečnostné aktualizácie. Pod Debianom ho podľa potreby doinštalujete. Riadi sa dvoma súbormi pod /etc/apt/apt.conf.d/.

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

Súbor 20auto-upgrades určuje, či a ako často sa aktualizujú zoznamy balíkov a nasadzujú aktualizácie. Hodnota je počet dní, "1" znamená denne:

// /etc/apt/apt.conf.d/20auto-upgrades
APT::Periodic::Update-Package-Lists "1";
APT::Periodic::Unattended-Upgrade "1";

V 50unattended-upgrades je uvedené, z ktorých zdrojov smú aktualizácie pochádzať, či sa potom reštartuje a kto dostane správu. Štandardne sú uvoľnené len oficiálne bezpečnostné zdroje distribúcie. Podľa dokumentácie Ubuntu nestačí zapojiť ďalší repozitár: musí byť navyše v tomto zozname, inak ho automatika ignoruje. Týka sa to napríklad repozitára tretej strany sury.org, ktorý podľa správ poskytoval zostavenia PHP pre všetky vetvy od 5.6 po 8.5. Súvislosti sú v príspevku Repozitár sury.org.

Či je všetko v poriadku, ukáže skúšobný beh, ktorý nič nemení:

sudo unattended-upgrade -v --dry-run
# Protokoly skutočných behov
ls -l /var/log/unattended-upgrades/

dnf-automatic na RHEL, AlmaLinux a Rocky Linux

V rodine RHEL preberá rovnakú úlohu dnf-automatic. Konfigurácia leží v /etc/dnf/automatic.conf. Podľa dokumentácie upgrade_type = security kontroluje len aktualizácie s bezpečnostným upozornením a apply_updates je štandardne vypnuté.

# /etc/dnf/automatic.conf (výňatok)
[commands]
upgrade_type = security
download_updates = yes
apply_updates = yes
reboot = never
sudo dnf install dnf-automatic
sudo systemctl enable --now dnf-automatic.timer
systemctl list-timers 'dnf-automatic*'

Okrem dnf-automatic.timer, ktorý sleduje konfiguračný súbor, existujú časovače, ktoré len hlásia, len sťahujú alebo vždy inštalujú. Na začiatok je časovač s konfiguračným súborom najlepšie zrozumiteľný.

Podceňovaná časť: reštart služieb

Správca balíkov nahrádza súbory na disku. Bežiace procesy si ponechávajú starý kód v pamäti. Pri PHP to znamená: kým sa PHP-FPM alebo Apache s mod_php nereštartujú, zraniteľnosť zostáva otvorená.

Nástroj Systém Čo robí
needrestart Debian, Ubuntu rozpoznáva služby so zastaranými súbormi; pod Ubuntu od 24.04 ich štandardne automaticky reštartuje
dnf needs-restarting -s rodina RHEL vypíše služby, ktoré by sa mali reštartovať
Automatic-Reboot unattended-upgrades reštartuje server, ak to aktualizácia vyžaduje; štandardne vypnuté
reboot dnf-automatic never, when-changed alebo when-needed

Podľa dokumentácie Ubuntu bežia služby, ktoré needrestart vynecháva, až do ručného reštartu so starými súbormi. Po každej aktualizácii PHP preto skontrolujte čas spustenia procesov, ako je opísané v článku Reštart PHP-FPM a všetkých workerov.

Dôležité

Pri backportoch zostáva zobrazené číslo verzie PHP často rovnaké. Záplatu doložíte cez changelog balíka s číslami CVE, napríklad pomocou apt-get changelog alebo rpm -q --changelog. Ako na to podrobne, ukazuje Debian a Ubuntu: je môj balík PHP zaplátaný?.

Čo automatika nepokrýva

Automatické aktualizácie sú stavebný prvok, nie úplná správa záplat. Niektoré oblasti potrebujú vlastné postupy:

  1. Kontajnery: PHP v obrazoch Docker sa aktualizáciami hostiteľa neaktualizuje. Obrazy zostaviť znova, kontajnery vytvoriť odznova.
  2. Hostingové panely: Plesk, cPanel a podobné panely spravujú PHP sčasti vlastnými balíkmi a mechanizmami.
  3. Hlavné verzie: prechod napríklad z PHP 8.2, ktoré 31. 12. 2026 dosiahne koniec podpory, na novšiu verziu nenastane automaticky.
  4. Aplikácie: CMS, pluginy a závislosti Composer majú vlastné cesty aktualizácií.
  5. Kontrola: niekto musí čítať protokoly a chybové hlásenia automatiky. Potichu zlyhávajúci beh je horší než žiadny, pretože predstiera bezpečnosť.

Ako tieto časti zrastú do procesu, opisuje Správa záplat ako proces namiesto hasenia požiarov.

Záver: automatika áno, slepá dôvera nie

Automatické bezpečnostné aktualizácie patria na každý server Linux, ktorý je dostupný z internetu. PHP2Shell ukázal, aký stiesnený môže byť čas: podľa správ médií sa prvý pokus o útok pozoroval už 17. októbra, štyri dni pred záplatami. Kto potom ešte čaká na ručné okno údržby, stráca cenný čas.

Automatika vám však odoberá len nasadzovanie. Reštart služieb, doklad stavu záplat, kontajnery, panely a včasný prechod na podporované verzie zostávajú úlohami, za ktoré musí byť niekto zodpovedný. Túto zodpovednosť určte písomne a vzorkovo kontrolujte, či sa protokoly automatiky skutočne čítajú. Až kombinácia automatiky a kontroly robí aktualizácie spoľahlivými.

Ako konkrétne pomáha PHP SOS?

  • Nastaviť: unattended-upgrades alebo dnf-automatic nakonfigurujeme podľa vašich serverov, vrátane uvoľnených zdrojov tretích strán.
  • Zabezpečiť reštarty: zriadime needrestart alebo zodpovedajúce kontroly a po aktualizáciách PHP kontrolujeme časy spustenia procesov.
  • Uzavrieť medzery: kontajnery, panely a zmeny hlavných verzií zaradíme do pevného postupu údržby.
  • Kontrolovať: v rámci zmluvy o bezpečnostnej údržbe kontrolujeme protokoly automatiky a hlásime nápadnosti.

Časté otázky

Nie sú automatické aktualizácie na produkčných serveroch príliš riskantné?

Obmedzené na bezpečnostné aktualizácie distribúcie je riziko spravidla menšie než riziko otvorenej zraniteľnosti. Tieto aktualizácie nemajú prinášať nové funkcie, ale opravovať chyby. Pri kritických systémoch patria k tomu zálohy, monitoring a testovací systém.

Reštartuje unattended-upgrades PHP-FPM po aktualizácii?

Nie nevyhnutne sám. Pod Ubuntu od verzie 24.04 nástroj needrestart štandardne automaticky reštartuje dotknuté služby, vyňaté služby však bežia ďalej so starými súbormi. Po každej aktualizácii PHP skontrolujte čas spustenia všetkých procesov PHP.

Aktualizujú sa balíky zo sury.org alebo iných zdrojov tretích strán automaticky?

Len ak zdroj výslovne uvoľníte. Podľa dokumentácie Ubuntu nestačí pridať repozitár; musí byť navyše v zozname povolených pôvodov unattended-upgrades.

Zvýši automatika aj PHP 8.2 na 8.3?

Nie. Automatické bezpečnostné aktualizácie zostávajú v rámci nainštalovaných verzií balíkov. Zmena hlavnej verzie PHP, napríklad pred koncom podpory PHP 8.2 dňa 31. 12. 2026, ostáva plánovaným projektom s testami.

Čo s kontajnermi Docker?

Aktualizácie na hostiteľovi neaktualizujú verziu PHP v kontajneroch. Obrazy kontajnerov sa musia zostaviť znova alebo stiahnuť znova a kontajnery vytvoriť odznova.

Zdroje

Okamžitý kontakt

Každá hodina sa počíta. Napíšte nám hneď.

Stručne opíšte systém, verziu PHP a svoje pozorovanie. Ozveme sa, vyjasníme situáciu a budeme pracovať na diaľku, kým nebude incident uzavretý a zdokumentovaný.

Okamžitá pomoc