# cPanel a WHM: zabezpečenie PHP

> cPanel aktualizácia PHP po PHP2Shell: skontrolujte balíky ea-php, reštartujte PHP-FPM a Apache, nastavte prechodné hodnoty a preukážte stav záplat.

Zdroj: https://phpsos.de/sk/server/cpanel/  
Stav: 25.10.2026  
Poskytovateľ: PHP SOS, Núdzová pomoc pri PHP a bezpečnosť serverov. Okamžitá pomoc cez WhatsApp: https://wa.me/491736494914?text=Dobr%C3%BD%20de%C5%88%2C%20PHP%20SOS%2C%20potrebujeme%20pomoc%20s%20na%C5%A1%C3%ADm%20serverom%20s%20PHP.%20Spolo%C4%8Dnos%C5%A5%3A%20%E2%80%A6%20Web%3A%20%E2%80%A6

**Stručne:** Aktualizácia PHP v cPanel po PHP2Shell zahŕňa tri kroky: dostať všetky balíky ea-php a prípadne alt-php na opravený stav, úplne reštartovať PHP-FPM a Apache a zdokumentovať stav balíkov. Zákazníci na serveri najdôležitejšie prechodné hodnoty sami nastaviť nemôžu, musí to urobiť správca WHM.

## Východisková situácia na serveroch s cPanel

PHP2Shell zahŕňa zraniteľnosti CVE-2026-109618 a CVE-2026-109619 v samotnom PHP. Obe umožňujú spustenie škodlivého kódu bez prihlásenia a majú hodnotenie CVSS v4.0 9.2. Dotknuté sú PHP-FPM, Apache s mod_php, php-cgi, FrankenPHP a LiteSpeed. Projekt PHP zverejnil 21. 10. 2026 verzie 8.5.12, 8.4.27, 8.3.36 a 8.2.35.

cPanel dodáva PHP nie ako jediný balík, ale cez EasyApache 4 s jednou sadou balíkov pre každú verziu, napríklad `ea-php83` alebo `ea-php84`. Na niektorých serveroch pribúdajú balíky operačného systému a na CloudLinux verzie alt-php. Každý zdroj má vlastný stav. Úplný obraz vznikne až vtedy, keď skontrolujete všetky tri.

## Aktualizácia PHP v cPanel: skontrolujte stav a priradenie

Začnite inventúrou. Nasledujúce príkazy iba čítajú a nič nemenia. Cesty a názvy balíkov sú príklady a môžu sa podľa inštalácie líšiť.

```bash
# Nainštalované verzie PHP podľa API WHM
whmapi1 php_get_installed_versions

# Verzia každej inštalácie ea-php
for p in /opt/cpanel/ea-php*/root/usr/bin/php; do echo "$p"; "$p" -v | head -1; done

# Stav balíkov (systémy založené na RPM, príklad)
rpm -qa | grep -E '^ea-php[0-9]+-php-(cli|fpm|common)' | sort
```

V MultiPHP Manager vidíte, ktorá doména používa ktorú verziu a či je zapnuté PHP-FPM. Zaznamenajte si verzie, ktoré sú nainštalované, ale nie sú priradené žiadnej doméne. Aj ony patria medzi aktualizované alebo odstránené.

## Správne zaradenie backportov

Ako u iných poskytovateľov platí: zobrazené číslo verzie nie je jediným meradlom. Ak sa oprava dodáva ako backport, číslo môže zostať nezmenené. Skontrolujte preto navyše changelog balíka a upozornenia poskytovateľa.

```bash
# Vyhľadanie čísel CVE v changelogu balíka (príklad)
rpm -q --changelog ea-php84-php-cli | grep -iE 'CVE-2026-1096(18|19)'
```

