Oppaat

Mitä ovat HTTPS ja SSL? Miten turvalliset verkkosivut toimivat selitettynä

HTTPS on HTTP:n turvallinen versio. HTTP on protokolla, jolla selaimet puhuvat verkkosivuille. Se kääri jokaisen pyynnön ja vastauksen salattuun yhteyteen TLS-protokollalla (Transport Layer Security), joten kukaan kävijän ja verkkosivun välissä ei voi lukea tai muokata lähetettyä tietoa. SSL on sama idea vanhalla nimellä. Se on alkuperäinen protokolla, jonka TLS korvasi, ja siksi ihmiset yhä puhuvat "SSL-varmenteesta".

Miksi HTTPS on tärkeää tekoälyllä rakennettaessa

Jokaisen julkaistun sovelluksen tulisi olla HTTPS:n takana. Syy ei ole pelkästään hyvä käytäntö:

  • Selaimet odottavat sitä. Sivut ilman HTTPS:ää merkitään "Not secure" -tekstillä, ja jotkin selainominaisuudet, kuten sijaintitieto, kamera ja mikrofoni sekä offline-sovellusten service workerit, toimivat yleensä vain suojatuilla (HTTPS) sivuilla.
  • Kirjautumiset ja lomakkeet. Ilman HTTPS:ää salasanat, istuntoevästeet ja lomaketiedot kulkevat luettavana tekstinä. Kuka tahansa samassa kahvilan Wi-Fi-verkossa voi periaatteessa kaapata ne.
  • Maksut ja kolmannet osapuolet. Maksupalveluntarjoajat, OAuth-kirjautuminen ja monet rajapinnat vaativat HTTPS-osoitteet uudelleenohjauksille ja takaisinkutsuille.
  • Luottamus ja hakukoneet. Kävijät huomaavat varoituksen, ja Google on sanonut käyttävänsä HTTPS:ää hakutulosten järjestyksen signaalina.

Hyvä uutinen on, että useimmilla nykyaikaisilla hostauspalveluilla HTTPS on määritetty automaattisesti. Sinun pitää lähinnä ymmärtää osat tarpeeksi hyvin korjataksesi asian, kun oma verkkotunnus tai sekasisältövaroitus menee pieleen.

Arkinen vertaus

Tiedon lähettäminen tavallisella HTTP:llä on kuin postikortin lähettämistä: jokainen postinkantaja, joka sen käsittelee, voi lukea sen, ja joku voisi jopa muuttaa viestin.

HTTPS on kuin lähettäisi suljetun, väärennyksen paljastavan kirjekuoren, ja ensin tarkistaisit vastaanottajan virallisen henkilöllisyystodistuksen. Varmenne on se henkilöllisyystodistus, jonka luotettu myöntäjä (varmentaja) on antanut sen jälkeen, kun se on varmistanut, että verkkosivusto todella hallitsee verkkotunnusta. Salaus on suljettu kirjekuori. Henkilöllisyystodistus todistaa, että kirjoitat oikealle osoitteelle, ja kirjekuori pitää sisällön yksityisenä.

Miten HTTPS toimii yksinkertaisesti

Kun selain avaa osoitteen https://shop.example.com:

  1. Tervehdys. Selain yhdistää palvelimeen ja kertoo, mitä salausmenetelmiä se tukee.
  2. Varmenne. Palvelin lähettää varmenteensa, jossa lukee "tämä avain kuuluu verkkotunnukselle shop.example.com", ja jonka on allekirjoittanut varmentaja.
  3. Tarkistus. Selain tarkistaa allekirjoituksen luotetuilta varmentajilta, varmistaa ettei varmenne ole vanhentunut ja että verkkotunnus täsmää.
  4. Avaimet. Selain ja palvelin sopivat uudesta salaisuudesta tähän istuntoon ilman, että sitä lähetetään avoimena.
  5. Salattu keskustelu. Kaikki pyynnöt ja vastaukset, eli sivut, lomaketiedot ja evästeet, kulkevat nyt salattuina.

Tämä TLS-kättely kestää muutamia millisekunteja ja tapahtuu automaattisesti. Kävijä näkee vain lukkokuvakkeen, tai joissakin selaimissa neutraalin sivutietokuvakkeen.

Mitä HTTPS suojaa ja mitä ei

SuojaaEi suojaa
Tiedot selaimen ja palvelimen välisessä siirrossaTiedot, kun ne ovat jo palvelimellasi tai tietokannassasi
Kuuntelua vastaan julkisessa Wi-Fi-verkossaHaitallista tai huijaavaa verkkosivustoa vastaan
Sivujen muokkaamista vastaan matkan varrellaSovelluksesi virheitä vastaan, kuten puuttuvia käyttöoikeustarkistuksia
Evästeitä ja salasanoja niiden lähetyksen aikanaHeikkoja salasanoja tai vuotaneita API-avaimia vastaan

