HTProtect – dokumentace
HTProtect není nehybný zámek, ale ochrana, která pro váš web na Joomle přemýšlí spolu s vámi: víceúrovňová, stále aktuální – a nikdy vás nepřipraví o přístup. Tento návod kapitolu po kapitole ukazuje, co přesně se děje, kdy se to děje a proč vás to chrání.
Co je HTProtect?
HTProtect je „serverový štít“ pro Joomlu, který hlídá na několika místech zároveň. Odlišují ho tři věci:
- Mini-firewall, který se aktualizuje za provozu. Jakmile vyjde najevo nová metoda útoku nebo čerstvá zranitelnost v často používaném rozšíření, HTProtect cestu útoku automaticky zablokuje – nemusíte čekat, až vyjde oprava od výrobce. Odborníci tomu říkají virtuální patchování.
- Udržuje se aktuální sám. Vlastní aktualizace si HTProtect nasazuje automaticky, zpravidla zhruba do tří hodin – ochrana je tak vždy v nejnovějším stavu, aniž byste museli cokoli dělat.
- Nikdy vás nepřipraví o přístup. Každé ochranné pravidlo se po zápisu otestuje na skutečném serveru a v případě potřeby se automaticky vrátí zpět.
K tomu se přidává hardening serveru, další heslo před administrací, skener malwaru a automatické aktualizace se zálohou. Svá ochranná data si HTProtect obnovuje podobně jako antivirus své virové definice: pravidelně stahuje veřejná, digitálně podepsaná data – údaje o webu ani osobní údaje přitom sám od sebe nikam neodesílá.
Přehled
Přehled je váš kokpit. Bezpečnostní semafor na první pohled ukáže, jak na tom jste: zelená znamená, že je vše v pořádku, oranžová je upozornění, červená znamená nutný zásah. Na oranžové i červené položky se dá kliknout – zavedou vás rovnou k řešení. Velké tlačítko „Zabezpečit nyní“ vyřídí to nejdůležitější jediným kliknutím.
Aby semafor ukazoval správně, pracuje na pozadí strážce. Spouští se jako úplně první při každém načtení stránky – prakticky bez znatelného zdržení –, udržuje mini-firewall aktuální a hlídá, aby ochranný štít zůstal neporušený. Pouze čtením navíc rozpozná podstrčený kód v souborech jádra a aktivní šablony a nahlásí jej.
Neujde mu ani podezřelé dění u vašich účtů – nový Super uživatel, potají změněné heslo. Upozorní vás e-mailem, souhrnně a v jazyce vaší administrace, a jen tehdy, když se opravdu něco děje. Žádný spam.
Co se kdy děje
Ochrana má pevný rytmus – většina z toho běží sama, bez jakéhokoli vašeho zásahu:
- Při instalaci
HTProtect se nastaví, ale zatím nic neaktivuje. Kdy se to spustí, rozhodujete vy.
- Jedno kliknutí na „Zabezpečit nyní“
Zapíše se štít, uzavřou se složky pro nahrávání souborů, vše se otestuje na skutečném serveru a vaše bezpečné soubory ke stažení se automaticky uvolní.
- Při každém načtení stránky
Strážce zkontroluje firewall a neporušenost – nepostřehnutelně rychle.
- Pravidelně na pozadí (zhruba každých 6 hodin)
HTProtect stáhne podepsaný feed a udržuje mini-firewall i přehled o zranitelnostech aktuální. Bezpečnostně kritické záznamy se uplatní okamžitě.
- Zhruba každé 3 hodiny
HTProtect zkontroluje vlastní aktualizace a automaticky je nainstaluje.
- V nastavený čas
Volitelné automatické aktualizace vašich rozšíření – se zálohou, kontrolou funkčnosti a automatickým návratem zpět.
Ochrana administrace heslem
Před přihlášení do Joomly vkládá HTProtect druhý dotaz na heslo – přímo před adresu administrace (tu, která končí na /administrator). Útočníci ani boti se tak na přihlašovací stránku vůbec nedostanou. Je to překážka navíc a chrání i před dosud neznámými zranitelnostmi v samotném přihlášení.
- Zvolte uživatelské jméno a heslo
- Zapněte ochranu – hotovo
A oprávněnou obavu „co když se sám připravím o přístup?“ vám HTProtect sejme z beder: zámek otestuje na skutečném serveru a pokud něco nesedí, automaticky jej zase vypne. Už existující ochranu heslem prostě převezme.
Zapomněli jste heslo? Nevadí: přes FTP smažte soubor administrator/.htaccess – tím dotaz navíc zmizí a do administrace se zase dostanete.
A pokud máte v týmu více Super uživatelů, můžete HTProtect před některými z nich skrýt: kdo není zaškrtnutý, neuvidí ani položku v menu, ani dlaždici se stavem a komponentu nemůže otevřít – váš vlastní účet přitom zůstává vždy viditelný (o přístup se tak nepřipravíte) a ochrana běží pro všechny beze změny. Jde jen o viditelnost; Super uživatel má technicky vzato plný přístup k systému tak jako tak.
Ochranný štít
Ochranný štít je serverová vrstva vašeho zabezpečení: zpevněný soubor .htaccess podle zásady „zakázáno je vše kromě toho, co je opravdu potřeba“. Stačí jedno kliknutí na „Zabezpečit nyní“ – doporučená nastavení jsou už připravená. Všechno ostatní je sbalené pod „Pokročilá nastavení“ (pro profesionály; když si nejste jistí, nechte to být).
Za tím do sebe zapadá několik vrstev:
- Uzavřené složky pro nahrávání. Ve složkách, do kterých lze nahrávat soubory (uploads, media, cache, tmp), je spouštění PHP zcela zakázáno. Nejčastější vstupní bod – nahraný webshell – tak narazí na zeď (403).
- Skryté citlivé soubory. Přímý přístup k souboru configuration.php, k zálohám, logům a podobným souborům je zablokovaný.
- Ochranné hlavičky & HTTPS. Nastaví se bezpečnostní hlavičky; pokud váš web běží na HTTPS, přesměruje HTProtect nešifrované požadavky automaticky na zabezpečené spojení (lze vypnout).
- Web Application Firewall. Známé vzorce útoků zachytí HTProtect ještě před Joomlou – útok se na váš web vůbec nedostane.
Mini-firewall: ochrana, která nestárne
To hlavní: tyto vzorce nejsou vytesané do kamene. HTProtect se pravidelně – zhruba každých 6 hodin – synchronizuje s podepsaným feedem, přesně tak, jako si antivirus obnovuje virové definice. Jakmile vyjde najevo nová metoda útoku nebo čerstvá zranitelnost v často používaném rozšíření, odpovídající blokovací pravidlo přibude automaticky – cesta útoku je uzavřená dřív, než vůbec vyjde oficiální aktualizace zranitelného rozšíření. Bezpečnostně kritické záznamy se uplatní okamžitě, ne až při příští synchronizaci.
Aby tento kanál nikdo nezneužil, ověřuje se podpis feedu přímo na vašem webu – převezmou se jen nezměněná data.
HTProtect vás nikdy nepřipraví o přístup
Nová ochranná pravidla s sebou teoreticky nesou riziko: co když vás jedno z nich připraví o přístup? Přesně na to HTProtect myslel. Každé pravidlo se po zápisu otestuje na skutečném serveru (jestli běží Apache, LiteSpeed, nebo nginx, si zjistí sám). Kdyby vás mělo o přístup připravit, HTProtect toto pravidlo automaticky vrátí zpět. Štít se aktivuje až tehdy, když je prokazatelně funkční.
Po přesunu na jiný server nebo změně domény? Pokud potom něco vázne, smažte přes FTP hlavní soubor .htaccess v kořenové složce Joomly a nechte jej tlačítkem „Zabezpečit nyní“ zapsat znovu – tím se odstraní stará pravidla, která už nesedí.
Častý problém: váš vlastní soubor je zablokovaný (403)
Štít propustí jen to, co zná, a zbytek odmítne chybou 403 (zakázáno) – a právě to vás chrání. Když ale něco přidáte sami (vlastní skript, fórum, e-shop), štít to zatím nezná → 403. Není to závada: chyba 403 u souboru, který jste vy vědomě přidali, znamená jen „prosím jednou povolit“.
Jak zablokovaný soubor najdete – přímo v prohlížeči, bez přístupu na server (30 sekund, nic nerozbijete):
- Otevřete stránku nebo funkci, která nefunguje.
- Stiskněte klávesu F12
Otevřou se vývojářské nástroje, které má v sobě každý prohlížeč. Nahoře klikněte na kartu Síť.
- Akci spusťte znovu
Načtěte stránku znovu nebo odešlete formulář a pak klikněte na červený záznam „403“ – je u něj uvedená cesta k zablokovanému souboru (např.
custom-form.php). Tu si zapamatujte.
Jak jej povolíte – v sekci HTProtect›Ochranný štít›Pokročilá nastavení, a pak vždy klikněte na Uložit + zapsat .htaccess (teprve tím se změna projeví):
- Jednotlivý soubor: pole „Povolit jednotlivé soubory přímo“ – jeden na řádek, např.
custom-form.php(v podsložce:tools/specialtool.php). - Složka s vlastním softwarem (fórum, e-shop …, spouští PHP): pole „Povolit složky kompletně, včetně spouštění PHP“ – např.
forum. - Složka jen se soubory ke stažení (PDF, obrázky – bez PHP): pole „Povolit ve složce všechny typy souborů, bez PHP“ – např.
downloads. Bezpečnější volba, pokud PHP není potřeba. - Celý neobvyklý typ souboru: pole „Povolené přípony souborů (oddělené čárkou)“ – pro neobvyklé přípony, které zatím povolené nejsou, např. 3D/CAD soubory (
stl, dwg, step). - Poslední možnost, když nic z výše uvedeného nestačí: pole „Důvěryhodné cesty (povolit všude)“ – u těchto cest se ruší i zámky adresářů a signatury exploitů. Jen pro cesty, které jste sami prověřili a víte o nich, že jsou neškodné, nikdy plošně.
Obecné pravidlo: povolujte co nejúžeji – raději jeden soubor než celou složku a raději „bez PHP“ než s ním. Jakmile chyba 403 na kartě Síť zmizí, je vyřešeno.
Stránku nelze vložit přes iframe
Problém: Stránku už nejde vložit přes <iframe> na jinou doménu (např. kontaktní formulář hostovaný na webu B, vložený na webu A). Konzole prohlížeče hlásí: Refused to display … X-Frame-Options: SAMEORIGIN.
Příčina: Ochrana proti clickjackingu „Zakázat vkládání na cizí weby (X-Frame-Options)“ na vkládaném webu B vložení do cizí stránky zakazuje.
Řešení (na webu B, ne na A!): v sekci HTProtect›Ochranný štít›Pokročilá nastavení vypněte přepínač „Zakázat vkládání na cizí weby“ → Uložit + zapsat .htaccess. U veřejných formulářů to nevadí.
Sken webu
Kdyby přece jen něco proklouzlo, sken webu to vypátrá. Prohledá celý váš web a pátrá po škodlivém kódu, podstrčených souborech a skrytých zadních vrátkách (takzvaných webshellech) – nálezy přitom umí rovnou odstranit. Spouštíte ho jen vy, nikdy se nespustí sám, a váš server trvale nezatěžuje.
Velmi rozsáhlé weby prochází po částech, aby jeho běh nepřerušil časový limit; opakovaný běh pak kontroluje už jen to, co se změnilo. Umí navíc otestovat, zda jsou vaše odkazované soubory a soubory ke stažení dostupné.
Skener hlídá i v malém: nově nainstalované nebo aktualizované soubory kontroluje na škodlivý kód – například na webshelly nebo podstrčený JavaScript. Když něco najde, umí to izolovat nebo odstranit, a to s přísnými pojistkami proti nechtěnému smazání něčeho neškodného. Pro jeden častý případ má zvláštní postup: JavaScript podstrčený do šablon Helix umí HTProtect cíleně rozpoznat a odstranit – vratně a se zálohou.
Zálohy & aktualizace
Před každou změnou souboru .htaccess vytvoří HTProtect automaticky zálohu – jedno kliknutí vás kdykoli vrátí do předchozího stavu. U aktualizací platí stejný princip: nikdy bez jištění.
Pokud chcete, udržuje HTProtect vaše rozšíření pro Joomlu aktuální automaticky. Před každou aktualizací zazálohuje soubory i databázi, poté kontrolou funkčnosti ověří, že web stále běží čistě – a při problému se automaticky vrátí do předchozího stavu. Ve výchozím nastavení mají přednost bezpečnostní aktualizace, a to denně v čase, který si nastavíte.
HTProtect přitom ví, co je potřeba aktualizovat: porovnává nainstalovaná rozšíření se seznamem známých bezpečnostních zranitelností a cíleně vás upozorní na dostupné aktualizace.
Doporučení: aktualizace, které nejsou bezpečnostní, spouštět jednou týdně s odkladem 3 dnů – dobrá střední cesta.
Záchranná síť za tím:
- Volitelný interval & čas: týdně, denně nebo „ihned“ (po 15 minutách).
- Bezpečnostní aktualizace se instalují okamžitě – zcela bez čekání.
- Volitelný odklad: žádný, 1, 3, 7 nebo 14 dnů.
- Kontrola na malware při aktualizaci: při nálezu se aktualizace okamžitě vrátí zpět (většinou jde o falešný poplach – signatury se doplňují centrálně, bez jakýchkoli údajů o webu či osobních údajů; aktualizace pak proběhne při dalším běhu).
- Ohleduplnost: zdroje aktualizací se nikdy nevypínají; cizích serverů se HTProtect ptá zvolna (s omezenou frekvencí), aby je šetřil.
- Nouzová brzda: pokud se některá aktualizace ukáže jako vysoce problematická, lze ji centrálně a okamžitě zablokovat pro všechny.
Nápověda & podpora
Tady se dostanete k podpoře (volitelně i s užitečnými diagnostickými údaji), k živému chatu, k této dokumentaci a ke kasičce na kávu.
HTProtect je postavený tak, aby v případě pochybností měkce ustoupil, místo aby tvrdě selhal. Když třeba přehnaně horlivý antivirus na serveru poškodí některý soubor HTProtectu, váš web zůstane dostupný: dotčená část se tiše vypne, HTProtect se přes vlastní automatickou aktualizaci sám obnoví a srozumitelná informační stránka vysvětlí, co se děje. Se stávajícími bezpečnostními nástroji si rozumí (režim hands-off) a zátěž serveru drží na minimu.
A kdybyste se chtěli HTProtectu zase zbavit? Při odinstalaci vám průvodce nabídne, že s ním čistě odstraní i ochranné soubory a obnoví váš původní soubor .htaccess – beze stopy. Poctivě a vratně, jako všechno tady.
- Zabezpečení souboru .htaccess v Joomle pomocí HTProtectuDoplňující článek
Podporovatelé tohoto webu
htprotect.org je bezplatný informační web nezávislý na výrobcích. Podporují jej:

