WordPress hardening: zo beveilig je de installatie van je bedrijf
Wil je de WordPress-site beveiligen van je bedrijf, praktijk of stichting voordat een incident je daartoe dwingt? Met WordPress hardening verklein je het aanvalsoppervlak: minder overbodige rechten, minder blootgestelde bestanden en meer bruikbare sporen. Hieronder lees je wat voorrang heeft en wat je zelf regelt of bij je hostingprovider neerlegt.
Référenceur is een online marketingbureau uit België en Luxemburg. We helpen ondernemers om hun WordPress-installatie door te lichten en daarna te versterken, volledig op afstand en in overleg met hun hostingprovider.
Test de beveiliging van je WordPress-site: start hieronder meteen een eerste gratis scan met onze tool.
Eén voorwaarde staat niet ter discussie: een site die al is gehackt, maak je eerst schoon en pas daarna hard je hem. Vreemde redirects, pagina’s vol Aziatische tekens of een onbekende beheerder? Laat de malware dan eerst verwijderen en de sporen veiligstellen; op onze pagina over een gehackte WordPress-website lees je hoe dat werkt. Daarna sluit je de toegangen.
WordPress hardening: wat valt eronder?
Updates dichten bekende lekken. Hardening beperkt de schade als een lek nog niet is gedicht, als een wachtwoord is uitgelekt of als een plug-in niet meer wordt onderhouden.
De officiële documentatie Hardening WordPress deelt die maatregelen in lagen in: server, database, bestandssysteem, accounts en logging. Wij passen ze toe op de sites die je bij het mkb het vaakst ziet: visitekaartjessites van zzp’ers, reserveringssystemen in de horeca, WooCommerce-webwinkels en meertalige sites.
Verzamelt je organisatie persoonsgegevens via formulieren of klantaccounts? Dan sluiten deze instellingen ook aan bij artikel 32 van de AVG, dat passende technische en organisatorische maatregelen eist.
Drie dingen die je eerst regelt
Om te beginnen een volledige, gecontroleerde back-up: bestanden en database, opgeslagen buiten de server. Controleer ook of je die back-up echt kunt terugzetten.
Daarna, als dat kan, een testomgeving (staging): één verkeerd ingestelde header of bestandsrecht kan een reserveringsformulier of het afrekenproces in je webwinkel breken. Tot slot een overzicht van alle toegangen: wie heeft een beheerdersaccount, SFTP-toegang, toegang tot de database of tot het controlepaneel van de hostingprovider?
WordPress-site beveiligen: tien maatregelen op volgorde van prioriteit
Werk ze in deze volgorde af, van het risico dat het vaakst voorkomt naar het meest specifieke.

