Hoe beveilig ik een WordPress-site?
Een WordPress-site beveiligen
Doelstelling
WordPress is een van de meest gebruikte contentmanagementsystemen (CMS) voor het bouwen van een website. Doordat het wijdverspreid is (meer dan 40% van alle websites) en een heel ecosysteem van gratis en betaalde plugins en thema's heeft, kunnen er zwakke punten ontstaan. Deze kunnen worden misbruikt, met als gevolg diefstal van gegevens, corrumperen (wijziging van het uiterlijk van de site) of zelfs compleet stilleggen van de website.
Deze tutorial beschrijft een aantal acties die u snel kunt implementeren om uw WordPress-site te beveiligen.
Vereisten
- U moet beschikken over webhosting.
- Geïnstalleerd
- U moet de managementinterface kunnen gebruiken (via de gebruikersnaam en het wachtwoord die bij de installatie zijn verstrekt).
Aanpak
Wanneer moet u WordPress-updates toepassen?
Het is vooral belangrijk om altijd de nieuwste versies van uw CMS, uw thema en uw plugin(s) te gebruiken. Met updates kunnen eventuele beveiligingsfouten namelijk worden gecorrigeerd. Dit kunt u doen door de informatie te volgen die gedeeld wordt op de Nederlandstalige versie van de CMS-website en de databases te raadplegen die de beveiligingsproblemen opsommen, die in tools zijn gevonden. Een voorbeeld hiervan is de Exploit Database.
De regel is eenvoudig: pas een update toe, zodra deze op uw WordPress wordt getoond. Wist u dit? U kunt ook automatische updates van uw thema's en plugins activeren!
Belangrijk: controleer of u voldoende opslagruimte op uw server heeft, voordat u de updates toepast (er is minstens 1 GB nodig). Als uw opslagruimte vol raakt en u updates toepast, kan uw CMS deze mogelijk niet helemaal voltooien, wat ertoe kan leiden dat uw site onbeschikbaar wordt.
Zelfs als updates van uw thema's en plugins automatisch worden uitgevoerd, moet u in de gaten houden wanneer ze voor het laatst zijn bijgewerkt. Naast het risico van incompatibiliteit met een nieuwe versie van WordPress, kan een onderdeel dat enkele maanden niet is bijgewerkt, niet meer worden onderhouden en zijn er dus beveiligingsproblemen.
Hoe stel ik automatische updates van mijn WordPress-thema in?
De update van een thema automatiseren is eenvoudig. Klik in de linkerkolom van uw WordPress-dashboard op "Weergave" en vervolgens op "Thema's". Selecteer uw thema en klik op "Activeer automatische updates".

Hoe activeer ik automatische updates van mijn WordPress-plugins?
In de linkerkolom van uw WordPress-dashboard kunt u de automatische update van uw plugins instellen in de sectie "Plugins":

