Takaisin tietokeskukseen
HTTP-tietoturvaotsikoita: Täydellinen opas 2026
security David Lindgren 5 min2/5/2026

HTTP-tietoturvaotsikoita: Täydellinen opas 2026

Hallitse HSTS, CSP, X-Frame-Options ja kaikki kriittiset tietoturvaotsikoita.

Suorita sama tarkistus heti — ilmaiseksi

Anna verkkotunnuksesi ja saat 9-kohdan auditoinnin — DNS, SPF/DKIM/DMARC, SSL, tietoturvaotsikot, dark web -altistus — 60 sekunnissa.

Ei rekisteröitymistä · <60s · GDPR/EU-käsittely

Miksi tietoturvaotsikoilla on merkitystä

HTTP-tietoturvaotsikot ovat verkkopalvelimesi lähettämiä direktiivejä, jotka ohjeistavat selaimia siitä, miten niiden tulee toimia näyttäessään verkkosivustoasi. Niiden lisääminen ei vaadi mitään muutoksia sovelluksesi koodiin - ainoastaan verkkopalvelimen asetuksiin - ja silti ne ovat yksi tehokkaimmista puolustuskeinoista monenlaisia yleisiä verkkohyökkäyksiä vastaan, kuten Cross-Site Scriptingä (XSS), clickjackingia ja sisällön injektointia.

Monet verkkosivustot laiminlyövät tietoturvaotsikot kokonaan. Miljoonan suosituimman verkkosivuston läpikäynti osoittaa toistuvasti, että useimmilta puuttuu ainakin osa kriittisistä otsikoista. Tämä on menetetty tilaisuus, sillä nämä otsikot ovat ilmaisia ja helppoja lisätä.

HSTS - HTTP Strict Transport Security

HSTS on otsikko, joka kertoo selaimille: älä koskaan yhdistä tähän verkkosivustoon salaamattomalla HTTP:llä, kävi miten kävi. Kun selain on kerran nähnyt sivustosi HSTS-otsikon, se päivittää automaattisesti kaikki tulevat HTTP-pyynnöt HTTPS:ksi - vaikka käyttäjä kirjoittaisi "http://" osoiteriville tai napsauttaisi HTTP-linkkiä. Tämä on yksi tärkeimmistä tietoturvaotsikoista, joita voit lisätä.

Otsikolla on kolme tärkeää parametria. Arvo "max-age" kertoo selaimelle, kuinka kauan (sekunteina) sen tulee muistaa tämä käytäntö - sinun kannattaa asettaa se vähintään yhteen vuoteen (31536000 sekuntia). Lippu "includeSubDomains" laajentaa tämän suojan kaikkiin aliverkkotunnuksiisi. Lippu "preload" kertoo selaimille, että haluat päästä HSTS-esilatauslistalle - listalle, joka on rakennettu suoraan Chromeen, Firefoxiin ja muihin selaimiin, jotta jopa sivustosi aivan ensimmäinen vierailu on suojattu.

Nginxissä lisäät tämän otsikon add_header-direktiivillä server-lohkon sisällä. Apachessa käytät Header-direktiiviä VirtualHost-lohkon sisällä. Sisällytä aina avainsana "always" varmistaaksesi, että otsikko lähetetään myös virhevastausten yhteydessä.

Ennen kuin asetat pitkän max-age-arvon, varmista ehdottomasti, että koko sivustosi - kaikki aliverkkotunnukset mukaan lukien - toimii oikein HTTPS:n yli. Jos asetat HSTS:n pitkällä max-age-arvolla ja huomaat sitten, ettei jokin aliverkkotunnus tue HTTPS:ää, käyttäjät voivat jäädä lukituiksi ulos kuukausiksi.

CSP - Content Security Policy

Content Security Policy on tehokkain saatavilla oleva tietoturvaotsikko ja samalla monimutkaisin oikein määritettäväksi. Se kertoo selaimille tarkalleen, mistä lähteistä sisältöä saa ladata sivullesi - skriptit, tyylitiedostot, kuvat, fontit ja paljon muuta. Tämä on ensisijainen puolustuksesi Cross-Site Scripting (XSS) -hyökkäyksiä vastaan, joissa hyökkääjä onnistuu injektoimaan haitallista JavaScriptiä sivullesi.

