Je WordPress-site beveilig je in de kern met vier dingen: automatische updates van WordPress, thema en plugins; een uniek wachtwoord uit een wachtwoordmanager voor elk account; tweestapsverificatie op je beheerders- en hostingaccount; en een limiet op het aantal inlogpogingen. Daarna volgen zeven maatregelen die het gaatje dichten dat overblijft.
Dat dit werkt heeft een simpele reden: de meeste gehackte sites die ik tegenkom zijn geen slachtoffer van een gerichte aanval, maar van een geautomatiseerde scan die toevallig een bekend lek vond. Je hoeft dus geen beveiligingsspecialist te zijn om buiten schot te blijven.
1. Houd alles automatisch bijgewerkt
Achterstallige updates zijn ingang nummer één. Zodra er een lek in een populaire plugin bekend wordt, gaan aanvallers het hele internet langs op zoek naar sites die die versie nog draaien — vaak binnen een dag. Handmatig updaten betekent in de praktijk: te laat.
Zet automatische updates aan voor WordPress zelf, je thema en al je plugins. De veelgehoorde angst dat een update je site sloopt is terecht maar oplosbaar: dat regel je met een back-up en een testomgeving, niet door updates uit te stellen. Hoe je dat opzet lees je in WordPress veilig up-to-date houden.
2. Gebruik overal een uniek wachtwoord uit een wachtwoordmanager
Eén wachtwoord dat je overal gebruikt, is precies zo veilig als de slechtst beveiligde site waar je het hebt ingevoerd. Lekt die, dan proberen aanvallers dezelfde combinatie op honderden andere diensten — en dat gaat volledig automatisch.
Gebruik een wachtwoordmanager en laat die lange, willekeurige wachtwoorden genereren voor je WordPress-beheerders, je hostingpaneel, je FTP-accounts en je e-mail. Onthouden hoeft niet meer, dus er is geen reden om te bezuinigen op lengte.
3. Zet tweestapsverificatie aan op je beheerdersaccounts
Met tweestapsverificatie heeft iemand met alleen je wachtwoord nog steeds niets. Voor WordPress regel je dit met een plugin, en voor je hostingpaneel staat het vrijwel altijd al in de instellingen. Doe het in elk geval voor elk account met beheerdersrechten en voor je hostingaccount zelf — dat laatste is de hoofdsleutel.
4. Beperk het aantal inlogpogingen
De inlogpagina van WordPress ligt op een vaste plek, en dat weten aanvallers ook. Geautomatiseerde brute-force-aanvallen proberen duizenden wachtwoorden per uur. Beperk je het aantal pogingen per IP-adres, dan haal je de scherpste randjes van zo'n aanval af — helemaal dicht zit die route pas als ook xmlrpc.php is afgeschermd (daar kun je honderden wachtwoordpogingen in één verzoek doorheen duwen) en je hoster de IP's op firewallniveau bant. De aanvallen komen namelijk vanaf steeds wisselende adressen, dus een teller per IP is een goede tussenlaag en geen eindstation. Hoe je dat instelt staat in Brute-force-aanvallen op wp-login stoppen.
5. Verwijder alles wat je niet gebruikt
Elke plugin en elk thema is een stuk code van iemand anders op jouw site, en dus een mogelijke ingang. Een plugin die je niet gebruikt maar wel geïnstalleerd hebt staan, is een risico zonder enig voordeel — en let op: ook een gedeactiveerde plugin met een lek kan misbruikt worden.
Loop je lijst met plugins en thema's een keer per jaar door en verwijder alles wat je niet actief nodig hebt. Hetzelfde geldt voor oude WordPress-installaties in submappen, testomgevingen die je vergeten bent en die ene backup-map uit 2022.
6. Gebruik nooit gekraakte (nulled) plugins of thema's
Gratis versies van betaalde plugins en thema's, verspreid via downloadsites. Dit signaal is in de praktijk goed te herkennen aan het patroon: gekraakte versies van dezelfde populaire pakketten — formulierplugins, sliders, paginabouwers — duiken op tientallen niet-verwante sites tegelijk op, met exact dezelfde toevoeging in de code. Dat is geen toeval maar distributie: wie de gekraakte versie verspreidt, levert de achterdeur mee.
Kom je een nulled plugin tegen op een site die je overneemt, ga er dan van uit dat die site al besmet is en behandel hem ook zo. En let op de bijvangst: zo'n plugin krijgt geen updates, dus elk lek dat later in het origineel wordt gedicht blijft bij jou openstaan.
7. Geef iedereen de laagste rol die volstaat
Niet iedereen die iets op je site moet doen, hoeft beheerder te zijn. Iemand die alleen blogs schrijft, heeft genoeg aan Auteur of Redacteur. Hoe minder beheerdersaccounts, hoe kleiner de kans dat er via zo'n account wordt ingebroken.
Loop meteen ook je bestaande gebruikers na: oud-medewerkers, een bureau dat de site drie jaar geleden bouwde, of een testaccount uit de begintijd. Wat niet meer gebruikt wordt, gaat eruit.
8. Zorg dat je back-ups losstaan van je site
Een back-upplugin die zijn bestanden in wp-content bewaart, geeft je een vals gevoel van veiligheid: wie bij je site kan, kan ook bij die back-ups. En een besmette back-up terugzetten betekent gewoon opnieuw beginnen met dezelfde hack.
Zorg dat kopieën buiten je site worden bewaard, op een andere server, en bewaar er meerdere uit verschillende periodes. Veel hacks blijven maanden onopgemerkt — met alleen de back-up van gisteren heb je dan niets.
9. Houd ook je PHP-versie actueel
Beveiliging stopt niet bij WordPress. Draait je site op een PHP-versie die geen updates meer krijgt, dan blijven bekende lekken in de basis onder je site openstaan — hoe goed je WordPress ook bijhoudt. In je hostingpaneel zie je welke versie je gebruikt; is die verouderd, overleg dan met je hoster over het overstappen. Vraag daarbij of ze een testomgeving hebben, want een grote sprong kan oude plugins in de war brengen.
10. Beveilig je hostingaccount en je FTP-toegang
Veel inbraken lopen niet via WordPress maar via de deur ernaast. Gestolen FTP-wachtwoorden zijn een klassieker, zeker als ze zijn opgeslagen in een FTP-programma op een computer met malware. Gebruik SFTP in plaats van gewoon FTP, ruim accounts op die niemand meer gebruikt, en zet ook op je hostingpaneel tweestapsverificatie aan.
11. Controleer regelmatig of alles nog klopt
Beveiliging is geen eenmalige klus. Meld je site aan bij Google Search Console (gratis) zodat je bericht krijgt bij beveiligingsproblemen, en kijk elke paar maanden zelf even: staan er onbekende beheerders in je gebruikerslijst, staan er PHP-bestanden in je uploads-map, geeft site:jouwdomein.nl in Google nog steeds alleen je eigen pagina's? De volledige lijst met controles staat in 7 signalen dat je WordPress-site gehackt is.
Liever niet zelf bijhouden?
Deze elf punten zijn goed zelf te doen, maar ze moeten wel blijven gebeuren — en dat is in de praktijk het lastigste deel. Correcthosting neemt dat over met WordPress-onderhoud voor € 150 per jaar per website (excl. btw): elke nacht automatisch updates van WordPress, thema en plugins, malwarescans en back-ups op een aparte server. Gaat er toch iets mis, dan hoor je dat van ons in plaats van andersom.
Is het al misgegaan? Dan maakt Correcthosting je site schoon voor € 50 inclusief btw per website, meestal binnen een uur, en niet opgelost betekent niet betalen — elke dag van 08:00 tot middernacht bereikbaar via WhatsApp of op 06 - 23 98 14 43, ook in het weekend.
