Preskočiť na obsah
WordPress Bezpečnosť 7. júl 2026 · 12 min čítania

Cloudflare + WordPress: CDN, WAF a DNS od A po Z

Cloudflare je zadarmo a za 30 minút z pomalého, nezabezpečeného WordPressu spraví rýchlu stránku chránenú pred botmi, DDoS útokmi aj spamom. Tento návod vás prevedie celou konfiguráciou — od presunu DNS po Turnstile a vlastné WAF pravidlá.

DC

Dušan Chlpek

Senior PHP vývojár · GEAR s.r.o. · 25+ rokov praxe

Prečo Cloudflare a nie len dobrý hosting?

Dobrý hosting rieši výkon servera. Cloudflare rieši všetko pred serverom — a to je práve to, čo väčšina WordPress stránok potrebuje. Keď bot zaútočí na váš /wp-login.php, hosting to zaregistruje až potom, čo server zaťaženie pocíti. Cloudflare ho zastaví skôr, než požiadavka váš server vôbec dosiahne.

Free plán Cloudflare obsahuje:

Pre koho je tento návod: Majiteľov WordPress stránok na vlastnom hostingu alebo VPS. Cloudflare funguje aj s WordPress.com Business a WooCommerce, ale niektoré nastavenia sa líšia.

Krok 1 — Pridanie stránky do Cloudflare a presun DNS

Cloudflare funguje ako reverzná proxy — všetka návštevnosť prechádza cez ich sieť. Toto aktivujete presunom nameserverov.

1

Vytvorte účet na cloudflare.com a pridajte svoju doménu. Cloudflare automaticky naskenuje existujúce DNS záznamy — skontrolujte ich pred potvrdením.

2

Zmeňte nameservery u registrátora domény na tie, ktoré Cloudflare pridelí (napr. aria.ns.cloudflare.com). Propagácia trvá 5–30 minút.

3

Skontrolujte proxy status pre A záznamy — oranžová oblak = cez Cloudflare, šedá oblak = priamo na server (DNS only). Pre WordPress chcete oranžový oblak na A zázname domény.

Pozor na mail záznamy: MX záznamy a subdomény pre mail (mail.vasadomena.sk) nechajte na šedej — teda DNS only. Mailový traffic cez Cloudflare proxy nefunguje správne.

Krok 2 — SSL/TLS nastavenie

V sekcii SSL/TLS → Overview nastavte režim na Full (strict). Nie „Flexible" — ten posiela traffic zo servera k Cloudflare bez šifrovania, čo je bezpečnostná diera.

RežimBrowser → CFCF → ServerOdporúčanie
OffHTTPHTTP❌ Nikdy
FlexibleHTTPSHTTP❌ Nebezpečné
FullHTTPSHTTPS (self-signed)⚠️ Iba dočasne
Full (strict)HTTPSHTTPS (platný cert)✅ Produkcia

Zapnite aj Always Use HTTPS a Automatic HTTPS Rewrites — tým eliminujete mixed content problémy so starými HTTP odkazmi v obsahu.

Krok 3 — CDN a caching pre WordPress

Cloudflare predvolene cachuje statické súbory (CSS, JS, obrázky). WordPress stránky (HTML) sa predvolene necachujú — čo je správne, keďže obsah je dynamický a personalizovaný (prihlásení používatelia, košík).

Cache Rules pre výkon

V sekcii Caching → Cache Rules (nástupca starých Page Rules) nastavte:

# Pravidlo 1: Necachovať admin a prihlásených užívateľov
Podmienka: (http.request.uri.path contains "/wp-admin")
    OR (http.cookie contains "wordpress_logged_in")
    OR (http.cookie contains "woocommerce_items_in_cart")
Akcia: Bypass cache

# Pravidlo 2: Agresívne cachovať statické súbory
Podmienka: (http.request.uri.path.extension in {"css" "js" "png" "jpg" "webp" "avif" "woff2" "ico"})
Akcia: Cache, TTL: 1 rok (31536000 s), Browser TTL: 1 deň
WordPress plugin: Nainštalujte Cloudflare oficiálny plugin alebo WP Rocket s CF integráciou. Plugin automaticky vyčistí Cloudflare cache pri publikovaní nového príspevku.

Speed nastavenia

V sekcii Speed → Optimization:

Krok 4 — WAF pravidlá pre WordPress

Web Application Firewall je najsilnejšia bezpečnostná funkcia Cloudflare. Na free pláne máte prístup k managed rulesetom a 5 vlastným pravidlám.

Managed rulesets

V sekcii Security → WAF → Managed rules zapnite Cloudflare Managed Ruleset. Automaticky blokuje bežné útoky — SQL injection, XSS, path traversal.

Vlastné WAF pravidlá — 5 najdôležitejších

# Pravidlo 1: Blokovanie brute-force na wp-login
Podmienka: (http.request.uri.path eq "/wp-login.php")
    AND (http.request.method eq "POST")
    AND (not ip.src in $povolene_ip)
Akcia: Managed Challenge (CAPTCHA)

# Pravidlo 2: Ochrana XML-RPC
Podmienka: (http.request.uri.path eq "/xmlrpc.php")
Akcia: Block