CSP toimii lisäämällä luotetut lähteet sallittujen luetteloon. Voit esimerkiksi määrittää, että skriptejä saa ladata vain omasta verkkotunnuksestasi ja Google Analyticsista, että tyylitiedostot saavat tulla vain omasta verkkotunnuksestasi ja että kuvat saavat tulla mistä tahansa HTTPS:n yli. Kaiken sisällön, joka ei vastaa näitä sääntöjä, selain estää ennen kuin se ehtii suoritua.

Tehokkain tapa ottaa CSP käyttöön on tehdä se vaiheittain. Aloita lisäämällä "Content-Security-Policy-Report-Only"-otsikko "Content-Security-Policy":n sijaan. Tämä tarkoittaa, ettei käytäntöä pakoteta - rikkomuksista raportoidaan sinulle, mutta sisältö latautuu silti. Näin voit kerätä rikkomusraportteja, tunnistaa kaikki ne lailliset kolmannen osapuolen resurssit, joita sivustosi todella lataa, ja rakentaa käytäntösi rikkomatta mitään. Viikon tai kahden datankeruun jälkeen vaihdat pakottavaan versioon.

Yleinen sudenkuoppa on "unsafe-inline" - direktiivi, joka sallii sivun sisäiset (inline) skriptit ja tyylit. Vaikka tämä tekee CSP:n käyttöönotosta helppoa rikkomatta sivustoasi, se heikentää tarjottavaa suojaa dramaattisesti, koska useimmat XSS-hyökkäykset perustuvat inline-skriptien injektointiin. Parempi tapa on käyttää "nonce"-arvoja tai "hash"-tiivisteitä, jotta tietyt inline-skriptit sallitaan ja injektoidut estetään.

X-Frame-Options

X-Frame-Options-otsikko hallitsee sitä, voidaanko verkkosivustosi upottaa iframen sisään toisella verkkotunnuksella. Tämä suojaa clickjacking-hyökkäyksiltä, joissa hyökkääjä asettaa verkkosivustosi näkymättömään iframeen oman sivunsa päälle. Vierailija luulee napsauttavansa jotakin hyökkääjän sivulla, mutta napsauttaakin todellisuudessa sivustoasi - ja saattaa samalla valtuuttaa maksutapahtuman, napsauttaa "hyväksy"-painiketta tai suorittaa jonkin muun toiminnon huomaamattaan.

Suositeltu arvo on "SAMEORIGIN", joka sallii sivustosi upottamisen iframeihin vain oman verkkotunnuksesi sivuilta. "DENY" estää upottamisen kokonaan. Vanhempi "ALLOW-FROM"-vaihtoehto on vanhentunut, eivätkä modernit selaimet tue sitä.

Huomaa, että jos sinulla on moderni CSP määritettynä, voit käyttää X-Frame-Optionsin sijaan CSP:n "frame-ancestors"-direktiiviä - se tarjoaa hienojakoisemman hallinnan. Mahdollisimman laajan selainyhteensopivuuden vuoksi on kuitenkin hyvä käytäntö sisällyttää molemmat.

X-Content-Type-Options

Tällä yksinkertaisella mutta tärkeällä otsikolla on yksi ainoa arvo: "nosniff". Se estää selaimia tekemästä "MIME-nuuskintaa" - arvaamasta, minkä tyyppistä sisältöä tiedosto sisältää sen todellisen sisällön perusteella sen sijaan, että ne nojaisivat ilmoitettuun Content-Type-otsikkoon.

MIME-nuuskinta kuulostaa vaarattomalta, mutta sitä voidaan käyttää väärin. Jos hyökkääjä saa sinut isännöimään tiedostoa, joka näyttää selaimen sisällönnuuskijalle HTML:ltä tai JavaScriptiltä - vaikka itse luulisit sitä kuva- tai tekstitiedostoksi - selain saattaa suorittaa sen skriptinä. "nosniff"-arvon lisääminen käskee selaimia kunnioittamaan aina ilmoitettua sisältötyyppiä eikä koskaan arvaamaan.

