Gå direkte til indholdet

Cookieindstillinger

Vælg for hver type, hvilke cookies du tillader. Du kan altid ændre dit valg via Cookieindstillinger nederst på hver side. Privatlivspolitik

Nødvendige

Altid slået til

Nødvendige for at logge ind, gemme din kurv og huske dine valg. De er altid slået til.

Hvilke cookies?
  • weboke_sessie, weboke_klant, weboke_remember: din session og at forblive logget ind
  • weboke_basket: din kurv
  • wkBtwIncl: vise priser med eller uden moms
  • wok_cookies: dit cookievalg, 12 måneder

Måler, hvilken annonce der fører til et besøg eller en bestilling, så vi ikke betaler for annoncer, der ikke virker.

Hvilke cookies?
  • Google Ads via Google Tag Manager (_gcl_au, _gcl_aw), op til 90 dage
  • OpenAI Ads, annoncer i ChatGPT
  • wok_aff: hvilken partner der henviste dig til os (affiliateprogram), 60 dage

4,6

Land og sprog

Hvert land har sin egen side med landets priser og moms.

Se

HSTS og sikkerhedsheaders til din hjemmeside

Med hver side sender din webserver headers med: korte linjer med instruktioner til browseren. De er med til at bestemme, hvor sikkert browseren håndterer din side. Her kan du læse, hvad HSTS er, hvilke andre sikkerhedsheaders der findes, og hvordan du opsætter og tester dem.

Først skal din side have et fungerende certifikat og sende besøgende videre til https. Det kan du læse om i Aktivér og forny SSL-certifikat, og løs problemer og Send altid besøgende videre til https.

Hvad gør HSTS?

Omdirigering til https har ét svagt punkt: den første forespørgsel via http sendes stadig ukrypteret. En person på samme netværk, for eksempel på et offentligt wifi, kan opsnappe den forespørgsel. HSTS (HTTP Strict Transport Security) løser det. Din side sender denne header med via https:

Strict-Transport-Security: max-age=31536000

Browseren husker så, at den kun må åbne din side via https. Skriver en besøgende senere http://, laver browseren det selv om til https, før noget sendes over netværket. En HSTS-header, der kommer ind via almindelig http, ignorerer browseren.

DelBetydning
max-ageHvor længe browseren husker det, i sekunder. Testen på internet.nl regner mindst et år (31536000) som tilstrækkeligt.
includeSubDomainsGælder også for alle subdomæner, som shop.ditdomæne.nl og mail.ditdomæne.nl.
preloadDu beder om at komme på den liste, der er indbygget i browsere (hstspreload.org). Så er selv det allerførste besøg beskyttet. Det kræver blandt andet et år, includeSubDomains og https på alle subdomæner. Det tager lang tid at komme af listen igen.
max-age=0Sletter den huskede instruktion igen ved næste besøg via https.
Slå først HSTS til, når https virker overalt. Har en browser husket HSTS og ser en certifikatfejl, får den besøgende ingen knap til at fortsætte alligevel. Udløber dit certifikat, eller passer det ikke til www, er din side utilgængelig for de besøgende, indtil det er løst. Med includeSubDomains gælder det også for hvert subdomæne, for eksempel en gammel kamera- eller printerside uden certifikat. Byg det derfor op gradvist: start med en kort max-age, for eksempel en dag (86400), tjek at alt virker, og øg i trin op til et år.

HSTS hos WebOké

På de fleste af vores servere sender webserveren som standard HSTS med for hver hjemmeside, der åbnes via https: Strict-Transport-Security: max-age=31536000. Det er et år, uden includeSubDomains og uden preload. Det behøver du ikke gøre noget for. På nogle få servere er det ikke slået til som standard; der slår du det selv til. Om din side allerede sender HSTS med, og med hvilken max-age, kan du se i din browsers udviklerværktøjer eller i testen på internet.nl (se nedenfor).

HSTS-kontakten i DirectAdmin

I DirectAdmin går du til Domains og klikker på dit domænenavn. Er Secure SSL slået til, ser du ved HSTS kontakten Enable HTTP Strict Transport Security. Klik derefter på Save for at gemme. Hvordan det gøres trin for trin, kan du læse i Send altid besøgende til https.

Sender din side allerede HSTS med, har du ikke brug for kontakten. Slå den kun til, hvis din side endnu ikke sender HSTS. Opsæt HSTS ét sted: i DirectAdmin eller i .htaccess, ikke begge. Får browseren to HSTS-headers, bruger den kun den første.

De andre sikkerhedsheaders