- Overal HTTPS: een geldig certificaat, een 301-redirect van HTTP naar HTTPS en https-adressen onder Instellingen > Algemeen. De constante
FORCE_SSL_ADMINdwingt versleuteling af voor het inloggen en het beheer. - Bestandsrechten: 755 voor mappen en 644 voor bestanden, zoals de WordPress-documentatie aanbeveelt, en
wp-config.phpop 440 of 400 als je hosting dat toelaat. - Bestandseditor uitgeschakeld met
DISALLOW_FILE_EDIT: wordt een beheerdersaccount gestolen, dan kan de inbreker thema’s en plug-ins niet meer vanuit het dashboard aanpassen. - Nieuwe keys en salts na elk incident of na het vertrek van een externe partij: bestaande sessiecookies worden ongeldig en iedereen moet opnieuw inloggen.
- Tweestapsverificatie (2FA) voor elke beheerder en winkelmanager. De WordPress-kern biedt die niet zelf: je regelt het met een betrouwbare plug-in of via een identiteitsprovider.
- Een limiet op inlogpogingen voor
wp-login.php, het liefst op server- of firewallniveau, enxmlrpc.phpuitgeschakeld als geen enkele toepassing het gebruikt. - Een webapplicatiefirewall (WAF) vóór de site of op de server, die kwaadaardige verzoeken tegenhoudt voordat ze WordPress bereiken.
- HTTP-beveiligingsheaders: HSTS,
X-Content-Type-Options: nosniff,Referrer-Policy,Permissions-Policyen daarna stap voor stap een CSP-beleid. - Grote schoonmaak: ongebruikte thema’s en plug-ins verwijderen (niet alleen uitschakelen), foutmeldingen op de live site uitzetten en accounts van oud-leveranciers opheffen.
- Sporen bewaren: toegangs- en foutlogs vasthouden, een melding krijgen zodra er een beheerder bijkomt en regelmatig de integriteit van de bestanden controleren.
Maatregel 1, 3 en 9 regel je voor een deel in wp-config.php, boven de regel ‘That’s all, stop editing!’:
define( 'DISALLOW_FILE_EDIT', true );
define( 'FORCE_SSL_ADMIN', true );
define( 'WP_DEBUG', false );
define( 'WP_DEBUG_DISPLAY', false );
De constante DISALLOW_FILE_MODS gaat verder: die blokkeert ook het installeren en bijwerken van plug-ins vanuit het beheer. Gebruik die alleen op sites waar de updates via WP-CLI of een geautomatiseerde deployment lopen.
Inloggen, firewall en headers: de lastige instellingen
Het OWASP-overzicht van HTTP-headers is het naslagwerk: nosniff, een referrerbeleid strict-origin-when-cross-origin en de CSP-richtlijn frame-ancestors, zodat je pagina’s niet in een extern frame kunnen worden getoond. OWASP raadt af om nog op de oude header X-XSS-Protection te vertrouwen.
Wees voorzichtig met HSTS: zodra de browser die header heeft ontvangen, weigert hij HTTP gedurende de hele opgegeven periode. Zet HSTS dus pas aan als het hele domein via HTTPS werkt, inclusief subdomeinen als je includeSubDomains gebruikt.
Voor het inloggen raadt de WordPress-documentatie over brute-force-aanvallen aan om aanvallen zo dicht mogelijk bij het netwerk te blokkeren, omdat een PHP-plug-in bij elke poging serverkracht verbruikt.
Wat je hostingprovider moet kunnen waarmaken
Een deel van de hardening ligt buiten WordPress. Ten eerste de PHP-versie: volgens php.net krijgen versie 8.4 en 8.5 actieve ondersteuning, ontvangt 8.3 alleen nog beveiligingsupdates en bereikt 8.2 op 31 december 2026 het einde van de levensduur. Plan een overstap dus tijdig en test die eerst op een kopie.
Ten tweede de scheiding per site: elke site een eigen systeemgebruiker, een eigen database en eigen inloggegevens. Vijf sites in hetzelfde FTP-account betekent vijf deuren naar de andere sites.
Ten derde toegang en kopieën: SFTP in plaats van FTP, een databasegebruiker met beperkte rechten, back-ups buiten de server en toegang tot je logbestanden. Hosting in Nederland of elders in de Europese Unie voorkomt vragen over doorgifte buiten de EU, maar ontslaat je niet van de plicht om deze punten schriftelijk na te vragen.
Taakverdeling: wie doet wat?
| Onderdeel | Zelf te doen | Te eisen van hostingprovider of leverancier |
|---|---|---|
| Versleuteling en HSTS | De https-adressen controleren onder Instellingen > Algemeen | Certificaat verlengd, 301-redirect, HSTS voorzichtig ingeschakeld |
| wp-config.php en bestanden | DISALLOW_FILE_EDIT toevoegen, keys vernieuwen | Rechten 755/644, wp-config.php op 440 of 400 |
| Gebruikers | Slapende accounts verwijderen, 2FA inschakelen | SFTP- en databasetoegang van vroegere partijen intrekken |
| Inloggen en firewall | Lange wachtwoorden in een wachtwoordmanager | Limiet op wp-login.php, WAF, xmlrpc.php dicht |
| Server en PHP | De versie aflezen onder Gereedschap > Sitegezondheid | Ondersteunde PHP-versie, elke site afgeschermd |
| Sporen en kopieën | Een restore testen op een kopie | Logs bewaard, back-ups buiten de server |
Houd deze tabel bij de hand als je weer contact hebt met je hostingprovider. Elke afgevinkte regel is een concrete stap om je WordPress-site te beveiligen zonder van één partij afhankelijk te zijn.
Een inbraak opmerken vóór je klanten dat doen
Ook een geharde site blijft kwetsbaar. Waar het om draait, is dat je snel merkt wanneer er iets verandert. Biedt je hosting WP-CLI? Dan vergelijken deze officiële commando’s je bestanden met de gepubliceerde versies en tonen ze alle beheerders:
wp core verify-checksums
wp plugin verify-checksums --all
wp user list --role=administrator
Een gewijzigd kernbestand, een onbekende beheerder of een PHP-bestand in wp-content/uploads is reden voor direct onderzoek. Koppel daarnaast Google Search Console voor de meldingen en gebruik de gratis beveiligingsscan op deze pagina als eerste controle van buitenaf.
Fouten die al het werk tenietdoen
De duurste fout: een ‘nulled’ thema of plug-in installeren, dus een illegale kopie waarvan de licentiecontrole is verwijderd. Die aangepaste code bevat vaak precies de achterdeur die je probeert te sluiten.
Andere valkuilen: een back-up terugzetten die zelf al besmet is, of wachtwoorden per e-mail versturen en ze daarna nooit wijzigen. Hardening heeft alleen zin met regelmatig onderhoud: updates, een controle van de accounts, een testrestore en het lezen van de logs.
Volledige begeleiding via videogesprekken
We hoeven niet langs te komen om je site te harden, en dat is juist een voordeel. In een kick-off via video brengen we de plug-ins, accounts en hosting in kaart. Daarna voeren we elke instelling uit terwijl je via schermdelen meekijkt.
Je houdt zelf de regie: we werken met een tijdelijk account op naam, daarna krijg je een opgenomen training en een maandelijks overleg.
Is je site al getroffen? Dan helpen we je met het herstel van je gehackte WordPress-website. Wil je liever opnieuw beginnen op een schone basis? Bekijk dan hoe we een website laten maken aanpakken.
WordPress-site beveiligen: antwoorden op veelgestelde vragen
Zorgt mijn hostingprovider niet al voor de beveiliging?
Slechts gedeeltelijk. De hostingprovider beschermt de infrastructuur, maar je plug-ins, accounts en wachtwoorden blijven jouw verantwoordelijkheid. Vraag schriftelijk wat zijn pakket dekt: scheiding van sites, back-ups, firewall en logs. De rest van de hardening regel je met je webbouwer, aan de hand van de tabel hierboven.
Is een site in drie talen moeilijker te beschermen?
Niet wezenlijk, maar zo’n site heeft vaak meer plug-ins (vertaling, formulieren per taal) en meer gebruikers. Elke extra plug-in moet worden onderhouden en elke vertaler hoort een eigen account op naam te hebben, met een beperkte rol. Controleer ook of alle taaldomeinen en -subdomeinen via HTTPS werken voordat je HSTS aanzet.
Houdt DISALLOW_FILE_EDIT een hacker tegen?
Nee, deze constante sluit maar één deur: code aanpassen vanuit het dashboard. Via een kwetsbare plug-in kan iemand nog steeds een kwaadaardig bestand plaatsen. Wil je je site blijvend beveiligen, dan komt deze instelling bovenop updates, tweestapsverificatie, een webapplicatiefirewall en integriteitscontrole, en vervangt ze die nooit.
Verplicht de AVG me om mijn site te harden?
De AVG noemt geen WordPress-instellingen, maar artikel 32 vraagt wel om technische en organisatorische maatregelen die passen bij het risico. Een site met formulieren, inschrijvingen of klantaccounts valt daaronder. Lekken er bij een incident persoonsgegevens uit, dan geldt de meldplicht datalekken: melden bij de Autoriteit Persoonsgegevens, in principe binnen 72 uur. Dit artikel is geen juridisch advies; raadpleeg bij twijfel een jurist.
Moet ik de inlogpagina wp-admin een andere naam geven?
Een ander inlogadres zorgt voor minder ruis van bots, maar is geen echte bescherming. De WordPress-documentatie geeft de voorkeur aan een limiet op inlogpogingen aan de serverkant, lange wachtwoorden en tweestapsverificatie. Pas je het adres toch aan, sla het dan op in je wachtwoordmanager, zodat je je eigen team niet buitensluit.
Vraagt een WooCommerce-webwinkel om extra maatregelen?
Ja, want een webwinkel bewaart adressen, bestellingen en klantaccounts. Zet 2FA aan voor elke beheerder, geef de rol ‘Winkelmanager’ alleen aan wie die echt nodig heeft, bewaar de logs en houd de betaalplug-ins bijgewerkt. Na elke nieuwe module loop je de hardening van de winkel opnieuw na.
Hoe vaak moet ik de configuratie nalopen?
Een maandelijkse controle volstaat voor de meeste mkb-bedrijven en zzp’ers: updates, accounts, logs en een testrestore. Kijk alles ook opnieuw na als je van hostingprovider of webbouwer wisselt. Is een site te oud om nog op te schonen, dan is opnieuw bouwen op een schone basis soms veiliger dan het zoveelste lapmiddel.
Twijfel je over de staat van je site? Start een gratis beveiligingsscan van je WordPress-site:
Référenceur is een online marketingbureau uit België en Luxemburg, met Nederlandse teksten die door native speakers worden geschreven en nagelezen. Twijfel je over de configuratie van je WordPress-site? Vraag een gratis analyse aan: in een videogesprek van 20 minuten bekijken we via schermdelen je installatie en bepalen we samen welke hardeningmaatregelen voorrang hebben.