seoraporu.co

HTTPS/SSL ja sivuston tietoturva

Mikä on HTTPS/SSL?

HTTPS (HTTP Secure) on protokolla, joka salaa verkkosivuston ja kävijän selaimen välisen tiedonvaihdon. Salaus toteutetaan sivuston SSL/TLS-varmenteen avulla; varmenne toimii selaimelle kuin digitaalinen asiakirja, joka vahvistaa sivuston identiteetin. Selaimen osoiterivillä näkyvä lukkosymboli osoittaa, että yhteys on salattu ja varmenne on voimassa.

HTTP:n kautta lähetetyt tiedot siirretään selväkielisenä (plaintext), mikä tarkoittaa, että samassa verkossa (esim. julkisessa Wi-Fi-verkossa) oleva kolmas osapuoli voi lukea tiedot. HTTPS salaa nämä tiedot, jolloin ne ovat luettavissa vain lähettäjän ja vastaanottajan välillä.

SSL-varmenteet ovat yleensä voimassa tietyn ajan (esim. vuoden), ja ne on uusittava voimassaolon päätyttyä; nykyään monet webhotellipalveluntarjoajat ovat automatisoineet tämän prosessin, jolloin varmenne uusitaan automaattisesti, mikä vähentää manuaalisen seurannan tarvetta.

Miksi se on tärkeää?

HTTPS suojaa käyttäjien tietoja (lomaketiedot, kirjautumistiedot, maksutiedot) man-in-the-middle-hyökkäyksiltä. Google pitää HTTPS:n käyttöä lievänä sijoitussignaalina, ja selaimet näyttävät HTTP-sivustoille ”Ei turvallinen” -varoituksen, mikä vaikuttaa suoraan käyttäjien luottamukseen.

Turvattomat sivustot vähentävät kävijöiden halukkuutta jäädä sivustolle; erityisesti lomakkeita täyttävät tai maksuja suorittavat käyttäjät saattavat poistua sivustolta kesken toiminnon, kun he näkevät ”Ei turvallinen” -varoituksen. Tämä on luottamuskysymys, joka vaikuttaa suoraan konversioasteeseen.

Lisäksi useimmat nykyaikaisten selainten ominaisuudet (esim. sijaintipalvelut, ilmoitukset, tietyt maksu-API:t) toimivat ainoastaan HTTPS-yhteyden kautta; HTTP-yhteyttä käyttävä sivusto ei voi hyödyntää näitä ominaisuuksia lainkaan, ja sen tekniset mahdollisuudet kaventuvat jatkuvasti.

Miten tämä korjataan?

Esimerkki

# .htaccess-esimerkki
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

Huono esimerkki: sivulla olevan vanhan absoluuttisen HTTP-linkin, kuten <img src="http://esimerkki.fi/logo.png">, päivittämisen unohtaminen; tämä aiheuttaa selaimessa sekasisältövaroituksen, vaikka sivu näyttäisikin yleisesti ottaen turvalliselta.

Yleisiä virheitä