Výpis blogu

Obsah článku

HTTPS v kostce: co to je, jak funguje a jak na něj přejít

Použití HTTPS protokolu je dnes již standardní součástí většiny nově vznikajících webových stránek, aplikací nebo eshopů. Přechod z původního HTTP by však měl zajímat i provozovatele zaběhnutých webových projektů, jelikož realizace přenosu dat prostřednictvím zabezpečeného protokolu získává cenné body v hodnocení webových stránek Googlem i jinými vyhledávači. Pokud vás tato problematika zaujala, tak určitě pokračujte ve čtení. Dozvíte se:

  • co znamená HTTPS,
  • v čem je HTTPS lepší než HTTP,
  • jak funguje komunikace přes HTTPS,
  • k čemu slouží SSL/TLS certifikát a jak ho získat,
  • jak probíhá přechod na HTTPS.

Co je HTTPS?

HTTPS (Hypertext Transfer Protocol Secure) je novější verze protokolu zajišťující komunikaci mezi webovým serverem a prohlížečem. Na rozdíl od původního HTTP (Hypertext Transfer Protocol) přenášená data šifruje a snižuje tak riziko zneužití osobních údajů, záměny obsahu či odposlech online komunikace.

Weby běžící na HTTPS jsou tedy bezpečnější a s tím i věrohodnější. Z tohoto důvodu Google zařadil použití tohoto protokolu na seznam takzvaných ranking (hodnotících) faktorů, ovlivňujících pozice ve výsledcích vyhledávání – v SERPu. Stejně tak se tyto stránky typicky dočkávají rychlejší indexace. Upřednostnění webů s HTTPS ovšem nesouvisí pouze s optimalizací pro vyhledávače (SEO).

Během prohlížení webových stránek jste již bezpochyby narazili na zeleně svítící nápis „Zabezpečeno“, případně ikonu zámku, jež se nachází vedle adresního řádku v prohlížeči.

Právě toto označení symbolizuje, že daný web při přenosu dat používá HTTPS, a dává tak uživateli najevo, že jsou jeho údaje v bezpečí. Webové stránky označené tímto symbolem pak bezpochyby působí důvěryhodněji než červeně zářící „Nezabezpečeno".

co je https

Mimo rychlejší indexace a větší šance na lepší umístění ve výsledcích vyhledávání tak HTTPS cílí na uživatelský zážitek, jelikož návštěvníci spíše nakoupí na eshopu nebo se zaregistrují na webu označeném jako důvěryhodný než u stránek, které hned po načtení vypíší chybovou hlášku. Google Chrome navíc s aktualizací na verzi 80 začal HTTP prvky na webech blokovat, takže se nemusí správně zobrazovat obsah – například obrázky.

Výhody HTTPS aneb co může tento protokol nabídnout

Z hlediska tvorby webu ani uživatelské interakce se stránkami se v podstatě nic nemění – vývoj probíhá stejným způsobem, prvky mají stejnou funkci, stejným způsobem manipulujete s obsahem. Snižuje se ovšem šance, že by někdo mohl zneužít přihlašovací nebo platební údaje. Výhody HTTPS nad HTTP jsou tedy následující:

  • zajištění šifrované komunikace – uživatelská jména i hesla jsou chráněna před zneužitím třetí stranou,
  • zajištění integrity – HTTPS brání takzvaným MITM atakům, kdy se útočník nabourá do komunikace mezi webovým serverem a prohlížečem a nahrazuje původní obsah stránky jiným, na e-shopu se tak může zobrazit banner s reklamou, který tam vůbec nepatří,
  • ověření identity – díky SSL certifikátu víte, že web, který navštěvujete skutečně patří očekávanému majiteli.

HTTPS najde své využití zejména u nezabezpečených – veřejných – WiFi sítí, kde může útočník celkem snadno zachytávat probíhající komunikaci. Přechod z HTTPS na HTTP tak není pouze záležitostí eshopů, elektronického bankovnictví a online plateb, ale veškerých internetových stránek, které umožňují přihlašování i ostatních webů, jež chtějí uživatelům zajistit dostatečnou ochranu osobních údajů.

Současně lze tento zabezpečený protokol pokládat za základ pro tvorbu AMP verzí stránek.

HTTPS vs. HTTP, v čem je rozdíl?

Zásadním argumentem v souboji HTTP vs. HTTPS je zmíněné šifrování komunikace. Mezi nevýhody HTTP patří:

  • riziko odposlouchávání,
  • nezabezpečené platby,
  • označování webů Chromem, Operou a dalšími browsery jako nedůvěryhodné,
  • riziko špatného načtení obsahu stránek.

http vs https

HTTP připojení bylo v minulosti o něco rychlejší než jeho zabezpečená varianta. To se změnilo s příchodem HTTP/2, který stejně jako HTTPS využívá SSL, a je spíše jeho nástupcem. I z hlediska rychlosti načítání stránek je tak nyní HTTPS výhodnější.

Další rozdíly je možné pozorovat v portech, zatímco HTTP využívá port 80, HTTPS používá port 443.