Waarom moet ik de PHP-versie van mijn hosting updaten?
Het is ook belangrijk om de nieuwste versie van PHP te gebruiken (mits uw geïnstalleerde thema's en plugins dit ondersteunen). Bij elke update worden een aantal prestatie- en beveiligingspatches uitgevoerd. Hier kunt u de versies van PHP bekijken, die nog ondersteund worden: https://www.php.net/supported-versions.php

Hieronder vindt u ook de aanbevolen configuratie van uw OVHcloud-hosting:
- Runtime-omgeving : Stable64
- PHP-versie: 8.1
- Engine: PHP
- Modus: Productie
- Webapplicatie-firewall: Gedeactiveerd
Als uw WordPress op een PHP-versie is geïnstalleerd en geconfigureerd die niet meer wordt onderhouden, moet u ervoor zorgen dat uw gebruikte plugins compatibel zijn met de nieuwe taalversie die u wenst in te stellen. Anders moet u mogelijk van plugin veranderen.
Hoe kan ik PHP updaten op mijn OVHcloud-hosting?
U kunt dit rechtstreeks vanuit uw OVHcloud Control Panel doen. Hieronder ziet u een schermafbeelding van de laatste stap van deze handeling. Hierbij kunt u de PHP-versie selecteren die u gebruiken wilt:

Belangrijk: uw WordPress-versie, de thema's en de plugins moeten beslist up-to-date zijn voordat u deze wijziging uitvoert.
Meer informatie in onze handleiding: https://docs.ovh.com/gb/en/hosting/modify_your_web_hosting_systems_runtime_environment/
Zijn er plugins om WordPress te beveiligen?
De WordPress-plugins in deze tutorial zijn het populairst. Ze worden regelmatig bijgewerkt en hebben hun diensten bewezen. Er zijn echter andere, even interessante en krachtige plugins die niet in de genoemde voorbeelden worden beschreven.
Hoe stel ik mijn WordPress volledig in op HTTPS?
"Really Simple SSL" detecteert automatisch uw instellingen en configureert uw website, zodat deze met HTTPS werkt (een protocol waar zoekmachines de voorkeur aan geven).
Belangrijk: u moet al een SSL-certificaat op uw hosting hebben geïnstalleerd en dit hebben geactiveerd. Heeft u geen SSL-certificaat? Raadpleeg onze handleiding voor de procedure:https://docs.ovh.com/gb/en/hosting/ssl-certificates-on-web-hosting-plans/
Klik in uw WordPress-dashboard op "Plugins" en vervolgens op "Nieuwe plugin". Voer "Really Simple SSL" in de zoekbalk in en klik op "Nu installeren". Wacht een paar seconden en klik op "Activeren".

Nu hoeft u alleen nog maar uw SSL-certificaat te activeren! Dat is heel simpel. Klik gewoon op de knop "SSL activeren" die dan verschijnt:

Het SSL-certificaat is nu standaard actief op uw website. U hoeft nu alleen nog enkele aanpassingen door te voeren, zoals het inschakelen van een 301-redirect via .htaccess:

Installeer vervolgens de aanbevolen beveiligingsheaders voor een HTTPS-verbinding door het .htaccess-bestand te bewerken via FileZilla.
U kunt dit ook doen met FTP Explorer: https://docs.ovh.com/gb/en/hosting/log-in-to-storage-ftp-web-hosting/#1-log-in-via-ftp-explorer
Nadat u bent ingelogd, klikt u met de rechtermuisknop op het .htaccess-bestand en klikt u vervolgens op "Weergeven/bewerken":

Nadat u het bestand heeft geopend in een teksteditor, kopieert en plakt u gewoon de volgende regels tekst aan het einde:
# Security Headers Header always set Strict-Transport-Security: "max-age=31536000" env=HTTPS Header always set Content-Security-Policy "upgrade-insecure-requests" Header always set X-Content-Type-Options "nosniff" Header always set X-XSS-Protection "1; mode=block" Header always set Expect-CT "max-age=7776000, enforce" Header always set Referrer-Policy: "no-referrer-when-downgrade" Header always set X-Frame-Options: "SAMEORIGIN" Header always set Permissions-Policy "geolocation=(); midi=();notifications=();push=();sync-xhr=();accelerometer=(); gyroscope=(); magnetometer=(); payment=(); camera=(); microphone=();usb=(); xr=();speaker=(self);vibrate=();fullscreen=(self);" # End Security Headers
Hiermee krijgt u het volgende resultaat in het bestand ".htaccess" in de hoofdmap van uw website:

Belangrijk: nadat u deze regels heeft gekopieerd, moet u niet vergeten het bestand op te slaan door te klikken op "Bestand" en vervolgens op "Opslaan". Ga vervolgens terug naar FileZilla om de pop-up te valideren met het verzoek het bestand naar de server te sturen. Anders worden uw wijzigingen niet doorgevoerd.
Hoe kunt u een tweede authenticatiefactor implementeren?
Gewoon een gebruikersnaam en wachtwoord gebruiken kan onvoldoende blijken te zijn voor een goede beveiliging. De zwakke punten zijn bekend: te eenvoudig wachtwoord, dat soms gedeeld wordt met andere accounts, niet vaak wordt vernieuwd of opgeslagen is op een niet-beveiligde plek. Zelfs als uw wachtwoord complex is, is het altijd mogelijk dat u het doelwit van een kwaadaardige aanval wordt, waarmee een hacker uiteindelijk zijn doel bereikt.
Door een authenticatieproces met twee factoren (2FA of Two Factor Authentication) te implementeren, verbetert u de beveiliging bij het inloggen in uw managementinterface. Het werkt eenvoudig: naast het traditionele gebruik van een gebruikersnaam en wachtwoord, wordt u ook gevraagd om authenticatie met een extra factor (code van beperkte duur, authenticatie via smartphone, SMS, passphrase). Zo beschermt en beveiligt u uw beheerderstoegang en voorkomt u dat de veiligheid van uw site in het geding komt.
Zelfs als een kwaadwillende gebruiker op de een of andere manier uw wachtwoord achterhaalt, zult u veilig kunnen blijven inloggen.
Voor deze 2FA-factoren kunt u de app Google Authenticator (of een vergelijkbare applicatie) gebruiken.
Wanneer u uw account maakt, wordt een QR-code op het scherm getoond. U hoeft dit alleen maar met uw smartphone te scannen met de Google Authenticator-app. Er verschijnt een nieuw item in uw app dat elke 30 seconden een andere code genereert (standaard 6 cijfers). U moet deze code invoeren bij de authenticatie via de beheerinterface.
Met een uitgebreide plugin kunt u meerdere authenticatiemogelijkheden voor uw site beheren; voor administrators, maar ook voor gebruikers met een gewoon account. De miniOrange-extensie van Google Authenticator is beschikbaar op: https://nl.wordpress.org/plugins/miniorange-2-factor-authentication/
U kunt tweefactorauthenticatie als volgt inschakelen voor uw administratoraccount (bruikbaar met een gratis account).
- Log in op de managementinterface met het administratoraccount.
- Klik op de plugin “miniOrange 2-Factor”.

- Klik op "Instellen" onder de authenticatiemethode "Google Authenticator".

- Selecteer tijdens de eerste stap van het configuratieproces de applicatie die u op uw smartphone wilt gebruiken om de cijferreeks te genereren. Nadat u de methode heeft geselecteerd, scant u de QR-code met uw smartphone met de Google Authenticator-app.
![La sécurité sous WordPress [12]](/sites/default/files/styles/text_media/public/2023-03/La%20s%C3%A9curit%C3%A9%20sous%20WordPress%20%5B12%5D.png)
- Geef dit een naam en ga verder met stap 2 van de verificatie door de code in te voeren die door uw mobiele app wordt gegenereerd.
- Als de handeling gelukt is, zult u in een venster de bevestiging zien dat het inloggen op uw account nu via 2FA verloopt.
Hoe meet u de gezondheid van uw website?
Selecteer in de linkerkolom van uw WordPress-dashboard "Gereedschap" en klik op "Sitediagnose". Dit onderdeel is geen plugin. Het is standaard ingebouwd in WordPress. Het kan u waarschuwen voor prestatieproblemen of voor problemen met de beveiliging van uw website.
![La sécurité sous WordPress [14]](/sites/default/files/styles/text_media/public/2023-03/La%20s%C3%A9curit%C3%A9%20sous%20WordPress%20%5B14%5D.png)
U kunt uw beveiligingsheaders ook testen op: https://securityheaders.com/
![La sécurité sous WordPress [15]](/sites/default/files/styles/text_media/public/2023-03/La%20s%C3%A9curit%C3%A9%20sous%20WordPress%20%5B15%5D.png)
Hoe configureer ik Wordfence voor mijn WordPress-site?
Wordfence bevat een firewall en een malware-scanner die alleen maar tot doel hebben WordPress te beschermen.
![La sécurité sous WordPress [16]](/sites/default/files/styles/text_media/public/2023-03/La%20s%C3%A9curit%C3%A9%20sous%20WordPress%20%5B16%5D.png)
Nadat u op "Activeren" heeft geklikt, moet u uw plugin registreren. Als u geen Wordfence-account heeft, klikt u op "Get Your Wordfence Licence". U wordt dan omgeleid naar de website van de maker van de plugin om uw account te creëren:
![La sécurité sous WordPress [17]](/sites/default/files/styles/text_media/public/2023-03/La%20s%C3%A9curit%C3%A9%20sous%20WordPress%20%5B17%5D.png)
Kies op de website van het softwarebedrijf de versie "Free". Klik vervolgens op "Get a Free Licence". Er wordt een modaal venster geopend, klik op "I'm OK waiting 30 days for protection from new threats":
![La sécurité sous WordPress [18]](/sites/default/files/styles/text_media/public/2023-03/La%20s%C3%A9curit%C3%A9%20sous%20WordPress%20%5B18%5D.png)
Vervolgens verschijnt er een nieuw modaal venster met de URL van uw WordPress-site. Voer uw e-mailadres in en vink het selectievakje aan om de gebruikersovereenkomst te accepteren:
![La sécurité sous WordPress [19]](/sites/default/files/styles/text_media/public/2023-03/La%20s%C3%A9curit%C3%A9%20sous%20WordPress%20%5B19%5D.png)
Er wordt een mededeling getoond dat er een e-mail is verstuurd:
![La sécurité sous WordPress [20]](/sites/default/files/styles/text_media/public/2023-03/La%20s%C3%A9curit%C3%A9%20sous%20WordPress%20%5B20%5D.png)
Open deze en klik op de link om het creëren van uw account af te maken (de link stuurt u rechtstreeks naar de managementinterface van WordPress). U kunt vervolgens de licentiecode in de formulieren valideren:
![La sécurité sous WordPress [21]](/sites/default/files/styles/text_media/public/2023-03/La%20s%C3%A9curit%C3%A9%20sous%20WordPress%20%5B21%5D.png)
U kunt dit ook handmatig doen door de code te kopiëren in de e-mailbevestiging.
De firewall, ook wel Web Application Firewall (WAF) genoemd, schakelt over naar de leermodus. Deze stap kan enkele tientallen minuten duren.
Ondertussen klikt u op "Klik hier om te configureren".
![La sécurité sous WordPress [22]](/sites/default/files/styles/text_media/public/2023-03/La%20s%C3%A9curit%C3%A9%20sous%20WordPress%20%5B22%5D.png)
![La sécurité sous WordPress [23]](/sites/default/files/styles/text_media/public/2023-03/La%20s%C3%A9curit%C3%A9%20sous%20WordPress%20%5B23%5D.png)
Download de back-up van uw .htaccess-bestand op uw computer en klik op "Doorgaan".
![La sécurité sous WordPress [24]](/sites/default/files/styles/text_media/public/2023-03/La%20s%C3%A9curit%C3%A9%20sous%20WordPress%20%5B24%5D.png)
Hoe optimaliseer ik de instellingen om mijn site tegen brute force-aanvallen te beschermen?
Klik in de sectie "Firewall" in de linkerkolom van uw dashboard op "Manage firewall".
![La sécurité sous WordPress [25]](/sites/default/files/styles/text_media/public/2023-03/La%20s%C3%A9curit%C3%A9%20sous%20WordPress%20%5B25%5D.png)
Klik vervolgens op "Manage Firewall" en vervolgens op "Brute Force Protection" (onderaan de nieuwe pagina).
![La sécurité sous WordPress [26]](/sites/default/files/styles/text_media/public/2023-03/La%20s%C3%A9curit%C3%A9%20sous%20WordPress%20%5B26%5D.png)
Dit zijn de beste instellingen:
- Lock out after how many login failures (maximaal aantal mislukte inlogpogingen voordat de websitebezoeker wordt geblokkeerd): 2.
We raden aan een wachtwoordmanager te gebruiken. - Lock out after how many forgot password attempts (maximaal aantal pogingen om het wachtwoord opnieuw in te stellen voordat de gebruiker wordt geblokkeerd): 2.
- Amount of time a user is locked out (tijd dat de gebruiker wordt geblokkeerd): 2 months (2 maanden).
- Immediately lock out invalid usernames (gebruikers die verbinding leggen met een niet-bestaande WordPress-gebruikersnaam worden direct geblokkeerd).
![La sécurité sous WordPress [27]](/sites/default/files/styles/text_media/public/2023-03/La%20s%C3%A9curit%C3%A9%20sous%20WordPress%20%5B27%5D.png)
Als u per ongeluk zelf geblokkeerd wordt bij het inloggen op uw dashboard, dan wordt er een e-mail gestuurd naar het adres dat u in Wordfence heeft opgegeven. Met deze e-mail kunt u de blokkade beëindigen en opnieuw proberen in te loggen.
Als u een soortgelijke bescherming voor uw websites (anders dan WordPress) nodig heeft, is hier een link met de functies van onze optie “CDN Security”.
Tot slot: dit zijn de best practices die u onthouden moet
- Houd uw CMS, uw plugins en uw thema's up-to-date.
- Stel WordPress zo in dat deze updates automatisch gebeuren.
- Zorg ervoor dat alle pagina's opgevraagd worden via TLS/SSL en dat uw certificaat geldig is.
- Implementeer een tweede authenticatiefactor voor kritieke accounts.
- Controleer regelmatig de gezondheid van uw website.