Referrer-Policy

Kun käyttäjä napsauttaa verkkosivustoltasi linkkiä toiselle sivustolle, selaimet sisällyttävät automaattisesti "Referer"-otsikon (huomaa kirjoitusvirhe - se on historiallinen), joka kertoo kohdesivustolle, mistä käyttäjä tuli. Tämä voi vahingossa vuotaa arkaluonteista tietoa, jos URL-osoitteesi sisältävät istuntotunnuksia, hakukyselyitä tai muuta yksityistä dataa kyselymerkkijonossa.

Referrer-Policy-otsikko hallitsee sitä, mitä tietoa lähetetään. Suositeltu arvo "strict-origin-when-cross-origin" lähettää täyden URL-osoitteen saman alkuperän pyynnöille (hyödyllistä omaa analytiikkaasi varten), mutta lähettää eri alkuperän pyynnöille vain verkkotunnuksen (ei täyttä URL-osoitetta). Tämä suojaa arkaluonteiset URL-parametrit ja säilyttää samalla hyödyllisen viittaajatiedon omaa sivustoasi varten.

Permissions-Policy

Permissions-Policy (aiemmin nimeltään Feature-Policy) hallitsee sitä, mitä selaimen ominaisuuksia ja rajapintoja sivusi saa käyttää. Tähän kuuluvat mahdollisesti arkaluonteiset toiminnot, kuten kamera, mikrofoni, paikannus, maksupyyntörajapinta (payment request API) ja muut. Poistamalla nimenomaisesti käytöstä ne ominaisuudet, joita et käytä, estät kolmannen osapuolen skriptejä (mainosverkostoja, analytiikkatyökaluja, upotettua sisältöä) pääsemästä näihin ominaisuuksiin, vaikka ne yrittäisivät.

Usein kysytyt kysymykset

Rikkooko CSP:n lisääminen verkkosivustoni? Saattaa rikkoa, ainakin aluksi. CSP estää kaiken, mitä ei ole nimenomaisesti sallittu. Jos sinulla on inline-skriptejä, inline-tyylejä tai kolmannen osapuolen resursseja, joita et ole lisännyt sallittujen luetteloon, ne estetään. Ratkaisu on käyttää ensin Report-Only-tilaa ja käyttää aikaa rikkomusraporttien keräämiseen ennen kuin siirryt pakottamiseen.

Mikä on Server-otsikko ja pitäisikö minun piilottaa se? Server-otsikko paljastaa verkkopalvelimesi ohjelmiston ja version - esimerkiksi "nginx/1.24.0". Tämä tieto on hyödyllistä hyökkääjille, jotka haluavat kohdistaa hyökkäyksensä tiettyjen ohjelmistoversioiden tunnettuihin haavoittuvuuksiin. Sinun kannattaa estää tai yleistää tämä otsikko. Nginxissä aseta "server_tokens off". Apachessa käytä "ServerTokens Prod".

Vaikuttavatko nämä otsikot sivuston suorituskykyyn? Häviävän vähän. Otsikot lisäävät muutaman tavun jokaiseen HTTP-vastaukseen, mutta niillä ei ole merkittävää vaikutusta latausaikaan. Tietoturvahyödyt ovat paljon suuremmat kuin vähäinen lisäkuorma.

Pitäisikö minun lisätä tietoturvaotsikot sekä HTTP- että HTTPS-vastauksiin? Kyllä - määritä ne molempiin, mutta muista, että HSTS tulee lähettää vain HTTPS:n yli. HTTP:n yli lähetetty HSTS jätetään huomiotta ja voi aiheuttaa sekaannusta.

Frequently Asked Questions

#security headers#hsts#csp#xss#clickjacking#nginx#apache

Tarkista verkkotunnuksesi nyt

Suorita ilmainen tietoturvatarkastus ja katso onko verkkotunnuksellasi artikkelin ongelmia.

Eväste-asetukset

Käytämme evästeitä parantaaksemme kokemustasi. Voit valita mitkä evästeet hyväksyt.