Nevýhody HTTPS oproti HTTP lze najít ve vyšších nákladech v podobě dražšího hostingu, platbě navíc za SSL certifikát a starosti o jeho expiraci (podrobněji níže) či vytíženějším serveru – jedná se o výpočetně náročnější komunikaci.

HTTPS a SSL/TLS certifikát aneb jak to celé funguje

HTTPS je zjednodušeně řečeno klasický HTTP protokol zašifrovaný prostřednictvím SSL, nebo TLS certifikátu. SSL (Secure Socket Layer) i TLS (Transport Layer Security) mají stejný úkol – zprostředkování asymetrické kryptografie. TLS je následník původního SSL, přičemž je obecně považován za bezpečnější variantu.

Označení SSL se ovšem vžilo natolik, že se v praxi často setkáte s SSL certifikátem, ačkoli se v řadě případů už jedná o TLS. Úkol obou bezpečnostních vrstev (protokolů) je však stejný – šifrování.

Princip asymetrické kryptografie je založený na dvojici klíčů – veřejném a soukromém, přičemž je veřejný klíč určený k zašifrování a soukromý klíč k rozšifrování. Soukromý klíč se tak nesmí dostat do cizích rukou, zatímco veřejný klíč dáte k dispozici straně, se kterou komunikujete.

jak funguje https

V praxi to funguje tak, že uživatel zadá do prohlížeče nějakou URL například www.rascasone.com. Prohlížeč (například Google Chrome) si vyžádá stránku na příslušném serveru. Server prohlížeči pošle zpátky certifikát s veřejným klíčem. Prohlížeč zkontroluje SSL/TLS certifikát stránky – jeho platnost, zda sedí informace o autoritě (vydavateli certifikátu) a zdrojovém webu.

Pokud údaje nesouhlasí, vypíše prohlížeč chybovou hlášku a upozorní tak uživatele na nezabezpečené připojení. Pokud jsou údaje v pořádku, zašifruje prohlížeč data (například údaje o platební kartě) veřejným klíčem. Server údaje prostřednictvím soukromého klíče dešifruje a provede transakci – číslo karty a podobně se tak dostává pouze do rukou příslušné služby.

Co je SSL/TLS certifikát a jak ho získat?

Předchozí odstavce již zmínily, že je SSL nebo TLS certifikát nezbytnou součástí celého procesu zabezpečené komunikace přes HTTPS protokol. V minulosti byl vyžadován především u internetového bankovnictví, eshopů a dalších webů, které umožňovaly platby online či registrace. Dnes je však jeho nepřítomnost obecně považována za projev nedůvěryhodnosti.

Co to tedy ten SSL certifikát je? Jedná se o identifikační prvek, který umožňuje browserům ověřit, zda je web, na který se chce uživatel připojit skutečně stránkou, jež chce navštívit. Lze jej tak přirovnat například k občanskému průkazu, díky němuž se každý může legitimovat a prokázat svou státní příslušnost či věk.

SSL certifikát tak obsahuje informace o doméně, název společnosti, město, stát, datum expirace a detaily o certifikační autoritě – zprostředkovateli certifikátu. Certifikát má stejně jako občanka určitou dobu platnosti, kterou je třeba hlídat, jinak webový prohlížeč nebude schopen stránku navštívit.

Jak SSL certifikát získat? V řadě případů má tyto věci na starosti poskytovatel hostingu. V podstatě tedy stačí, když mu oznámíte svou snahu o přechod z HTTP na HTTPS, on zajistí certifikát, vloží ho na server a na vás už zůstává „jen“ samotná změna URL.

Pokud pro vás hosting zřízení SSL certifikátu nezajistí, můžete vše vyřešit i svépomocí:

  • vyhledejte a oslovte některou z certifikačních autorit,
  • autorita vystaví certifikát a pošle vám ho e-mailem,
  • vložte certifikát na server, případně zadejte tuto práci poskytovateli či správci.

Celý proces zopakujte, jakmile certifikátu skončí platnost. U placených certifikátů se platnost pohybuje mezi 1-3 roky. Bezplatné služby, jako například Let’s Encrypt mívají platnost kratší, v tomto případě 90 dní. V obou situacích je však důležité dbát na to, aby certifikát nepropadl, protože jinak web nemusí být uživatelům dostupný, jak již bylo zmíněno výše.

K vyhledání certifikačních autorit můžete využít komunitu CA/Browser forum, případně report vytvořený Mozillou, tvůrcem prohlížeče Firefox. Při výběru se vyplatí klást důraz na důvěryhodnost, ačkoli se s ní pojí vyšší cena.

Jak přejít na HTTPS?

První krok, který musíte udělat, jakmile se pro přechod z HTTP na HTTPS rozhodnete, je zřízení SSL, nebo TLS certifikátu. Pak už nastává ta složitější část a současně důvod, proč se této změně řada webů a eshopů tak vehementně bránila – změna URL. Cílem je totiž změnit původní HTTP připojení u všech odkazů a stránek na HTTPS. Na celém webu by tak neměla zbýt po HTTP žádná zmínka.

