Inleiding
In dit artikel gaan wij u stap voor stap uitleggen hoe u uw WordPress-site meer kan beveiligen en aanvallen kan beperken en zelfs voorkomen.
We hebben in dit artikel een test WordPress-site gemaakt om u zo goed mogelijk uit te leggen hoe u dit plug-in kunt instellen in de backend van uw website/webwinkel.
HTTP Headers: Wat is zo belangrijk om http headers toe te voegen aan mijn website?
Het is belangrijk om HTTP (Security) headers toe te passen aan uw WordPress-site. Het voegt een extra beschermingslaag tegen kwaadwillenden (hackers). Lees meer ons artikel.
Belangrijk: maak eerst een back-up van uw WordPress-site
Wij raden u aan om eerst handmatig back-up te maken van uw website. Voor onze klanten: weet u niet hoe u handmatig een back-up kunt maken? Lees dit artikel: Handmatig back-ups maken met DirectAdmin
Bent u geen klant bij ons en gebruikt u geen DirectAdmin? Informeer bij uw eigen hostingprovider.
Let op, om gebruik te maken van HTTP Security Headers moet er een SSL certificaat geforceerd zijn op uw WordPress-site.
Inloggen in de backend van uw WordPress-site
U vult uw gebruikersnaam of emailadres in en vervolgens het bijbehorende wachtwoord.
Werkt uw gebruikersnaam met bijbehorende wachtwoord niet meer? Lees dit kb-artikel: Gebruikersnaam of wachtwoord werken niet meer [WordPress]
Uw dashboard van WordPress-site
Links van uw scherm gaat u naar “Plugins” en drukt daarop. Dan komt u uit op de WordPress Plugin Repository.
WordPress Plugin Repository: plugin downloaden en installeren
Rechtsbovenin ziet u het zoekveld Trefwoord “Plugins zoeken” typt u het volgende in het zoekveld: ‘HTTP headers‘ en binnen enkele minuten komt zoekresultaten te voorschijn.
Plugin gevonden: HTTP Header downloaden en vervolgens activeren
(In ons voorbeeld is de plug-in al actief)
Druk op Nu Installeren
Druk op Activeren. HTTP Headers plugin wordt vervolgens geïnstalleerd. Even geduld.
Dan gaat u in de dashboard van uw WordPress-site naar “Instellingen” en vervolgens klikt u op: HTTP Headers. U ziet dan het volgende scherm.
Dashboard: HTTP Headers onderdelen headoverview
U ziet knoppen met onderdelen om in te stellen van HTTP Headers. U klikt vervolgens op ‘Security‘-onderdeel en dan ziet u het volgende scherm.
HTTP Headers -> Security Setup.
We gaan alle onderdelen langslopen en instellen. Op dit moment staat alles op ‘off‘. Bij elk onderdeel klikt u op ‘edit‘ om elk http headers aan te passen.
HTTP Headers -> Security set-up (1): X-Frame-Options
In X-Frame-Options stelt u het volgende in:
Zet deze optie op ‘On‘ en vervolgens kiest u ‘SAMEORIGIN‘. Vervolgens drukt u op ‘Wijzigingen opslaan‘ om de instellingen op te slaan. Vervolgens gaat u terug naar ‘security’. Vanuit hier gaat u naar de volgend onderdeel van HTTP Headers | Security.
HTTP Headers -> Security set-up (2): X-XSS-Protection
In X-XSS-Protection stelt u het volgende in:
Zet deze optie op ‘On‘ en vervolgens kiest u op ‘1; mode=block‘. Vervolgens drukt u op ‘Wijzigingen opslaan‘ om de instellingen op te slaan. Vervolgens gaat u terug naar ‘security‘. Vanuit hier gaat u naar de volgend onderdeel van HTTP Headers | Security.
HTTP Headers -> Security set-up (3): X-Content-Type-Options
In X-Content-Type-Options stelt u het volgende in:
Zet deze optie op ‘On‘ en vervolgens kiest u op ‘nosniff‘. Vervolgens drukt u op ‘Wijzigingen opslaan‘ om de instellingen op te slaan. Vervolgens gaat u terug naar ‘security‘. Vanuit hier gaat u naar de volgend onderdeel van HTTP Headers | Security.
HTTP Headers -> Security set-up (4): Strict-Transport-Security
In Strict-Transport-Security stelt u het volgende in:
Zet deze optie op ‘On‘ en vervolgens kiest u op ‘1 year‘ en vervolgens vinkt u ‘IncludeSubDomains‘ aan. Vervolgens drukt u op ‘Wijzigingen opslaan‘ om de instellingen op te slaan. Vervolgens gaat u terug naar ‘security‘. Vanuit hier gaat u naar de volgend onderdeel van HTTP Headers | Security.
HTTP Headers -> Security set-up (5): Public-Key-Pins
In Public-Key-Pins stelt u het volgende in:
Zet deze optie op ‘On‘ en vervolgens kiest u op ‘1 year‘ en vervolgens vinkt u ‘IncludeSubDomains‘ en ook ‘Report Only’ aan. Vervolgens drukt u op ‘Wijzigingen opslaan‘ om de instellingen op te slaan. Vervolgens gaat u terug naar ‘security‘. Vanuit hier gaat u naar de volgend onderdeel van HTTP Headers | Security.
HTTP Headers -> Security set-up (6): Referrer-Policy
In Referrer-Policy stelt u het volgende in:
Zet deze optie op ‘On‘ en vervolgens kiest u op ‘no-referrer‘ of ‘no-referrer-when-downgrade‘. Vervolgens drukt u op ‘Wijzigingen opslaan‘ om de instellingen op te slaan. Vervolgens gaat u terug naar ‘security‘. Vanuit hier gaat u naar de volgend onderdeel van HTTP Headers | Security.
HTTP Headers -> Security set-up (6): Content-Security-Policy
In Content-Security-Policy stelt u het volgende in:
Vink ‘On‘ en ‘Report-Only‘ aan en vervolgens vink de volgende willekeurig aan in de basis-setup aan de rechterkant:
default-src 'none'; script-src 'self'; connect-src 'self'; img-src 'self'; style-src 'self';
Vervolgens drukt u op ‘Wijzigingen opslaan‘ om de instellingen op te slaan. Vervolgens gaat u terug naar ‘security‘. Vanuit hier gaat u naar de volgend onderdeel van HTTP Headers | Security. In het hoofdoverzicht van alle HTTP Security Headers ziet u het volgende:
Opmerking: we hebben het Content-Security-Policy een basis set-up gegeven (zie het bovenstaande voorbeeld), omdat deze ingewikkelder zijn in te stellen en uw site zou niet goed meer kunnen werken. Maar deze zijn voldoende om uw WordPress-beveiliging te verharden.
HTTP Headers -> Security set-up (7): Cookie security
In Cookie Security stelt u het volgende in:
Zet deze optie op ‘On‘ en vervolgens kiest u op ‘Secure‘. Vervolgens drukt u op ‘Wijzigingen opslaan‘ om de instellingen op te slaan. Vervolgens gaat u terug naar ‘security‘. Vanuit hier gaat u naar de volgend onderdeel van HTTP Headers | Security.
HTTP Headers -> Security set-up (8): Expect CT
In Expect CT stelt u het volgende in:
Zet deze optie op ‘On‘ en vervolgens kiest u bij max-age: ‘1 year‘ en vinkt u ‘enforce‘ aan. Vervolgens drukt u op ‘Wijzigingen opslaan‘ om de instellingen op te slaan. Vervolgens gaat u terug naar ‘security‘. Vanuit hier gaat u naar de volgend onderdeel van HTTP Headers | Security.
HTTP Headers -> Security set-up (9): X-DNS-Prefetch-Control
In X-DNS-Prefetch-Control stelt u het volgende in:
Zet deze optie op ‘On‘ en vervolgens kiest u weer op ‘on‘. Vervolgens drukt u op ‘Wijzigingen opslaan‘ om de instellingen op te slaan. Vervolgens gaat u terug naar ‘security‘. Vanuit hier gaat u naar de volgend onderdeel van HTTP Headers | Security.
HTTP Headers -> Security set-up (10): X-Download-Options
In X-Download-Options stelt u het volgende in:
Zet deze optie op ‘On‘ en vervolgens kiest u weer op ‘noopen‘. Vervolgens drukt u op ‘Wijzigingen opslaan‘ om de instellingen op te slaan. Vervolgens gaat u terug naar ‘security‘. Vanuit hier gaat u naar de volgend onderdeel van HTTP Headers | Security.
HTTP Headers -> Security set-up (11): X-Permitted-Cross-Domain-Policies
In X-Permitted-Cross-Domain-Policies stelt u het volgende in:
Zet deze optie op ‘On‘ en vervolgens kiest u weer op ‘all‘. Vervolgens drukt u op ‘Wijzigingen opslaan‘ om de instellingen op te slaan. Vervolgens gaat u terug naar ‘security‘. Vanuit hier gaat u naar de volgend onderdeel van HTTP Headers | Security.
U slaat Report-To over.
HTTP Headers -> Security set-up (12): Feature-Policy