HTTPS salaa pyyntöjen sisällön, myös sivupolun ja kyselyparametrit. Verkkotunnus, jolla vierailet, näkyy kuitenkin yleensä yhä reitin varrella oleville verkoille. Yksi syy olla laittamatta henkilötietoja URL-osoitteisiin on se, että ne päätyvät lokeihin ja selaimen historiaan.

Esimerkki: oman verkkotunnuksen liittäminen

Oletetaan, että julkaiset varaussovelluksen osoitteessa book.myyogastudio.com:

  1. Lisäät DNS-tietueen, joka osoittaa book.myyogastudio.com hostillesi. Katso miten verkkotunnukset ja DNS toimivat.
  2. Hostisi todistaa varmentajalle, että se hallitsee tätä nimeä, yleensä vastaamalla haasteeseen kyseisellä verkkotunnuksella, ja saa varmenteen.
  3. Hosti asentaa varmenteen ja uusii sen automaattisesti ennen vanhenemista. Varmenteet on tarkoituksella tehty lyhytaikaisiksi, joten automaattinen uusiminen on tärkeää.
  4. Osoitteella http://book.myyogastudio.com vierailevat ohjataan https://-osoitteeseen.

Jos vaihe 1 on väärin, eli tietue osoittaa muualle tai välissä on välityspalvelin, vaihe 2 voi epäonnistua ja kävijät näkevät varmennevirheen. Tämä on yleisin HTTPS-ongelma, johon ihmiset törmäävät liittäessään oman verkkotunnuksen.

Keskeiset termit

TermiMerkitys
TLSTransport Layer Security, HTTPS:n takana oleva salausprotokolla.
SSLSecure Sockets Layer, TLS:n vanhentunut edeltäjä. Nimi elää yhä.
VarmenneAllekirjoitettu tiedosto, joka yhdistää verkkotunnuksen julkiseen avaimeen.
Varmentaja (CA)Organisaatio, johon selaimet luottavat ja joka myöntää varmenteita, kuten Let's Encrypt.
Verkkotunnusvahvistus (DV)Varmenne, joka todistaa verkkotunnuksen hallinnan. Lähes kaikki sivustot käyttävät sitä.
Wildcard-varmenneKattaa kaikki yhden tason aliverkkotunnukset, kuten *.example.com.
SekasisältöHTTPS-sivu, joka lataa osan resursseista tavallisen HTTP:n kautta. Selaimet estävät tai varoittavat siitä.
HSTSOtsikko, joka kertoo selaimille käyttää sivustollesi aina HTTPS:ää.
Portti 443HTTPS:n vakioportti (HTTP käyttää porttia 80).

Yleisiä väärinkäsityksiä

  • "Lukko tarkoittaa, että sivusto on luotettava." Se tarkoittaa, että yhteys on yksityinen ja verkkotunnus täsmää. Huijarit saavat varmenteita myös.
  • "HTTPS tarvitaan vain maksusivuilla." Jokainen sivu, jolla on kirjautuminen, lomake tai eväste, tarvitsee sitä, eli käytännössä lähes jokainen sovellus. Käytä sitä kaikkialla.
  • "Varmenteet ovat kalliita." Ilmaiset, luotetut varmenteet ovat yleisiä, ja useimmat hostit hoitavat ne puolestasi.
  • "HTTPS tekee sovelluksestani turvallisen." Se suojaa yhteyden. Sovelluksesi tarvitsee yhä palvelinpuolen käyttöoikeustarkistukset, turvallisen salaisuuksien käsittelyn ja syötteiden validoinnin. Katso tekoälyllä rakennettujen sovellusten turvallisuuslista.
  • "HTTPS hidastaa sivuja." Nykyaikainen TLS aiheuttaa hyvin vähän lisäkuormaa, ja nopeuttavat ominaisuudet, kuten HTTP/2, vaativat selaimissa yleensä HTTPS:n.

HTTPS-ongelmien korjaaminen

OireTodennäköinen syy
"Yhteys ei ole yksityinen"Varmenne ei kata tätä tarkkaa verkkotunnusta, on vanhentunut tai sitä ei ole vielä myönnetty
Toimii www.-osoitteella mutta ei pelkällä verkkotunnuksella (tai päinvastoin)Vain toisella nimellä on DNS ja varmenne
Lukko puuttuu, "Not secure" joillakin sivuillaSekasisältö: kuva, skripti tai fontti ladataan http://-osoitteesta
Varmennevirhe heti verkkotunnuksen liittämisen jälkeenDNS on yhä leviämässä, tai edessä oleva välityspalvelin estää varmenteen tarkistuksen

