Stručně: Repozitář Remi PHP dodává aktuální verze PHP pro Fedoru a rodinu RHEL, buď jako stream modulu, který nahrazuje systémové PHP, nebo jako Software Collection, která instaluje několik verzí souběžně. Opravy PHP2Shell 8.2.35, 8.3.36, 8.4.27 a 8.5.12 tam byly oznámeny 22. října 2026. Zkontrolujte každou nainstalovanou verzi zvlášť a restartujte každou příslušnou službu.
Proč tolik serverů RHEL získává PHP z Remi
Podnikové distribuce jako RHEL, AlmaLinux a Rocky Linux sázejí na dlouhodobou stabilitu. Dodávají málo větví PHP a drží je po léta. Mnoho aplikací ale vyžaduje novější verze, než distribuce nabízí. Zde nastupuje repozitář Remi Colleta, dlouholetého správce balíčků PHP v prostředí Fedory a RHEL.
Remi sestavuje verze PHP v krátkém sledu po oficiálních vydáních. K PHP2Shell vyšel v blogu repozitáře 22. října 2026 příspěvek k verzím 8.2.35, 8.3.36, 8.4.27 a 8.5.12. Uvádí obě kritické zranitelnosti CVE-2026-109618 a CVE-2026-109619 a aktualizaci naléhavě doporučuje. Bezpečnostní oznámení Red Hat pro tyto balíčky neplatí; co Red Hat hlásí pro vlastní balíčky, stojí v článku RHEL, AlmaLinux a Rocky Linux: kontrola záplaty PHP.
Dvě cesty: stream modulu, nebo Software Collection
Podle blogu Remi jsou buildy pro Enterprise Linux od verze 8 k dispozici dvěma cestami. Která se na vašem serveru používá, určuje, jak kontrolujete a restartujete.
| Cesta | Repozitář | Účinek | Typická služba |
|---|---|---|---|
Stream modulu, například php:remi-8.3 |
remi-modular | nahrazuje systémové PHP, jedna výchozí verze | php-fpm |
Software Collection, například php83 |
remi-safe | další verze souběžně ve vlastní cestě | vlastní služba pro každou verzi, například php83-php-fpm |
| Testovací balíčky a release kandidáti | remi-modular-test, remi-test | předběžné verze | ne pro produkci |
Software Collections leží typicky pod /opt/remi/phpXY, jejich konfigurace pod /etc/opt/remi/phpXY. To je praktické pro provoz starých a nových aplikací na jednom serveru. Je to ale také nejčastější důvod, proč se při aktualizaci nějaká verze přehlédne.
Poznámka k příkazové řádce: Software Collections nejsou automaticky dostupné pod příkazem php. Podle nastavení je cron úlohy a skripty volají vlastním příkazem nebo plnou cestou. Zkontrolujte proto i crontaby a nasazovací skripty, pokud chcete vědět, která collection se k čemu používá.
Ověřit repozitář Remi PHP po PHP2Shell
Následující příkazy jen čtou a ukazují, které balíčky z Remi jsou nainstalovány a jaký mají stav.
# Aktivní zdroje balíčků: Je zapojen remi-modular nebo remi-safe?
dnf repolist
# Aktivní stream modulu pro PHP
dnf module list --enabled php
# Základní balíčky a souběžně nainstalované Software Collections
rpm -qa 'php-*' 'php[0-9][0-9]-php-*' --qf '%{NAME}-%{VERSION}-%{RELEASE}\n' | sort
# Verze každé nainstalované collection
for b in /opt/remi/php*/root/usr/bin/php; do echo "$b"; "$b" -v | head -1; done
U podporovaných větví je situace jednoznačná: Pokud tam stojí 8.5.12, 8.4.27, 8.3.36 nebo 8.2.35 či novější, oprava je obsažena. U Remi odpovídá číslo verze zpravidla verzi upstreamu, na rozdíl od balíčků distribucí, které si často ponechávají staré číslo.
Pro starší collections jako php81, php80 nebo php74 žádná oficiální cílová verze neexistuje. Remi vede PHP 8.1 jako End-of-Life. Zda nainstalovaný balíček obsahuje opravu proti PHP2Shell, ověřte v changelogu, například pomocí rpm -q --changelog php81-php-fpm | grep -E "CVE-2026-10961[89]". Bez nálezu považujte balíček za nevyjasněný. Jak takové nálezy čistě doložit, popisuje článek Doložení čísel CVE v changelogu balíčku.
Neaktivujte testovací repozitáře jako remi-test nebo remi-modular-test trvale na produkčních serverech. Dodávají release kandidáty určené k testování.
Aktualizace a restart každé verze
Samotná aktualizace je u Remi většinou nenápadná: dnf upgrade stáhne nové balíčky pro stream a collections. Kritická část následuje potom. Každá collection má vlastní službu FPM a každá musí být restartována.
# Vypsat všechny služby PHP-FPM, i ty z collections
systemctl list-units --type=service --all | grep -E "php.*fpm"
# Zkontrolovat časy spuštění všech procesů PHP
ps -eo pid,lstart,cmd | grep -E "[p]hp-fpm|[h]ttpd"
Časy spuštění před aktualizací znamenají: Tato služba stále pracuje se starým kódem. Proč znovunačtení nestačí, vysvětluje stránka Restart PHP-FPM a všech workerů.
Remi a distribuce: kdo je odpovědný?
Kdo přes stream modulu přejde na Remi, mění pro PHP dodavatele. Bezpečnostní oznámení Red Hat, AlmaLinux nebo Rocky Linux se pak už nevztahují na nainstalované balíčky PHP. Naopak Remi nehlásí problémy v jiných balíčcích systému. Oba zdroje tedy musíte mít na očích.
Odkud nainstalovaný balíček pochází, ukazuje databáze balíčků, například pomocí rpm -qi php-fpm v polích pro výrobce a balíčkáře. Protože pro balíčky Remi neexistují errata ve smyslu Red Hat, hodí se jako cesta upozornění blog repozitáře; lze ho odebírat přes RSS kanál. U PHP2Shell tam upozornění vyšlo den po oficiálních vydáních.
Pro firmy toto rozdělení není překážka, musí však být zdokumentováno. Zaznamenejte, které servery získávají PHP z Remi, kdo čte oznámení a kdo po aktualizaci restartuje služby. Jinak se každý spoléhá na toho druhého.
Udržovat pořádek: méně verzí, menší riziko
Software Collections svádějí k tomu nechat staré verze prostě ležet. Po PHP2Shell je dobrý čas uklidit:
- U každé collection vyjasnit, který web nebo cron úlohu ji používá.
- Nepoužívané collections deaktivovat a po době pozorování odstranit.
- Aplikace na starých collections povýšit na podporovanou větev.
- Zbývající verze zdokumentovat s účelem a odpovědnou osobou.
Jak udržet přehled nad mnoha souběžnými verzemi, popisuje článek Několik verzí PHP na jednom serveru.
Jak konkrétně pomáhá PHP SOS?
- Zaznamenáváme všechny streamy a collections Remi na vašich serverech a přiřazujeme je k webům a cron úlohám.
- Kontrolujeme stav PHP2Shell pro každou verzi přes verzi balíčku a changelog.
- Nasazujeme aktualizace, restartujeme každou službu a dokládáme to časy spuštění procesů v rámci služby záplatování PHP.
- Již nepotřebné collections po dohodě kontrolovaně odstraňujeme.
Časté dotazy
Poskytl Remi verze s opravou PHP2Shell?
Ano. V blogu repozitáře byly 22. října 2026 oznámeny verze 8.2.35, 8.3.36, 8.4.27 a 8.5.12, s upozorněním na dvě kritické zranitelnosti, CVE-2026-109618 a CVE-2026-109619, a naléhavým doporučením aktualizovat.
Jaký je rozdíl mezi streamem modulu a SCL u Remi?
Přes stream modulu nahradíte systémové PHP verzí z Remi, pak existuje jedna verze PHP jako výchozí. Software Collections instalují další verze souběžně do vlastních cest, každou s vlastní službou.
Dostává PHP 8.1 od Remi ještě aktualizace?
Remi vede PHP 8.1 jako End-of-Life, projekt PHP tuto větev nespravuje. Zda konkrétní balíček 8.1 obsahuje opravu proti PHP2Shell, ověřte v changelogu nainstalovaného balíčku. Bez záznamu platí stav jako nevyjasněný.
Musím po aktualizaci z Remi restartovat každou verzi PHP?
Ano. Každá souběžně nainstalovaná verze má vlastní službu FPM. Pokud se restartuje jen služba hlavní verze, ostatní běží dál se starým kódem.