HeaderBeskytter modVærdi at starte med
X-Content-Type-OptionsBrowseren gætter selv, hvad en fil er, så et uploadet "billede" kan blive kørt som script.nosniff (den eneste gyldige værdi)
Content-Security-Policy: frame-ancestors eller X-Frame-OptionsClickjacking: en anden side indlæser din side usynligt i en frame, så besøgende ubemærket klikker på dine knapper.frame-ancestors 'self', eller den ældre header X-Frame-Options: SAMEORIGIN
Referrer-PolicyVed et klik til en anden side sender browseren adressen på den forrige side med, nogle gange med et søgeord eller ordrenummer i.strict-origin-when-cross-origin, eller strengere same-origin eller no-referrer. Internet.nl godkender kun de strenge værdier.
Permissions-PolicyBestemmer, hvilke browserfunktioner din side og indlejrede frames må bruge, som kamera, mikrofon og placering.camera=(), microphone=(), geolocation=() slår de tre fra. Bruger din side en af de funktioner, så udelad den.
Content-Security-Policy (fuld)Begrænser, hvorfra scripts, styles og billeder må indlæses. Det gør indsatte ondsindede scripts (XSS) meget sværere.Skræddersyet til hver side. Undgå unsafe-inline, unsafe-eval og wildcards.

Opsætning i .htaccess

Sæt disse linjer øverst i filen .htaccess i mappen public_html for dit domæne. Tag først en kopi af filen.

<IfModule mod_headers.c>
  Header always set X-Content-Type-Options "nosniff"
  Header always set Content-Security-Policy "frame-ancestors 'self'"
  Header always set Referrer-Policy "strict-origin-when-cross-origin"
  Header always set Permissions-Policy "camera=(), microphone=(), geolocation=()"
  # Alleen als je site nog geen HSTS meestuurt (zie hierboven):
  # Header always set Strict-Transport-Security "max-age=31536000"
</IfModule>

Tilføj først includeSubDomains, når du er sikker på, at hvert subdomæne har https. Bruger du WordPress, kan du også opsætte headerne med et plugin. Vælg et kendt plugin, der stadig opdateres, og opsæt hver header ét sted: i pluginnet eller i .htaccess.

En fuld Content-Security-Policy kan ødelægge din side: en for streng regel blokerer for eksempel din statistik, din betalingsknap, en indlejret video eller dit chatvindue. Test den først med headeren Content-Security-Policy-Report-Only. Den blokerer intet, men viser i browserens konsol, hvad der ville blive blokeret. Er du i tvivl, så overlad det til din webudvikler, eller start kun med frame-ancestors.

På en VPS med nginx eller Caddy

På en VPS bruger du ikke DirectAdmin og ofte heller ikke .htaccess. Du sætter så headerne i din webservers indstillinger. Ingen af dem sender HSTS eller disse headers med af sig selv.

nginx: i server-blokken for port 443:

add_header Strict-Transport-Security "max-age=31536000" always;
add_header X-Content-Type-Options "nosniff" always;
add_header Content-Security-Policy "frame-ancestors 'self'" always;
add_header Referrer-Policy "strict-origin-when-cross-origin" always;

Med always sendes headerne også med på fejlsider. Bemærk: står der selv en add_header i en location-blok, gælder linjerne fra server-blokken ikke længere for den location. Gentag dem så der, eller sæt dem i en separat fil, som du indsætter overalt med include. Test indstillingerne med nginx -t, og indlæs dem med systemctl reload nginx.

Caddy: i blokken for din side i Caddyfile:

header {
	Strict-Transport-Security "max-age=31536000"
	X-Content-Type-Options "nosniff"
	Content-Security-Policy "frame-ancestors 'self'"
	Referrer-Policy "strict-origin-when-cross-origin"
}

Indlæs ændringen med systemctl reload caddy. Opsætning af en side med nginx eller Caddy finder du i nginx med et certifikat fra Let's Encrypt og Caddy: en hjemmeside med automatisk https i VPS-vejledningen.

Test

  • Internet.nl: indtast dit domæne i hjemmesidetesten på internet.nl.
  • Din browser: åbn din side, tryk på F12 (eller vælg Inspicer), gå til fanen Netværk, genindlæs siden, og klik på den første forespørgsel. Under Svarheadere (Response Headers) ser du alt, hvad din server sender med.
  • Kommandolinjen: curl -sI https://ditdomæne.nl/ viser headerne.

Tjek efter hver ændring, at din side, formularer og betalingsside stadig virker. Hold desuden dit CMS, plugins og temaer opdateret. Se Beskyt wp-login.php i WordPress.

Læs mere

Vil du lære mere? Tag det gratis kursus Sikker online for virksomheder, lektion 4.2 Din hjemmeside: https, HSTS og sikkerhedsheaders, eller det gratis WordPress-kursus, lektion 7.4 Gør siden mere sikker: rettigheder, headers og sikkerhedsplugins.

Var denne artikel nyttig?

← Tilbage til DirectAdmin og WebOkés kontrolpanel

Et øjeblik…

Opsæt dine domæner

Angiv for hvert domæne navneserverne, tilknytningen til din hosting, og hvem der bliver ejer.

Indlæser dine domæner…