O něco jednodušší postup mají uživatelé CMS WordPress. V tomto případě stačí použít některý z pluginů, jenž se o většinu starostí postará za vás. Ručně upravíte pouze URL v nastavení pro homepage, případně později pro smíšený obsah.

Pokud WordPress ani jiné open-source CMS nepoužíváte musíte přejít k přesměrování HTTP požadavků na HTTPS prostřednictvím trvalého přesměrování 301. Přesměrování 301 se používá v případě, kdy je nutné předělat strukturu webu, změnit doménu nebo smazat některou kategorii a když chcete uživatelům zabránit v návštěvách již neexistujících stránek.

jak přejít z http na https

Odstraníte tak riziko výpisu chybové hlášky 404. Současně se tímto způsobem chráníte před duplicitním obsahem a říkáte, kterou stránku má Google nebo Seznam indexovat. Přesměrování by však mělo vést buď na stránku se stejným obsahem nebo alespoň relevantními informacemi. Není proto vhodné přesměrovávat například ze stránky o vývoji mobilních aplikací na nabídku kadeřnických služeb.

Duplicity by se na webu neměly objevovat kvůli optimalizaci pro vyhledávače, přičemž je důležité zachovat původní URL. Například stránku http://www.vasweb.cz/sluzby byste měli přesměrovat na https://www.vasweb.cz/sluzby, nikoli https://www.vasweb.cz/kadernicke-sluzby, případně https://www.vasweb.cz/SLUZBY. Každá stránka by se zkrátka měla přesouvat 1:1, ať už z hlediska obsahu či adresy – změna by měla nastat pouze u protokolu http:// > https://.

Jak na smíšený obsah (mixed-content)

Změna URL stránek ovšem nestačí, nesmíte vynechat žádný prvek, odkazy v CSS, obrázky, skripty, kanonické odkazy, videa. V opačném případě by se HTTPS míchal dohromady s HTTP a vznikal by takzvaný mixed-content (smíšený obsah), na který prohlížeče rovněž upozorňují.

Kontrolu smíšeného obsahu můžete provést ručně, přes konzoli například v Google Chrome. Museli byste ovšem procházet veškeré stránky a u nich konzoli zobrazit (klávesa F12). Pohodlnější je proto použít některý ze specializovaných nástrojů, které URL procházejí hromadně, například HTTPS checker, SSL check nebo Screaming Frog, případně Ahrefs.

Všechny změny před nasazením na produkci otestujte, abyste se vyhnuli případným propadům na pozicích, zapříčiněným nesprávným indexováním. Aktualizace by se pak měly dočkat i analytické nástroje jako je Google Analytics nebo Google Search Console. V prvním případě postačí v nastavení změnit protokol. U Search Console je třeba znovu přidat web.

Nesmíte vynechat ani editaci souborů robots.txt nebo sitemap.xml a v případě PPC reklam jejich nové spuštění. Po nasazení změn nějakou dobu raději monitorujte pozice, u nichž je možné i při dodržení správného postupu, jak přejít z HTTP na HTTPS, zaznamenat určitý propad – změna URL je v každém případě zásadní úpravou, i když je tento přechod proces, který Google i Seznam schvalují.

HSTS aneb jak zajistit, aby web fungoval jen na HTTPS

Google ve svých materiálech zmiňuje také HSTS (HTTP Strict Transport Security), princip, který zajišťuje, že se na webu nebude zobrazovat HTTP obsah. Jedná se o další krok, který zabraňuje MITM útokům a současně brání tomu, aby se uživatelé na stránky připojovali nezabezpečeně. Existuje zde ovšem riziko znepřístupnění webu v situacích, jako je vypršení certifikátu.

Prohlížeč v tomto případě zaznamená HSTS a dokud neuplyne stanovená doba „max-age“, nezobrazí HTTP – například po dobu měsíce. I tuto dobu proto je dobré nejprve otestovat a začínat na kratších intervalech. Současně není nutné HSTS používat hned po přechodu na HTTPS.

Jak přejít na HTTPS - pro eshopy

Přechod z HTTP na HTTPS je bezpochyby nejsložitější pro eshopy a obsahové weby. Eshopy fungující na HTTPS však mají mimo zmíněné výhody v hodnocení také příležitost na umístění v Google Nákupech a na Zboží.cz, které v případě nezabezpečeného protokolu není možné.

Realizaci přesunu na HTTPS je v případě eshopu nutné správně načasovat. Ideálně na období, kdy se propad pozic tolik nedotkne návštěvnosti, tedy v závislosti na povaze zboží. Ku příkladu eshop se zimním oblečením bude pravděpodobně vhodnější transformovat v létě než v lyžařské sezoně.

Nejsnazší situaci pak mají bezpochyby ti, které tvorba webu nebo eshopu teprve čeká, jelikož mohou nový projekt rovnou startovat na HTTPS a celému procesu přechodu se vyhnout. Pokud s takovým projektem zrovna začínáte, neváhejte využít naší bezplatné konzultace, rádi vám pomůžeme s jeho realizací. Stejně tak vám můžeme pomoci i s přechodem z HTTP na HTTPS.

Související články

Více článků
Rascasone

Máte projekt nebo nápad?

Napište nám
CTA