Upraveno 6 prosince, 2023 06:06
Pokud máte webhosting zřízený u libovolného webhostingového providera, ale zároveň používáte DNS servery a služby společnosti CloudFlare, pravděpodobně dříve, či později, budete řešit způsob, jak nastavit HTTPS provoz na webu. CloudFlare nabízí několik dostupných možností, na které se dnes podíváme. Ne všechny se dají využít vždy a ne vždy všechny bez pomoci s WordPressem fungují. Jak nastavit SSL u webu na WordPressu a používání služby Cloudflare, si tedy kompletně probereme.
Cloudflare je společnost poskytující služby zabezpečení a optimalizace webových stránek a aplikací. Jedná se o globální cloudovou platformu, která umožňuje webovým stránkám rychlejší načítání, vyšší bezpečnost a snížení zátěže na webových serverech. Mezi nejznámější služby společnosti Cloudflare patří:
- CDN (Content Delivery Network) - umožňuje distribuovat obsah webových stránek na servery po celém světě a tím zrychluje načítání stránek pro uživatele v různých částech světa.
- DDoS ochrana - pomáhá chránit webové stránky a aplikace proti DDoS útokům a snižuje zátěž na webových serverech.
- WAF (Web Application Firewall) - poskytuje ochranu webových aplikací proti útokům na zabezpečení jako jsou SQL injection, cross-site scripting a další.
Jak nastavit SSL u webu na WordPressu a používání služby Cloudflare
Jaké metody HTTPS je možné u Cloudflare použít? Mezi základní nastavení HTTPS u CloudFlare patří tyto metody:
- Off (not secure)
- Flexible
- Full
- Full (strict)
Zde jsou jednotlivé metody SSL nastavení v Cloudflare a jak fungují:
Off (not secure) – Toto nastavení nevyužívá SSL a veškerý provoz mezi klientem a serverem je přenášen v otevřené podobě bez šifrování. Toto nastavení by nemělo být používáno, pokud je jakákoliv forma osobních nebo důvěrných údajů odesílána mezi klientem a serverem.
Flexible – Toto nastavení používá SSL pro spojení mezi klientem a Cloudflare, ale mezi Cloudflare a serverem je přenášen nešifrovaný provoz. Toto nastavení je vhodné pouze pro webové stránky, které nevyžadují přenos osobních nebo důvěrných údajů mezi klientem a serverem.
Full – Toto nastavení používá SSL pro spojení mezi klientem a Cloudflare a také mezi Cloudflare a serverem. Pokud je na vašem serveru dostupný SSL certifikát od důvěryhodné autority, můžete použít toto nastavení.
Full (strict) – Toto nastavení používá SSL pro spojení mezi klientem a Cloudflare a také mezi Cloudflare a serverem a vyžaduje platný certifikát podepsaný důvěryhodnou autoritou. Pokud máte na svém serveru platný certifikát a chcete zabezpečit veškerý provoz mezi klientem a serverem, je toto nejlepší nastavení, které byste měli použít.
V tomto článku se zaměřím na dvě nejvíce používané. Na metodu Flexible a metodu Full (strict).
Jak je to s certifikátem na cílovém webu?
Na cílovém webu existují pouze dvě možnosti. Buď Vám provider hostingu SSL certifikát vystaví, nebo nikoliv. A podle toho se poté volí možnosti i na straně Cloudflare. Tedy certifikát buď máte nebo ne.
Nastavení Flexible
Toto nastavení je vhodné v případě, že na cílovém serveru SSL certifikát nemáte, nebo Vám jej provider z nějakého důvodu nechce vystavit. Má určitá omezení a možné problémy, které popíšu níže.
Nastavení Full (strict)
Toto nastavení můžete použít v momentě, kdy na cílové serveru certifikát máte a je platný. Pokud je totiž na serveru vlastní certifikát, obvykle jakékoliv jiné nastavení vyvolá smyčku v přesměrování a problém. Nastavení Full (strict) tedy použijte jako první v případě, že na cílovém serveru existuje certifikát pro šifrování komunikace. Obvykle zde pak není nutný prakticky žádný zásah a je šifrována celá komunikace. Konkrétně tedy server -> Cloudflare -> prohlížeč uživatele. Toto je prakticky ideální volba a možnost.
Problémy, které mohou vzniknout u nastavení Flexible.
U WordPressu se mohou stát dvě věci, které bude nutné řešit. První věc, která může nastat je ta, že celý web sice na první pohled funguje pod https verzí, ale nefunguje administrace. Druhá věc, která se pravděpodobně stane, že Vám nebude fungovat automatické přesměrování na HTTPS.
Při pokusu dostat se do administrace WordPressu můžete narazit na problém smyčky. Administrace bude zacyklená a není možné se do ní dostat. To samé se stane s webem, pokud vynutíte automatické přesměrování např. pomocí pravidel v souboru .htaccess.
Zdánlivé fungování webu na HTTPS může provádět pouze prohlížeč, který si automatické přesměrování dělá sám, i když na webu fyzicky není. Pokud uživatel na web přistoupí z prohlížeče, který toto nedělá, dostane HTTP verzi. Jak tedy problém vyřešit?
Jak nastavit SSL u webu na WordPressu a používání služby Clouflare v režimu Flexible?
Je tedy nutné, aby web fungoval v režimu HTTPS automaticky a všude a aby byla dostupná administrace WordPressu. Aby bylo vše plně funkční, je nutné provést dvě věci:
- úprava konfiguračního souboru wp-config.php
- úprava chování na straně Cloudflare
Úprava souboru wp-config.php
Nejprve se přihlaste na FTP svého webu a najděte zde soubor wp-config.php. Jde o konfigurační soubor WordPressu. Do něj, klidně na začátek přidejte tento kód:
$_SERVER[ "HTTPS" ] = "on";
Nyní upravte chování služby Cloudflare, kde vynutíte přenos vždy pouze pod HTTPS protokolem:
- přihlaste se do administrace Cloudflare
- vyberte doménu, u které chcete provést nastavení
- klikněte v prvém menu na SSL/TLS
- v podnabídce vyberte „Edge Certificates„
- aktivujte možnost „Always Use HTTPS„
Jak nastavit SSL u webu na WordPressu a používání služby Cloudflare – Závěr
Jakmile upravíte soubor wp-config.php a zároveň i chování HTTPS na straně Cloudflare, měl by být web plně dostupný pod novým SSL certifikátem Cloudflare a zároveň bude fungovat administrace WordPressu i automatické přesměrování. Problém vyřešen. Znovu ale upozorňuji, v této podobě se šifruje pouze komunikace od Cloudflare k uživateli. Zvažte tedy možná bezpečnostní rizika a i to, že komunikace server -> Cloudflare šifrovaná prostě není.
Web je vytvářen s pečlivostí k obsaženým informacím. Snažím se poskytovat kvalitní a užitečný obsah, který ostatním pomáhá, nebo je inspiruje. Pokud jste spokojeni s mou prací a chtěli byste mě podpořit, můžete to udělat prostřednictvím jednoduchých možností.
Byl pro Vás tento článek užitečný?
Klikni na počet hvězd pro hlasování.
Průměrné hodnocení. 4 / 5. Počet hlasování: 1
Zatím nehodnoceno! Buďte první
Je mi líto, že pro Vás nebyl článek užitečný.
Jak mohu vylepšit článek?
Řekněte mi, jak jej mohu zlepšit.
Odebírejte Newsletter
Buďte v obraze! Připojte se k odběru newsletteru a buďte první, kdo získá nejnovější informace přímo do vaší e-mailové schránky. Sledujte aktuality, exkluzivní události a inspirativní obsah, přímo na Vašem e-mailu.