Joomla hosting z Německa s aktivní komunitní podporou – objevil první útok na bezpečnostní zranitelnost v JCE.
fc-hosting.deSpecializuje se na vyčištění, údržbu a zabezpečení webů na Joomle a WordPressu.
website-bereinigung.dePodpořte tento projekt
Provozujete hostingové služby nebo služby kolem Joomly a rádi byste htprotect.org podpořili – a byli tu uvedeni mezi podporovateli? Každý příspěvek pomáhá varovat a chránit zasažené rychleji.
Přispěli byste raději v soukromí, bez uvedení? Malý příspěvek do kasičky na kávu nás potěší stejně.
Výroba a montáž stavebních tabulí, oplocení stavenišť a fasádních řešení – včetně návrhu a 3D vizualizace.
bauschildundservice.deProfesionální IT podpora z Česka – správa Windows, administrace domén a webhosting.
defendersoft.czCestovní portál z Německa – zájezdy, hotely a letenky online, s osobním poradenstvím cestovní kanceláře.
onlineweg.deKreativní agentura z Braniborska – webdesign, tiskoviny, fotografie a 360° panoramata pod jednou střechou.
criadero.dePoskytovatel IT služeb z Wächtersbachu – weby na Joomle, servis počítačů, hardware a software.
jahnedv.dePoradenství v oblasti informační bezpečnosti z Berlína – bezpečnostní analýzy, řízení rizik a ISO 27001 pro malé a střední firmy.
isari-consult.de