Preskočiť na obsah
Bezpečnosť

Váš staging už poznajú. Ako zabezpečiť server, HTTPS a cloud pred spustením webu

V momente, keď pre testovací server vydáte HTTPS certifikát, vedia o ňom aj útočníci. Každý certifikát sa zapíše do verejných logov Certificate Transparency a automatické skenery ich čítajú v reálnom čase. Výskumníci z Kalifornskej univerzity v Santa Barbare nechali 200 dní bežať návnadové servery a prvé sondy zachytili len pár sekúnd po zverejnení certifikátu (UCSB, IEEE EuroS&P 2023). Štúdia je tri roky stará a skenerov odvtedy skôr pribudlo.

Obálka článku Server, HTTPS a cloud: prvý sken pár sekúnd po vydaní certifikátu, certifikát platí najviac 200 dní, odhaliť a zastaviť únik trvá 247 dní

Adresa staging.vasafirma.sk, na ktorú nikde neodkazujete, teda tajná nie je. A útočníci sú rýchli aj inak: kritickú chybu React2Shell v Reacte a Next.js začali zneužívať v priebehu niekoľkých hodín od zverejnenia (AWS). Firmám pritom oprava aktívne zneužívanej zraniteľnosti trvá v mediáne 43 dní (Verizon DBIR 2026, podľa watchTowr).

Preteky s časom: kritická chyba React2Shell zverejnená 3. 12. 2025, útočníci ju zneužívali v priebehu niekoľkých hodín, firmám trvá oprava zneužívanej chyby v mediáne 43 dní
Útočníci sú rýchlejší ako bežný cyklus opráv.

Server, doména a cloud preto musia byť nastavené skôr, ako na ne pustíte prvých používateľov. Kompletný checklist so 105 bodmi pre aplikáciu je v článku Spúšťate webovú aplikáciu? Týchto 105 vecí skontrolujte skôr ako útočníci.

01HTTPS, certifikáty, doména a hlavičky

Certifikáty

Od 15. marca 2026 platí verejný TLS certifikát najviac 200 dní, od marca 2027 to bude 100 dní a od marca 2029 len 47 dní (CyberInsider). Kto obnovuje ručne, raz zabudne.

Najdlhšia platnosť certifikátu TLS, dni
  • Do 14. 3. 2026398
  • Od 15. 3. 2026200
  • Od 15. 3. 2027100
  • Od 15. 3. 202947

