Co je HTTPS a SSL? Jak fungují bezpečné weby, jednoduše
HTTPS je zabezpečená verze HTTP, protokolu, kterým prohlížeče komunikují s weby. Každý požadavek a odpověď obalí do šifrovaného spojení pomocí TLS (Transport Layer Security), takže nikdo mezi návštěvníkem a webem nemůže přečíst ani upravit to, co se posílá. SSL je starší název pro stejnou myšlenku, původní protokol, který TLS nahradil, a proto lidé stále říkají „SSL certifikát“.
Proč je HTTPS důležitý při tvorbě s AI
Každá aplikace, kterou publikujete, by měla být dostupná přes HTTPS. Nejde jen o dobrou praxi:
- Prohlížeče to očekávají. Weby na prostém HTTP jsou označeny jako „Nezabezpečeno“ a některé funkce prohlížeče, například přístup k poloze, kameře a mikrofonu nebo servisní pracovníci pro offline aplikace, obvykle fungují jen na zabezpečených (HTTPS) stránkách.
- Přihlášení a formuláře. Bez HTTPS putují hesla, session cookies i data z formulářů čitelným textem. Kdokoli na stejné veřejné Wi-Fi je potenciálně může zachytit.
- Platby a služby třetích stran. Platební poskytovatelé, přihlášení přes OAuth a mnohá API vyžadují adresy přesměrování a zpětného volání přes HTTPS.
- Důvěra a vyhledávání. Návštěvníci varování vidí a Google uvedl, že HTTPS bere jako signál pro řazení ve výsledcích.
Dobrá zpráva je, že na většině moderních hostingových platforem se HTTPS nastaví automaticky. Potřebujete hlavně rozumět jednotlivým částem natolik, abyste to opravili, když se pokazí vlastní doména nebo varování o smíšeném obsahu.
Každodenní příměr
Odeslání dat přes prosté HTTP je jako poslání pohlednice: každý poštovní pracovník, který ji drží, ji může přečíst a dokonce změnit sdělení.
HTTPS je jako zapečetěná obálka, u které se navíc kontroluje, zda ji doručujete správnému příjemci. Certifikát je ten průkaz totožnosti, který vydala důvěryhodná autorita (certifikační autorita) poté, co ověřila, že web skutečně ovládá danou doménu. Šifrování je zapečetěná obálka. Průkaz dokazuje, že píšete na správnou adresu, a obálka chrání obsah před nahlédnutím.
Jak HTTPS funguje, jednoduše
Když prohlížeč otevře https://shop.example.com:
- Pozdrav. Prohlížeč se připojí a sdělí, jaké šifrovací metody podporuje.
- Certifikát. Server pošle svůj certifikát, který říká „tento klíč patří k
shop.example.com“ a je podepsán certifikační autoritou. - Kontrola. Prohlížeč ověří podpis vůči autoritám, kterým už důvěřuje, zkontroluje, že certifikát nevypršel, a že doména odpovídá.
- Klíče. Prohlížeč a server se domluví na novém tajném klíči pro tuto relaci, aniž by ho kdy poslaly otevřeně.
- Šifrovaná komunikace. Všechny požadavky a odpovědi, tedy stránky, data z formulářů i cookies, nyní putují zašifrovaně.
Tento TLS handshake trvá několik milisekund a probíhá automaticky. Návštěvník vidí jen ikonu zámku (nebo v některých prohlížečích neutrální ikonu informací o webu).
Co HTTPS chrání a co ne
| Chrání | Nechrání |
|---|---|
| Data přenášená mezi prohlížečem a serverem | Data poté, co dorazí na váš server nebo do databáze |
| Před odposlechem na veřejné Wi-Fi | Před škodlivým nebo podvodným webem |
| Před úpravou stránek cestou | Před chybami ve vaší aplikaci, například chybějící kontrolou oprávnění |
| Cookies a hesla během odesílání | Před slabými hesly nebo uniklými API klíči |
HTTPS šifruje obsah požadavků, včetně cesty stránky a query stringu. Název domény, kterou navštívíte, je ale obvykle pořád vidět sítím na trase. Proto nikdy nedávejte osobní údaje do URL, protože se také objevují v logách a v historii prohlížeče.
Praktický příklad: připojení vlastní domény
Předpokládejme, že publikujete rezervační aplikaci a chcete ji mít na adrese book.myyogastudio.com:
- Přidáte DNS záznam, který směřuje
book.myyogastudio.comna váš hosting. Viz jak fungují domény a DNS. - Hosting dokáže certifikační autoritě, že ovládá tento název, obvykle odpovědí na výzvu na dané doméně, a dostane certifikát.
- Hosting certifikát nainstaluje a před vypršením automaticky obnoví. Certifikáty jsou záměrně krátkodobé, takže automatická obnova je důležitá.
- Návštěvníci
http://book.myyogastudio.comjsou přesměrováni nahttps://.
Pokud je krok 1 chybný, například záznam míří jinam nebo je v cestě proxy, krok 2 může selhat a návštěvníci uvidí chybu certifikátu. To je nejčastější problém s HTTPS, na který lidé narazí při připojování vlastní domény.
Klíčové pojmy
| Pojem | Význam |
|---|---|
| TLS | Transport Layer Security, šifrovací protokol za HTTPS. |
| SSL | Secure Sockets Layer, zastaralý předchůdce TLS. Název přetrvává. |
| Certifikát | Podepsaný soubor, který spojuje doménu s veřejným klíčem. |
| Certifikační autorita (CA) | Organizace, které prohlížeče důvěřují a která vydává certifikáty, například Let's Encrypt. |
| Ověření domény (DV) | Certifikát dokazující kontrolu nad doménou, který používá prakticky každý web. |
| Wildcard certifikát | Pokrývá všechny subdomény o jednu úroveň, například *.example.com. |
| Smíšený obsah | HTTPS stránka, která načítá některé zdroje přes prosté HTTP. Prohlížeče je blokují nebo varují. |
| HSTS | Hlavička, která prohlížečům říká, aby váš web od té doby vždy otevíraly přes HTTPS. |
| Port 443 | Standardní port pro HTTPS (HTTP používá port 80). |
Časté omyly
- „Zámek znamená, že je web důvěryhodný.“ Znamená to, že spojení je soukromé a doména odpovídá. Podvodníci certifikáty také získají.
- „HTTPS je potřeba jen na platebních stránkách.“ Každá stránka s přihlášením, formulářem nebo cookie ho potřebuje, a to je téměř každá aplikace. Používejte ho všude.
- „Certifikáty jsou drahé.“ Bezplatné důvěryhodné certifikáty jsou běžné a většina hostingů je spravuje za vás.
- „HTTPS udělá moji aplikaci bezpečnou.“ Zabezpečí spojení. Vaše aplikace stále potřebuje kontroly oprávnění na serveru, bezpečné zacházení s tajnými údaji a validaci vstupů. Viz bezpečnostní kontrolní seznam pro aplikace vytvořené s AI.
- „HTTPS zpomaluje weby.“ Moderní TLS přidává velmi malou režii a funkce jako HTTP/2, které weby zrychlují, v prohlížečích obvykle HTTPS vyžadují.
Jak opravit časté problémy s HTTPS
| Příznak | Pravděpodobná příčina |
|---|---|
| „Vaše připojení není soukromé“ | Certifikát nepokrývá přesně tuto doménu, vypršel, nebo ještě nebyl vydán |
Funguje na www., ale ne na samotné doméně (nebo naopak) | Jen jeden název má DNS záznam a certifikát |
| Chybí zámek, „Nezabezpečeno“ na některých stránkách | Smíšený obsah: obrázek, skript nebo font načtený přes http:// |
| Chyba certifikátu hned po připojení domény | DNS se ještě šíří, nebo proxy před webem blokuje kontrolu certifikátu |
Co požádat svůj AI nástroj
- „Ujisti se, že každý obrázek, skript a font se načítá přes HTTPS nebo relativní URL, žádné odkazy
http://.“ - „Přesměruj veškerý HTTP provoz na HTTPS.“
- „Nastav session cookies s příznaky
SecureaHttpOnly.“ - „Pro každou OAuth, platební a webhook callback URL používej
https://.“ - „Moje vlastní doména hlásí chybu certifikátu. Jaký DNS záznam hosting očekává?“
HTTPS v Mythexu
Když připojíte vlastní doménu v Mythexu (funkce tarifu Pro), přidáte záznam CNAME směřující na cíl slug.mythex.ai, který vám Mythex zobrazí, kliknete na Ověřit a Mythex pro doménu automaticky vystaví HTTPS. Dokumentace popisuje dva nejčastější problémy: pokud je vaše DNS na Cloudflare, nastavte záznam na „pouze DNS“ (šedý oblak), nikoli proxované, aby Mythex mohl certifikát vystavit. A DNS může ověřit dříve, než je HTTPS plně nastaven, takže počkejte několik minut a ověřte znovu. Viz vlastní domény v dokumentaci a náš průvodce připojením vlastní domény.
Otázky
Jaký je rozdíl mezi HTTP a HTTPS?
HTTP posílá data mezi prohlížečem a webem jako čitelný text. HTTPS je HTTP posílané přes šifrované spojení TLS, takže lidé na stejné síti ani podél trasy nemohou data přečíst ani změnit a prohlížeč může ověřit, že komunikuje se správným webem.
Jsou SSL a TLS totéž?
TLS je moderní nástupce SSL. Všechny verze SSL jsou zastaralé a nezabezpečené, dnešní bezpečné weby používají TLS. Lidé z návyku stále říkají „SSL certifikát“, ale certifikáty se používají s TLS.
Znamená zámek, že je web bezpečný?
Ne. Zámek znamená, že spojení je šifrované a certifikát odpovídá doméně. I podvodný web může mít platný certifikát. Říká vám to, že nikdo nemůže spojení odposlouchávat, ne to, že provozovatel webu je důvěryhodný.
Musím za SSL certifikát platit?
Obvykle ne. Bezplatné automatizované certifikační autority, jako je Let's Encrypt, vydávají certifikáty, kterým prohlížeče důvěřují, a většina hostingových platforem je za vás získá a obnovuje. Placené certifikáty přidávají hlavně podporu nebo další kontroly identity.
Proč můj web hlásí „Nezabezpečeno“?
Obvyklé příčiny jsou otevření webu přes http:// místo https://, certifikát, který vypršel nebo nepokrývá přesně tuto doménu, nebo stránka načítající obrázky či skripty přes nezabezpečené http:// (smíšený obsah).