Ak sa záznam nenájde, neznamená to automaticky, že oprava chýba. Znamená to však, že pred zaradením servera medzi záplatované potrebujete písomné potvrdenie. Ako správne čítať verzie, opisuje stránka [Kontrola verzie PHP a stavu záplat](https://phpsos.de/sk/php2shell/php-version-pruefen/).

## Aktualizácia, reštart a kontrola

Aktualizáciu nasadíte vo WHM cez systémovú aktualizáciu alebo cez správcu balíkov. Potom reštartujte všetky procesy PHP. Nové súbory samy nestačia, kým v pamäti bežia staré procesy.

```bash
# Reštart služieb PHP-FPM všetkých verzií (skript cPanel)
/scripts/restartsrv_apache_php_fpm

# Úplný reštart Apache
/scripts/restartsrv_httpd

# Kontrola času spustenia procesov PHP
ps -eo pid,lstart,cmd | grep -E 'php-fpm|lsphp|php-cgi' | grep -v grep
```

Každý proces PHP by mal mať čas spustenia po aktualizácii. Ak to tak nie je, cielene ho ukončite cez príslušnú službu. Pri viacerých serveroch sa oplatí krátky záznam pre každý stroj, ktorý môžete neskôr použiť ako dôkaz.

> **Dôležité:**
> Aktualizácia CMS cez nástroje cPanel, ako je WP Toolkit, zraniteľnosť PHP neuzavrie. Je užitočná, ale nenahrádza ani aktualizáciu PHP, ani reštart.

## Nastavte prechodné hodnoty centrálne

Ak verzia ešte nie je opravená, php.net odporúča prechodné opatrenia, ktoré neposkytujú úplnú ochranu. V cPanel ich nastavíte v MultiPHP INI Editor v režime pre administrátorov alebo priamo v php.ini príslušnej verzie ea-php. Hodnoty v `.user.ini` zákazníckych účtov pre `session.upload_progress.enabled` nestačia.

```ini
; celoserverová php.ini dotknutej verzie (príklad)
session.upload_progress.enabled = 0
post_max_size = 32M
upload_max_filesize = 24M
```

Bez funkcie nahrávania php.net uvádza `post_max_size = 8M`. Pri PHP 8.5 pribúda `fatal_error_backtraces=0`. Potom znova reštartujte všetkých workerov. Obmedzenie pamäte nastavte cez cgroups, napríklad pomocou limitov CloudLinux, nie cez `RLIMIT_AS` alebo `RLIMIT_DATA`. Ďalšie podrobnosti nájdete na stránke [Okamžité opatrenia bez záplaty](https://phpsos.de/sk/php2shell/sofortmassnahmen-ohne-patch/).

## Zodpovednosť medzi prevádzkovateľom servera a majiteľmi účtov

Na serveri cPanel s mnohými účtami nesie zodpovednosť za PHP, služby a celoserverovú konfiguráciu správca WHM. Majitelia jednotlivých účtov zodpovedajú za svoje aplikácie, pluginy a prístupové údaje. Informujte majiteľov účtov, kedy a ako sa záplatovalo, a odporučte im, aby svoje aplikácie skontrolovali na nápadnosti. Ako vyzerá situácia z pohľadu zákazníka, opisuje stránka [Zdieľaný hosting](https://phpsos.de/sk/server/shared-hosting/).

Uchovajte logy od 20. 10. 2026. Záplata neodstráni škodlivý softvér, ktorý bol zavlečený predtým.

Na dôkaz stačí jednoduchý záznam pre každý server: dátum a čas aktualizácie, zoznam balíkov ea-php a alt-php s verziou pred a po, zoznam procesov s časmi spustenia po reštarte a prípadne potvrdenie dodávateľa balíkov k backportom. Záznam uložte mimo servera. Neskôr poslúži ako doklad voči zákazníkom, poisťovateľom alebo kontrolným orgánom a uľahčí ďalšiu núdzovú aktualizáciu, pretože kroky sú už opísané. Ak prevádzkujete viac serverov cPanel, oplatí sa zhrnúť čítacie príkazy z tejto stránky do malého skriptu, ktorý beží na všetkých strojoch rovnako a zbiera výsledky. Takto na prvý pohľad rozpoznáte odchýlky medzi servermi, napríklad zabudnutú verziu PHP.

## Ako konkrétne pomáha PHP SOS?

- Zaznamenáme balíky ea-php, alt-php a systémové balíky a priradíme všetky účty k ich verzii PHP.
- Cez našu [službu záplatovania PHP](https://phpsos.de/sk/leistungen/php-patch-service/) aktualizujeme, reštartujeme všetky služby a stav preukážeme zoznamami balíkov a časmi procesov.
- Kde je to potrebné, nastavíme prechodné hodnoty celoserverovo a tak, aby sa nedali prepísať.
- Účty kontrolujeme na typické stopy kompromitácie a pri náleze spustíme [odstránenie malvéru](https://phpsos.de/sk/leistungen/malware-entfernung/).
- Potom znížime počet verzií PHP a spevníme konfiguráciu.


## Časté otázky

**Kde vo WHM vidím, ktorá doména používa ktorú verziu PHP?**  
V MultiPHP Manager vo WHM vidíte pre každú doménu priradenú verziu a to, či je PHP-FPM aktívne. Na úplný zoznam sa hodí aj dotaz z príkazového riadku. Poznačte si aj verzie, ktoré nie sú priradené žiadnej doméne.

**Smie zákazník cPanel nastaviť prechodné hodnoty sám v .user.ini?**  
Pre session.upload_progress.enabled php.net výslovne uvádza, že .user.ini a ini_set() nestačia. Hodnota patrí do php.ini, poolu FPM alebo konfigurácie servera. To môže urobiť iba správca servera.

**Stačí graceful reštart Apache?**  
Pri PHP-FPM sa musia reštartovať samotné služby FPM, reload Apache ich neobnoví. Pri handleroch PHP založených na Apache je bezpečnou cestou úplný reštart. Potom skontrolujte čas spustenia všetkých procesov PHP.

**Ako je to s CloudLinux a alt-php?**  
Na serveroch s CloudLinux bežia weby sčasti s vlastnými balíkmi alt-php namiesto ea-php. Tie majú vlastný stav balíkov a musia sa kontrolovať a aktualizovať osobitne.

## Zdroje

- [php.net: bezpečnostné hlásenia](https://www.php.net/)
- [PHP 8 ChangeLog](https://www.php.net/ChangeLog-8.php)
- [php.net: podporované verzie](https://www.php.net/supported-versions.php)
- [BSI](https://www.bsi.bund.de/)