Harmonogram CA/Browser Forum (CyberInsider).

  1. Obnovu zautomatizujte cez ACME (Let's Encrypt, ZeroSSL alebo certifikáty vášho CDN).
  2. Sledujte expiráciu s upozornením aspoň 14 dní vopred. Aj automatika sa vie potichu pokaziť.
  3. Pridajte do DNS záznam CAA, ktorý určí, ktoré certifikačné autority smú pre doménu vydávať certifikáty.
  4. Sledujte logy Certificate Transparency pre vlastnú doménu (crt.sh, Cert Spotter). Dozviete sa o certifikáte, ktorý niekto vydal bez vášho vedomia.

TLS a postkvantové šifrovanie

Povoľte len TLS 1.2 a 1.3. Prehliadače Chrome, Edge a Firefox už navyše samy vyjednávajú postkvantovú výmenu kľúčov a v apríli 2026 cez ňu išli viac ako dve tretiny ľudskej prevádzky v sieti Cloudflare (Encryption Consulting, podľa Cloudflare). Chráni pred útokom „nahraj teraz, rozšifruj neskôr“, keď si niekto prevádzku uloží a rozšifruje ju, keď bude mať kvantový počítač. Za CDN to máte väčšinou vyriešené. Na vlastnom serveri overte, že vaša verzia OpenSSL a webového servera podporuje skupinu X25519MLKEM768.

Doména a DNS

  1. Zmažte záznamy CNAME, ktoré vedú na zrušené služby (starý Heroku, GitHub Pages, bucket S3). Útočník si službu založí znova a na vašej subdoméne servíruje, čo chce.
  2. Nastavte SPF, DKIM a DMARC, aj keď z domény zatiaľ e-maily neposielate. Inak ju podvodníci zneužijú na falošné správy vašim zákazníkom. Ako také správy spoznať, opisuje článok Podvodné SMS a e-maily.
  3. Účet u registrátora chráňte dvojfaktorovým overením a zámkom prevodu domény. Kto ovládne DNS, ovládne celú aplikáciu.

Bezpečnostné hlavičky

Hlavičky povedia prehliadaču, čo smie a čo nie. Nasadenie zaberie hodinu a zastaví celé triedy útokov.

HlavičkaOdporúčaná hodnotaProti čomu chráni
Strict-Transport-Securitymax-age=31536000; includeSubDomainsPrechod na nešifrované HTTP
Content-Security-PolicyStriktná politika s nonceXSS a vkladanie cudzích skriptov
X-Content-Type-OptionsnosniffSpustenie súboru ako iného typu
Referrer-Policystrict-origin-when-cross-originÚnik adries s tokenmi na cudzie weby
Permissions-Policycamera=(), microphone=(), geolocation=()Zneužitie funkcií prehliadača
Cross-Origin-Opener-Policysame-originÚtoky cez otvorené okná

Proti vloženiu stránky do neviditeľného rámu (clickjacking) slúži direktíva frame-ancestors v CSP, pre staršie prehliadače pridajte X-Frame-Options: DENY. Hlavičku X-XSS-Protection vynechajte, moderné prehliadače ju ignorujú.

CSP spustite najprv v režime Content-Security-Policy-Report-Only, týždeň zbierajte hlásenia a potom ju prepnite na vynucovanie. Striktnú CSP s nonce musí generovať aplikácia, pretože nonce sa mení s každou odpoveďou a aplikácia ho vkladá do každej značky script. Next.js to vie cez proxy (predtým middleware). Keby CSP nastavil aj nginx, platili by dve politiky naraz a prehliadač by skripty zablokoval. Ostatné hlavičky stačí nastaviť na serveri, ukážka pre nginx:

nginx
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
add_header X-Frame-Options "DENY" always;
add_header X-Content-Type-Options "nosniff" always;
add_header Referrer-Policy "strict-origin-when-cross-origin" always;
add_header Permissions-Policy "camera=(), microphone=(), geolocation=()" always;
add_header Cross-Origin-Opener-Policy "same-origin" always;

Ako to overíte

Zadajte adresu do MDN HTTP Observatory a SSL Labs. Oba nástroje sú zadarmo a za minútu ukážu, čo chýba. Cieľom je známka A alebo lepšia. HSTS preload zapnite, až keď viete isto, že všetky subdomény vedia HTTPS. Vrátiť ho trvá mesiace.

02Server a cloud

V cloude býva otvorené viac, než čakáte. IBM v správe za rok 2026 uvádza pre región Blízkeho východu medzi tromi faktormi, ktoré najviac zvyšujú cenu úniku, zle spravované kľúče a príliš široké oprávnenia (IBM Newsroom).

Účty a oprávnenia

  1. Hlavný účet cloudu (root v AWS, superadministrátor v Google Cloud, globálny administrátor v Azure) má hardvérový kľúč alebo passkey a na bežnú prácu sa nepoužíva.
  2. Produkcia beží v inom účte alebo projekte ako vývoj a testovanie.
  3. Každá služba aj každý človek má len oprávnenia, ktoré naozaj potrebuje. AdministratorAccess alebo Owner pre aplikáciu je chyba.
  4. Ľudia sa prihlasujú cez SSO. Keď niekto odíde, zrušíte mu prístup na jednom mieste.

Sieť

  1. Databázy, Redis a fronty nie sú dostupné z internetu, počúvajú len v privátnej sieti.
  2. Z internetu je otvorený len port 443 a port 80 kvôli presmerovaniu. SSH a RDP idú cez VPN, bastion, AWS Systems Manager alebo Tailscale.
  3. Kubernetes dashboard, Grafana, phpMyAdmin ani Adminer nie sú verejné.
  4. Buckety (S3, Google Cloud Storage, Azure Blob) majú zablokovaný verejný prístup. Súbory zdieľajte cez podpísané odkazy s obmedzenou platnosťou.

Firebase a Supabase

Skontrolujte pravidlá pri každej tabuľke a kolekcii. Verejný kľúč v aplikácii smie čítať len to, čo mu pravidlá dovolia. Tabuľka bez row-level security alebo pravidlo „allow read, write: if true“ znamená, že dáta môže čítať a meniť ktokoľvek.

Staging

  1. Staging je za prihlásením alebo dostupný len z vašich IP adries.
  2. Nie sú na ňom produkčné osobné údaje. Ak potrebujete realistické dáta, anonymizujte ich.
  3. Staré testovacie servery, zabudnuté preview nasadenia a opustené subdomény vypnite. Nikto ich neaktualizuje, a preto ich útočníci milujú.

Údržba a náklady

  1. Operačný systém a runtime (Node.js, PHP, Python, Java) majú podporovanú verziu a bezpečnostné aktualizácie sa inštalujú aspoň raz týždenne.
  2. Nastavte upozornenie na nezvyčajné výdavky. Ukradnutý kľúč sa často použije na ťaženie kryptomien a prvým príznakom je faktúra na tisíce dolárov.
  3. Infraštruktúru opisujte kódom (Terraform, OpenTofu, CloudFormation) a kontrolujte ju nástrojom Checkov. Chybu v konfigurácii potom odhalí revízia skôr, ako sa dostane do produkcie.

Ako to overíte

Spustite bezplatný Prowler (AWS, Azure, Google Cloud) alebo AWS Security Hub či Microsoft Defender for Cloud. Z počítača mimo firmy skúste nástrojom nmap, ktoré porty server vystavuje. Odpovedať by mali len 80 a 443.

03Dáta a zálohy

Dáta, ktoré nemáte, vám nikto neukradne. A dáta, ktoré máte, musíte vedieť obnoviť: ransomvér sa podľa Verizonu objavil v 48 % analyzovaných únikov (NHI Mgmt Group, podľa Verizon DBIR 2026).

Minimalizácia a šifrovanie

  1. Pri každom poli vo formulári si odpovedzte, prečo ho potrebujete. Rodné číslo takmer nikdy nepotrebujete.
  2. Stanovte, ako dlho dáta držíte, a mazanie zautomatizujte.
  3. Spojenie aplikácie s databázou, cache a frontami beží cez TLS aj vnútri infraštruktúry.
  4. Šifrovanie diskov a databáz zapnite pri všetkých službách. V cloude je to väčšinou jedno zaškrtnutie.
  5. Zdravotné údaje, čísla dokladov a bankové spojenie šifrujte aj v aplikácii, s kľúčmi v KMS. Kto ukradne zálohu databázy, uvidí len nezmyselné znaky.
  6. Platobné karty neukladajte vôbec. Platbu nechajte na bránu (Stripe, Adyen, TrustPay, GP webpay), ktorá vám vráti len token.

Zálohy

  1. Tri kópie dát na dvoch rôznych typoch úložiska, z toho jedna mimo hlavného prostredia (pravidlo 3-2-1).
  2. Aspoň jedna kópia je nemenná (object lock) alebo v oddelenom účte. Ransomvér sa dnes snaží zmazať zálohy ako prvé.
  3. Kto ovládne produkciu, nesmie vedieť zmazať zálohy. Prístupové údaje k nim sú iné.
  4. Zálohy sú šifrované.
  5. Obnovu vyskúšajte pred spustením a potom aspoň raz za štvrťrok. Záloha, ktorú ste nikdy neobnovili, je len nádej.
  6. Stanovte, koľko dát si môžete dovoliť stratiť (RPO) a ako dlho smiete byť mimo prevádzky (RTO). Podľa toho nastavte frekvenciu záloh.

Skripty tretích strán

Analytika, chatovacie okná a reklamné pixely bežia na vašom webe s prístupom ku všetkému, čo používateľ napíše. Načítavajte len tie, ktoré naozaj potrebujete, ideálne s atribútom integrity (SRI). Na stránkach s platbou a prihlásením ich majte čo najmenej.

Ako to overíte

Vezmite včerajšiu zálohu a obnovte ju do čistého prostredia. Zmerajte, ako dlho to trvalo a či nad obnovenými dátami aplikácia funguje.

04Logovanie a monitoring

Firmám trvá v priemere 247 dní, kým únik odhalia a zastavia, z toho 183 dní len na to, aby si ho všimli (SecureWorld, podľa IBM 2026). Bez logov sa o útoku dozviete od zákazníkov, od novinárov alebo od útočníka, ktorý chce výkupné.

Priemerná doba úniku dát, dni
  • Kým firma únik odhalí183
  • Kým ho potom zastaví64
  • Spolu247

IBM Cost of a Data Breach 2026 (SecureWorld).

Čo logovať

  1. Prihlásenia úspešné aj neúspešné, zmeny hesla, e-mailu a dvojfaktorového overenia.
  2. Zmeny oprávnení, akcie administrátorov, prístupy k citlivým dátam a exporty.
  3. Odmietnuté požiadavky (403), nápadné množstvo chýb validácie a prekročené limity.
  4. Platby a zmeny konfigurácie.

Každý záznam má čas v UTC, ID používateľa, IP adresu a ID požiadavky. Logy posielajte do centrálneho systému mimo servera (Grafana Loki, Elastic, Datadog, Better Stack, CloudWatch). Útočník, ktorý ovládne server, zmaže logy na ňom ako prvé.

Čo nikdy nelogovať

Heslá, tokeny, ID relácií, API kľúče, celé čísla kariet a zbytočné osobné údaje. Najčastejšie sa tam dostanú pri ladení, keď niekto loguje celé požiadavky. Log s heslami je sám osebe únik dát.

Upozornenia

  1. Nastavte pravidlá na podozrivé vzorce: desiatky neúspešných prihlásení za minútu, prihlásenie administrátora z novej krajiny, prudký nárast chýb 500 alebo exportov.
  2. Upozornenia musí niekto čítať. Určte, kto ich dostáva mimo pracovného času, a vyskúšajte, že naozaj dorazia.
  3. Nasaďte externý monitoring dostupnosti (UptimeRobot, Better Stack, Checkly) a sledovanie chýb (Sentry).

Ako to overíte

Prihláste sa zlým heslom a do minúty nájdite záznam v centrálnych logoch. Potom v logoch za posledný týždeň vyhľadajte slová password, token a authorization.

05DDoS

Cloudflare za prvý polrok 2026 odrazil 23,2 milióna sieťových DDoS útokov a 935 z nich prekročilo 1 Tbps (Cloudflare). Viac ako 90 % sieťových útokov skončí do desiatich minút (Cloudflare). Kým by ste stihli zareagovať ručne, je po všetkom a web medzitým nefunguje.

  1. Postavte aplikáciu za CDN s ochranou pred DDoS (Cloudflare, Akamai, Fastly, AWS CloudFront so Shield, Bunny). Základná ochrana býva zadarmo.
  2. Skryte skutočnú IP adresu servera a povoľte na ňom prevádzku len z adries CDN. Inak útočník CDN obíde a ide rovno na server.
  3. Zapnite webový firewall (WAF) so sadou OWASP Core Rule Set alebo spravovanými pravidlami CDN. Najprv v režime logovania, aby ste nezablokovali zákazníkov.
  4. Limity počtu požiadaviek nastavte aj v aplikácii, hlavne pre prihlásenie, registráciu a vyhľadávanie.

Ako to overíte

Na testovacom prostredí pošlite nástrojom k6 alebo hey niekoľko tisíc požiadaviek a sledujte, či sa zapnú limity. Potom skúste otvoriť aplikáciu priamo cez IP adresu servera. Ak sa načíta, CDN sa dá obísť.

06Checklist

Päť testov pred spustením: hlavičky a certifikát v MDN HTTP Observatory a SSL Labs, otvorené porty nástrojom nmap, nastavenie cloudu nástrojom Prowler, obnova zálohy, prístup cez IP adresu servera mimo CDN
Každý test zaberie pár minút.

HTTPS, doména a hlavičky

  • Certifikát sa obnovuje automaticky a expirácia sa sleduje.
  • Povolené je len TLS 1.2 a 1.3, SSL Labs dáva známku A alebo lepšiu.
  • HTTP presmerúva na HTTPS a HSTS je nastavené.
  • CSP beží aspoň v režime Report-Only s termínom prechodu na vynucovanie.
  • Nastavené sú X-Content-Type-Options, Referrer-Policy, Permissions-Policy a frame-ancestors.
  • DNS má záznam CAA, doména má SPF, DKIM a DMARC.
  • Žiadny CNAME nevedie na zrušenú službu.
  • Registrátor a DNS majú dvojfaktorové overenie a zámok prevodu.

Server a cloud

  • Produkcia je v oddelenom účte cloudu.
  • Hlavný účet cloudu má hardvérový kľúč alebo passkey.
  • Databázy, cache a fronty nie sú dostupné z internetu.
  • Verejné sú len porty 80 a 443.
  • Buckety majú zablokovaný verejný prístup.
  • Pravidlá Firebase alebo Supabase sú skontrolované pri každej tabuľke.
  • Staging je za prihlásením a bez produkčných osobných údajov.
  • Operačný systém a runtime majú podporovanú verziu.
  • Upozornenie na nezvyčajné výdavky je zapnuté.

Dáta a zálohy

  • Aplikácia zbiera len potrebné dáta a má lehoty uchovávania.
  • Spojenie s databázou je šifrované, disky a citlivé polia tiež.
  • Platobné karty spracúva brána.
  • Aspoň jedna záloha je nemenná alebo v oddelenom účte.
  • Obnova zo zálohy je vyskúšaná a zmeraná.

Logy a DDoS

  • Dôležité udalosti sa logujú do centrálneho systému mimo servera.
  • V logoch nie sú heslá ani tokeny.
  • Upozornenia chodia konkrétnej osobe a sú otestované.
  • Beží monitoring dostupnosti a sledovanie chýb.
  • Aplikácia je za CDN a server prijíma prevádzku len z CDN.
  • WAF je zapnutý.

Chyby v kóde rieši článok Stačí zmeniť číslo v adrese, kľúče a závislosti článok Stačil jeden npm install.

07Celá séria o bezpečnosti webovej aplikácie

Séria piatich článkov pokrýva celú aplikáciu, od kódu cez server až po povinnosti vedenia:

08Časté otázky

Ako dlho platí SSL certifikát v roku 2026?

Najviac 200 dní, ak bol vydaný od 15. marca 2026. Od marca 2027 to bude 100 dní a od marca 2029 len 47 dní (CyberInsider).

Stačí Cloudflare na zabezpečenie webu?

Nie. CDN a webový firewall zastavia DDoS a bežné automatické útoky. Neodhalia však, že používateľ číta cudziu faktúru alebo že máte v kóde uniknutý kľúč. To musíte opraviť v aplikácii.

Musí byť testovací server za heslom?

Áno. Adresa sa objaví vo verejných logoch Certificate Transparency hneď po vydaní certifikátu a skenery ju nájdu v priebehu sekúnd. Tajná subdoména žiadnu ochranu neposkytuje.

Ako rýchlo zistím, či je web dobre nastavený?

Za pár minút. Zadajte adresu do MDN HTTP Observatory, ktorá skontroluje bezpečnostné hlavičky, a do SSL Labs, ktoré preverí certifikát a TLS. Oba nástroje sú zadarmo.

Čo je pravidlo zálohovania 3-2-1?

Tri kópie dát na dvoch rôznych typoch úložiska, z toho jedna mimo hlavného prostredia. Proti ransomvéru pridajte aspoň jednu kópiu, ktorá sa nedá prepísať ani zmazať.

Musím riešiť postkvantové šifrovanie?

Ak web beží za CDN, väčšinou nie, pretože prehliadače aj veľké CDN už postkvantovú výmenu kľúčov používajú samy. Pri vlastnom serveri overte, že jeho TLS knižnica podporuje skupinu X25519MLKEM768.

09Zdroje

Údaje platia k 27. septembru 2026.

Tím LISTIFYWeby, aplikácie a marketing z Prahy od roku 2008

Ďalšie články

Všetky články →
Bezpečnosť27. 9. 2026 · 12 min čítania

Spúšťate webovú aplikáciu? Týchto 105 vecí skontrolujte skôr ako útočníci

Bezpečnosť27. 9. 2026 · 15 min čítania

Stačí zmeniť číslo v adrese: chyby v kóde, cez ktoré unikajú dáta

Bezpečnosť27. 9. 2026 · 11 min čítania

Stačil jeden npm install: ako sa v roku 2026 kradnú API kľúče a ako sa brániť

Zdieľať stránku

E-mailom

Máte nápad? Za 15 minút budete vedieť, ako na to.

Krátky hovor, žiadna prezentácia. Povieme vám, čo dáva zmysel, koľko to bude stáť a ako rýchlo to zvládneme.

+420 771 166 199Po až Pi 8:30 až 16:00 · info@listify.cool

Kedy vám máme zavolať?

Vyberte deň a časové rozmedzie. Zavoláme my, hovor trvá zhruba 15 minút.

Deň