# Pravidlo 3: Blokovanie prístupu k citlivým súborom
Podmienka: (http.request.uri.path contains "wp-config.php")
    OR (http.request.uri.path contains ".env")
    OR (http.request.uri.path contains "readme.html")
Akcia: Block

# Pravidlo 4: Ochrana REST API (ak ho nepoužívate externe)
Podmienka: (http.request.uri.path contains "/wp-json/")
    AND (not http.request.headers["origin"] contains "vasadomena.sk")
    AND (http.request.method in {"POST" "PUT" "DELETE"})
Akcia: Managed Challenge

# Pravidlo 5: Blokovanie known bad bots
Podmienka: (cf.client.bot) AND (not cf.verified_bot_category in {"Search Engine Crawlers"})
Akcia: Block
Pozor na wp-login pravidlo: Pred aktiváciou si pridajte vlastnú IP do IP listu $povolene_ip (Cloudflare → Account → Lists). Inak si sami zablokujete prístup do administrácie.

Krok 5 — Turnstile: koniec so spamom vo formulároch

Cloudflare Turnstile je náhrada za Google reCAPTCHA — funguje bez cookies, je zadarmo a používateľ väčšinou nemusí nič klikať (challenge prebieha na pozadí).

Pre WordPress použite plugin Simple Cloudflare Turnstile (dostupný zadarmo na wordpress.org). Konfigurácia:

1

V Cloudflare Dashboarde → Turnstile → Add Site. Zadajte doménu, vyberte typ widgetu (Managed pre väčšinu prípadov).

2

Skopírujte Site Key a Secret Key.

3

V plugine Simple Cloudflare Turnstile zadajte kľúče a aktivujte ochranu pre: prihlasovací formulár, registráciu, komentáre a WooCommerce checkout.

Výsledok: spam komentáre a brute-force pokusy na prihlásenie klesnú na minimum bez toho, aby ste otravovali legitímnych návštevníkov.

Krok 6 — DDoS ochrana a Rate Limiting

Free plán obsahuje automatickú DDoS ochranu na L3/L4 (sieťová vrstva). Pre L7 (HTTP) môžete pridať Rate Limiting pravidlá.

V sekcii Security → DDoS skontrolujte, že HTTP DDoS Attack Protection je aktívna (predvolene áno). Pre agresívnejšiu ochranu zmeňte Sensitivity na High.

Rate Limiting (Security → WAF → Rate limiting rules) — pridajte pravidlo:

# Ochrana wp-login pred brute-force
Zdroj: http.request.uri.path eq "/wp-login.php"
Charakteristika: IP adresa
Prah: 5 požiadaviek za 1 minútu
Akcia: Block na 10 minút

Krok 7 — Ochrana pôvodného servera (Origin)

Keď Cloudflare filtruje traffic, váš server by mal akceptovať požiadavky iba od Cloudflare IP adries. Priamy prístup na server IP by mal byť zablokovaný.

# Nginx — povolenie iba Cloudflare IP (aktualizovaný zoznam: cloudflare.com/ips)
geo $cloudflare_ip {
    default 0;
    103.21.244.0/22 1;
    103.22.200.0/22 1;
    103.31.4.0/22 1;
    104.16.0.0/13 1;
    104.24.0.0/14 1;
    108.162.192.0/18 1;
    131.0.72.0/22 1;
    141.101.64.0/18 1;
    162.158.0.0/15 1;
    172.64.0.0/13 1;
    173.245.48.0/20 1;
    188.114.96.0/20 1;
    190.93.240.0/20 1;
    197.234.240.0/22 1;
    198.41.128.0/17 1;
}

server {
    if ($cloudflare_ip = 0) { return 444; }
}

Cloudflare tiež ponúka funkciu Authenticated Origin Pulls — server akceptuje iba požiadavky podpísané Cloudflare certifikátom. Aktivujte v SSL/TLS → Origin Server → Authenticated Origin Pulls.

Krok 8 — Monitoring a Analytics

Cloudflare Analytics v sekcii Analytics & Logs ukazuje:

Cache hit rate pod 50 %? Skontrolujte Cache Rules — pravdepodobne máte nesprávne nastavené podmienky pre bypass. Stránky s aktívnymi sessions (prihlásení užívatelia) sa nikdy necachujú, čo je správne.

Záver: Cloudflare free plán = enterprise ochrana zadarmo

Za 30 minút nastavenia dostanete CDN, WAF, DDoS ochranu, automatický HTTPS a Turnstile anti-spam — všetko zadarmo. Pre väčšinu WordPress stránok je to výrazné zlepšenie bezpečnosti aj výkonu bez akýchkoľvek nákladov.

Cloudflare Pro plán (25 USD/mesiac) pridáva pokročilý WAF ruleset, Image Resizing a lepší Rate Limiting — odporúčam pre e-shopy a portály s vyššou návštevnosťou.

Potrebujete nastaviť Cloudflare alebo zabezpečiť WordPress?

Nakonfigurujem Cloudflare, WAF pravidlá a bezpečnosť vášho WordPressu na mieru. Audit + implementácia, odpoveď do 24 hodín.

Nezáväzný dopyt

Ďalšie články

Zavolať E-mail Dopyt

Ochrana súkromia

Táto stránka využíva cookies pre nevyhnutné fungovanie. Rešpektujeme vaše súkromie a legislatívu GDPR.