(Feature-Policy) Resultaat alles op ‘self’.
In Feature-Policy stelt u het volgende in:
Zet deze optie op ‘On‘ en vervolgens zet u alles op ‘self‘ (zoals boven aangegeven) of een ander optie is stel alles op ‘none‘. Vervolgens drukt u op ‘Wijzigingen opslaan‘ om de instellingen op te slaan. Vervolgens gaat u terug naar ‘security‘. Vanuit hier gaat u naar de volgend onderdeel van HTTP Headers | Security.
HTTP Headers -> Security set-up (13): Clear-Site-Data
In Clear-Site-Data stelt u het volgende in:
Zet deze optie op ‘On‘ en en vink vervolgens alles aan. Vervolgens drukt u op ‘Wijzigingen opslaan‘ om de instellingen op te slaan. Vervolgens gaat u terug naar ‘security‘. Vanuit hier gaat u naar de volgend onderdeel van HTTP Headers | Security.
HTTP Headers -> Security set-up (14): Alle onderdelen staan op groen/one.
Als u alle HTTP Security Headers heeft doorlopen, dan staat alles op groen/on en u bent klaar instellen in de Security kader.
HTTP Security controleren (15): Externe website
Ga vervolgens op https://www.securityheaders.com en typ het volledige adres van uw website (https://www.mijnwebsite.nl) en zorg dat u de volgende opties aanvinkt: Hide results en Follow redirects. Zie het onderstaande screenshot:
HTTP Security controleren (16): Externe website – resultaat
Op de website van securityheaders.com ziet u de resultaten van de http security headers. Een voorbeeld van zo’n resultaat ziet u onder hier:
We hebben het Content-Security-Policy een basis set-up gegeven (zie het bovenstaande voorbeeld), omdat Content-Security-Policy ingewikkelder zijn in te stellen en uw WordPress-site zou niet goed meer (kunnen) werken. Maar deze basis set-up die wij hebben doorgevoerd is voldoende om uw WordPress-beveiliging te verharden.
Extra ondersteuning nodig?
Komt u nog steeds niet uit? U kunt gebruik maken van onze additionele dienst Website Beheer & Ondersteuning, kijkt u hier voor meer informatie op onze website. Wij helpen u graag met het instellen van deze plug-in.