Mitä pyytää tekoälysovellusrakentajalta

  • "Varmista, että jokainen kuva, skripti ja fontti latautuu HTTPS:n kautta tai suhteellisella URL-osoitteella. Ei http://-linkkejä."
  • "Ohjaa kaikki HTTP-liikenne HTTPS:ään."
  • "Aseta istuntoevästeet Secure- ja HttpOnly-lipuilla."
  • "Käytä https://-osoitetta jokaisessa OAuth-, maksu- ja webhook-takaisinkutsussa."
  • "Oma verkkotunnukseni näyttää varmennevirheen. Mitä DNS-tietuetta hostini odottaa?"

HTTPS Mythexissä

Kun liität oman verkkotunnuksen Mythexissä (Pro-ominaisuus), lisäät CNAME-tietueen, joka osoittaa Mythexin näyttämään slug.mythex.ai-kohteeseen, klikkaat Verify-painiketta, ja Mythex myöntää HTTPS:n verkkotunnukselle automaattisesti. Dokumentaatio kattaa kaksi yleisintä ongelmaa: jos DNS on Cloudflaressa, aseta tietue tilaan "DNS only" (harmaa pilvi) eikä proxy-tilaan, jotta Mythex voi myöntää varmenteen. Lisäksi DNS voi vahvistua ennen kuin HTTPS on täysin valmis, joten odota muutama minuutti ja vahvista uudelleen. Katso oma verkkotunnus dokumentaatiosta ja oppaamme oman verkkotunnuksen liittämisestä.

Kysymykset

Mikä ero on HTTP:llä ja HTTPS:llä?

HTTP lähettää tiedot selaimen ja verkkosivun välillä luettavana tekstinä. HTTPS on HTTP:tä, joka kulkee salatun TLS-yhteyden kautta. Ihmiset samassa verkossa tai reitin varrella eivät voi lukea tai muuttaa lähetettyä tietoa, ja selain voi tarkistaa puhuvansa oikealle sivustolle.

Ovatko SSL ja TLS sama asia?

TLS on SSL:n nykyinen seuraaja. Kaikki SSL-versiot ovat vanhentuneita ja turvattomia, ja nykyiset turvalliset verkkosivut käyttävät TLS:ää. Ihmiset puhuvat yhä "SSL-varmenteesta" tottumuksesta, mutta varmenteita käytetään TLS:n kanssa.

Tarkoittaako lukko, että sivusto on turvallinen?

Ei. Lukko tarkoittaa, että yhteys on salattu ja varmenne vastaa verkkotunnusta. Huijaussivustollakin voi olla kelvollinen varmenne. Lukko kertoo, ettei kukaan voi kuunnella yhteyttä, mutta ei sitä, että sivuston omistaja on luotettava.

Pitääkö SSL-varmenteesta maksaa?

Yleensä ei. Ilmaiset, automatisoidut varmentajat, kuten Let's Encrypt, myöntävät varmenteita, joihin selaimet luottavat, ja useimmat hostauspalvelut hankkivat ja uusivat ne puolestasi. Maksulliset varmenteet lisäävät lähinnä tukea tai tarkempia henkilöllisyyden tarkistuksia.

Miksi sivuni näyttää Not Secure -merkinnän?

Yleisiä syitä ovat sivun avaaminen osoitteella http:// eikä https://, varmenne, joka on vanhentunut tai ei kata täsmälleen tätä verkkotunnusta, tai sivu, joka lataa kuvia tai skriptejä tavallisen http:// -yhteyden kautta (sekasisältö).

Mythex · Pricing · Rakenna mitä tahansa tekoälyllä · Verkkosivu- ja sovellusmallipohjat · Mythex vertailussa · Tekoälysovellusten rakentamisen sanasto · Ilmaiset työkalut tekoälysovellusten rakentamiseen · English

English አማርኛ العربية Български বাংলা Bosanski Català Čeština Dansk Deutsch Ελληνικά Español Español (España) Eesti فارسی Français Français (Canada) ગુજરાતી हिन्दी Hrvatski Magyar Հայերեն Bahasa Indonesia Íslenska Italiano 日本語 ქართული Қазақ тілі ಕನ್ನಡ 한국어 Lietuvių Latviešu Македонски മലയാളം Монгол मराठी Bahasa Melayu မြန်မာ Norsk bokmål Nederlands ਪੰਜਾਬੀ Polski Português (Brasil) Português (Portugal) Română Русский Slovenčina Slovenščina Soomaali Shqip Srpski Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Türkçe Українська اردو Tiếng Việt 简体中文 繁體中文(香港) 繁體中文(台灣)