15 Tips WordPress Website Beveiligen Tegen Hackers

Hoe beveilig ik mijn WordPress website op de juiste manier?

Hoe heb jij jouw WordPress website beveiligd? Op dit moment is 27% van alle website op het internet gemaakt met WordPress en daarmee het meest gebruikte Content Management System.

Aangezien WordPress ¼ marktaandeel bezit is het een zéér lucratief platform voor hackers.

Als je website eenmaal is gehackt kan dit hele vervelende gevolgen voor je hebben. De kans bestaat dat je website offline wordt gehaald door je webhost en is dan niet meer te bereiken. Óf verdwijnt uit de zoekresultaten van Google. Hoeveel potentiële klanten loop je hiermee mis? Wat is de uiteindelijke financiële schade?

Zeer waarschijnlijk moet er een expert aan te pas komen. Die zal onderzoek moeten doen, waarom en hoe de website is gehackt. De kans is groot dat de website schoongemaakt moet worden of er moet een nieuwe installatie plaats vinden. Dit brengt vaak hoge kosten met zich mee, is mijn ervaring. De kosten kunnen variëren van €250 – €500.

30 minuten investering

Waarom geen 30 minuten investering om even goed naar de beveiliging te kijken van je WordPress website? Oftewel, voorkom gewoon dat buitenstaanders toegang krijgen tot je WordPress website.

Met mijn 15 tips om je WordPress website te beveiligen ben je goed beschermd tegen aanvallen van buitenaf en is de kans zeer klein dat je gehackt wordt.

Zwakke plekken van WordPress

Om extra functionaliteit toe te voegen aan je WordPress website zijn er plugins beschikbaar. En nu komt het…. Wordfence heeft ontdekt dat het grootste deel van de zwakke plekken van WordPress veroorzaakt wordt door deze plugins. Hieronder, in de grafiek kun je zien dat de meeste hacks veroorzaakt wordt door WordPress plugins. 55.9% van alle hacks komt door een plugin. Op het moment van schrijven zijn er meer dan 43.500 plugins te downloaden via de WordPress directory of van externe partijen. Er wordt met grote zorg gekeken naar deze plugins, of ze wel compatible zijn met WordPress en de versie van WordPress waarmee je werkt. Maar toch zijn ze niet allemaal waterdicht.

beveiligingsmaatregelen voor je WordPress website

Controleer je website op zwakheden en mogelijke injecties van malware op de deze website van Sucuri.

Niet alleen plugins zijn het probleem. Zogenaamde Brute Force Attacks en zwakheden in de core bestanden van WordPress zijn een goede nummer 1 en 2 in de grafiek. Hackers proberen juist die zwakheden op te zoeken en proberen toegang te krijgen tot je WordPress installatie. Het blijft een kat en muisspel maar als je onderstaande 15 tips leest en uitvoert ben je voor 99% beveiligt tegen aanvallen van hackers.

  1. Update WordPress core, Thema’s en plugins.
  2. Zorg voor een veilige gebruikersnaam en wachtwoord.
  3. Maak gebruik van WordPress salts.
  4. Installeer een beveiligingplugin.
  5. Maak gebruik van SFTP.
  6. Gebruik de juiste bestandsrechten.
  7. Beveilig je Database goed.
  8. Hernoem de URL van je wp-admin.
  9. Beveilig wp-config.php.
  10. Installeer een SSL-certificaat.
  11. Zet XML-RPC uit.
  12. Zorg dat file editing uit staat.
  13. Verberg de WordPress versie.
  14. Alleen inloggen vanaf je eigen ip-adres.
  15. Installeer 2-factor authenticatie.

1. Update de WordPress core, thema’s & plugins

WordPress core

Regelmatig komt er een nieuwe versie uit van WordPress. Dit is zichtbaar in je Dashboard. Zorg dat je de update direct uitvoert.

wordpress-update

Het is niet voor niets dat er een nieuwe versie uitkomt. Soms bevat de “oudere versie” een aantal bugs of veiligheidslekken. Op de website van wpvulndb.com kun je een lijst bekijken met zwakke plekken in de verschillende WordPress versies. Vanaf WordPress 3.7 verschijnt er automatisch een melding in je Dashboard om WordPress te updaten. Je kunt natuurlijk ook de laatste versie van WordPress downloaden via de website van WordPress NL.

WordPress Thema’s

Thema’s kun je downloaden én installeren via de WordPress directory in je Dashboard onder Weergave >> Thema’s. Ik raad je aan alleen maar Thema’s te installeren via deze directory óf Thema’s te downloaden van vertrouwde uitgevers. Hieronder een lijst met gerenommeerde en bekende aanbieder:

Themeforest >>
StudioPress >>
Appthemes >>
Elegant Themes >>
MyThemeshop >>

wordpress-thema

WordPress plugins

Zoals eerder aangegeven, op dit moment zijn er meer dan 43.500 plugins verkrijgbaar. Voordat je een plugin installeert moet je echt het volgende doen:

Controleer of de plugin werkt en ge-update is met de versie van WordPress die je gebruikt;

Check hoeveel sterren de plugin heeft en lees de reviews. Je zal niet de eerste zijn die denkt een goede plugin gevonden te hebben en van een koude kermis thuis komt;

Update z.s.m. als er een nieuwere versie van de plugin uitkomt;

Ik gebruik vaak dezelfde plugins maar goed, het is maar net wat je nodig hebt natuurlijk. Laat je niet verleiden door te “verdrinken” in de wereld van plugins. Alleen een plugin gebruiken als het echt niet anders kan. Soms gebruik ik liever een functie die ik toevoeg aan de functions.php of de wp-config.php.

2. Kies een veilige gebruikersnaam en veilig wachtwoord

Laten we maar gelijk beginnen met het volgende: Gebruik nooit de gebruikersnaam admin, Admin, administrator, webmaster, de naam van je website of iets dergelijks. Dit zijn voor de hand liggende gebruikersnamen en worden door derden, hackers, vaak als eerste gebruikt om toegang te verkrijgen.

Hetzelfde geldt voor je wachtwoord. Ongeveer 8% van alle inbraken op een WordPress website is een gemakkelijk te raden wachtwoord de oorzaak van de hack. Als jij nu nog de standaard wachtwoorden gebruikt als “qwerty”, “123456”, of “welkom”, dan ben je niet goed bezig. Deze zijn namelijk simpel te achterhalen. Er zijn continu bots bezig om te proberen je wachtwoord te achterhalen. En laten we nu eerlijk zijn, voor deze wachtwoorden heb ik geen bot nodig.

Tip: Gebruik een combinatie van kleine & hoofdletters, leestekens en cijfers. Ik heb ongeveer 5 wachtwoorden die ik regelmatig vernieuw en die zien er als volgt uit: K8$d2A^n9Tm5*. Lastig te onthouden, maar dan heb je ook wat.

Er zijn ook oplossingen om het leven wat gemakkelijker te maken natuurlijk. Password managers als Dashlane of Zoho Vault zijn prima oplossingen én ze zijn gratis.

3. Maak gebruik van WordPress security keys

Maak gebruik van WordPress security keys om nog een extra versleuteling te geven aan je inloggegevens. Ga naar de volgende link: https://api.wordpress.org/secret-key/1.1/  en copy & paste de code in je wp-config.php. Je hoeft ze gelukkig niet zelf te verzinnen 😉 Op de onderstaande afbeelding kun je zien waar je de code moet plaatsen.

Vergeet niet de wp-config.php te uploaden naar de server.

WordPress website beveiligen

4. Installeer een beveiligingplugin

Om je WordPress website nóg beter te beveiligen zijn er een aantal goede plugins. De meeste zijn binnen een paar minuten geïnstalleerd en heb je zéker profijt van. Voor de meeste websites van mezelf en die van klanten gebruik ik Ithemes Security. Deze plugin neemt je veel werk uit handen zoals het toewijzen van de juiste bestandsrechten, wijzigen van je standaard database prefix, zorgt voor blokkeren van bots en het wijzigen van de wp-admin URL. Je moet natuurlijk wel weten wat je doet.

Een aantal alternatieven voor het beveiligen van je WordPress website:

Sucuri Security
Wordfence Security
All in one WordPress security & Firewall

5. Maak gebruik van SFTP

Om bestanden over te brengen van en naar je server gebruik je een File Transfer Protocol (FTP). Er zijn verschillende programma’s waarmee je dit kunt doen. Als je gebruikt maakt van een zogenaamde FTP cliënt, raad ik je aan om de “Safe” optie te gebruiken, SFTP (SSH File Transfer Protocol). Als je SFTP gebruikt is de verbinding namelijk altijd versleuteld. Zorg er wel voor dat je webhost de SSH optie ondersteund. Ik heb zelf zelf een reseller account bij Vimex Hosting en een VPS bij Versio Hosting. Deze 2 ondersteunen SSH prima.

Programma’s om een verbinding te maken met SFTP:

Filezilla;
WinSCP;
CoreFTP.

sftp-filezilla

6. Stel de juiste bestandsrechten in

Om je WordPress installatie te beschermen kun je rechten toewijzen aan mappen en bestanden. Dit noemen ze CHMOD (Change Mode). Deze rechten zorgen ervoor dat je mappen en bestanden kunt lezen, beschrijven en/of uitvoeren. Om het niet té technisch te maken het volgende. Als je niet de juiste rechten toewijst aan een map of bestand bestaat de kans dat er ongewenst toegang tot verkregen wordt door derden of je loopt de kans dat de website niet/ niet goed functioneert. Laat geen achterdeur open staan!

Uitleg over CHMOD:

CHMOD bestaat uit een eenvoudig systeem van 3 cijfers. De uitvoering bestaat uit letters.

Uitvoeren: X (Execute);
Schrijven: W (Write);
Lezen: R (Read).

0 – Geen toegang
1 – Alleen uitvoeren  (X – ‘execute’)
2 – Alleen schrijven (W – ‘write’)
3 – Schrijven en uitvoeren (WX)
4 – Alleen lezen (R – ‘read’)
5 – Lezen en uitvoeren (RX)
6 – Lezen en schrijven (RW)
7 – Volledige toegang; lezen/schrijven/uitvoeren (RWX)

Kijk eens naar onderstaande afbeelding. De map wp-admin heeft een CHMOD 755.

WordPress website beveiligen

Als je de rechten aan een bestand of map wilt toewijzen moet je de cijfers optellen bij elkaar.
Bijvoorbeeld uitvoeren en lezen, dan krijg je 1 + 4 = 5. Dus 5 staat voor uitvoeren en lezen, wat overeenkomt met de vorige tabel. Op deze manier zijn alle combinaties (1-7) te maken. Als een bestand dus ingesteld moet worden op  755, krijgen we het volgende:

Eigenaar: 7 (= 1 + 2 + 4)
Groep: 5 (= 1 + 4)
Overige:  5 (= 1 + 4) 

Lees meer over WordPress CHMOD.

7. Beveilig je Database correct

De database van je WordPress website is het brein van de gehele installatie. Je moet deze dus goed beveiligen. Wat ik je als eerste aanraad is de DB prefix te wijzigen. WordPress gebruikt standaard de volgende prefix: wp_. Wijzig deze in iets als j7S3d_. Hierna volgt nog de naam van de database zelf. Zoals je wellicht wel snapt is deze prefix vele malen lastiger te raden. De DB prefix kun je op verschillende manieren veranderen. Bij de installatie van WordPress vanaf Cpanel, PLesk of Directadmin wordt je de eerste mogelijkheid al geboden. Heb je dit nu niet gezien, open dan de wp.config en zoek naar de wp_. Verander dit nu in iets zoals ik hierboven heb aangegeven. Vergeet niet het bestand te uploaden via SFTP.

Er is nog een mogelijkheid en waarschijnlijk gemakkelijker als je niet zelf met een FTP cliënt wilt of kan werken. Het gaat via een plugin van Ithemes Security. Deze plugin gebruik ik bijna voor al mijn websites. Het biedt je de mogelijkheid om de DB prefix te wijzigen.

Je kunt ook de volgende plugins gebruiken. Het werkt net iets anders maar het resultaat is hetzelfde.

Sucuri Security
Change DB Prefix

Wat ik ook aanraad is, om de naam en username van je database zo lastig mogelijk te maken. Je kunt namelijk ook inloggen in je database en dat wil je natuurlijk goed beschermen. Meestal zijn de eerste karakters van je gebruikersnaam van je serverpanel ook de eerste karakters van je database. Soms kun je zelf kiezen voor een gebruikersnaam als je een hostingaccount aanmaakt. Soms wordt deze voor je gegenereerd.

Stel je voor, je hebt een website die hilaryclinton.com heet.

Voorbeeld:
Website: hilaryclinton.com
Gebruikersnaam: ilnaihtyc
Dan worden de inloggegevens van de database:

Database naam: ilnaihtycH7Asx
Database gebruikersnaam: ilnaihtycl2Bg0s

Hiervoor komt natuurlijk de database prefix die je eerder hebt ingesteld. Dan krijgt de WordPress database een naam als: j7S3d_ilnaihtycH7Asx

En als laatste mag een moeilijk te raden wachtwoord ook niet ontbreken natuurlijk!

8. Hernoem de wp-admin URL

WordPress heeft een standaard URL om in te loggen in de back-end van je website, het Dashboard. Je kunt in het admin gedeelte komen door naar de volgende URL te gaan: jouwwebsite.nl/wp-admin. Dit is dus altijd hetzelfde! Dat weten hackers ook. Sommige WordPress websites hebben last van tien tot honderden inlogpogingen per dag. Met de beveiligingplugins die ik eerder heb genoemd kun je dit dit aantal ook daadwerkelijk zien en monitoren. Sommigen hebben zelfs de optie om het ip-adres te blokkeren.

Zorg er gewoon voor dat je de wp-admin URL wijzigt. Je kunt diverse namen geven, bv “mijnlogin” of “bewerken” of “mijnbeheer”.

Het wijzigen van de wp-admin URL is voor mij één van de meest voor de hand liggende opties. Het voorkomt namelijk ongewenste bezoekers op de login pagina van WordPress.

wordpress wp-admin veranderen

Het wijzigen van de wp-admin URL kun je heel gemakkelijk doen met deze plugin:

WPS Hide Login

9. Beveilig wp-config.php

Het wp-config bestand is het brein in je WordPress website. Hét belangrijkste bestand van de gehele installatie en moet je dan ook goed beschermen. Zorg ervoor dat je onderstaande werkzaamheden uitvoert.

Voeg onderstaande code toe aan je .htaccess bestand. Deze vind je in de root van je installatie. Je kunt dit het beste doen door te werken met een FTP cliënt. Download de gehele website en open het .htaccess bestand. Copy & paste de code en upload het bestand weer.

<Files wp-config.php>
order allow,deny
deny from all
</Files>

10. Installeer een SSL Certificaat

Een SSL certificaat zorgt ervoor dat informatie tussen jouw website en de bezoeker versleutelt verzonden wordt. Het installeren van een SSL certificaat draagt in eerste instantie niets actiefs bij aan de beveiliging van je WordPress website. Echter, weet jij hoe, en waar je inloggegevens van WordPress heen gaan als je inlogt in je WordPress back-end? Ik niet.

Als je geen HTTPS verbinding hebt worden je inloggegevens die je normaal gesproken invoert als je inlogt, in klare tekst over het internet verzonden. Met een SSL certificaat niet. De gegevens worden versleuteld en de website ziet er ook nog eens vertrouwd uit. Mijn mening? Binnen 5 jaar ondersteunen browsers en Google geen websites meer zonder SSL certificaat. Wat denk jij?

Sinds kort heb ik besloten om elke website van een klant op te leveren met een SSL certificaat.

WordPress website beveiligen

Heb je een SSL certificaat geïnstalleerd? Voeg onderstaande code toe in je wp.config.php.

define('FORCE_SSL_ADMIN', true);

11. Zet XML-RPC uit

XML-RPC is een standaard functie in WordPress. Het is een communicatiemiddel die ervoor kan zorgen dat externe applicaties kunnen communiceren met jouw website. Als voorbeeld kun je denken aan het plaatsen van nieuwe content via een mobiele app.

Om eerlijk te zijn, ik werk al 8 jaar met WordPress en heb deze functie nog nooit gebruikt. Nog niet zolang geleden heeft WordPress flink last gehad van de XML-RPC functie. Wereldwijd zijn er Brute Force Attacks geweest door XML-RPC. Je kunt dit beter uitzetten dus.

Download en installeer de Disable XML-RPC plugin.

Als je liever geen plugin gebruikt, wat ik me voor kan stellen, copy & paste onderstaande code dan in je .htaccess bestand. Wijzig het ip-adres in je eigen ip.

## block any attempted XML-RPC requests
<Files xmlrpc.php>
order deny,allow
deny from all
allow from 123.123.123.123
</Files>

12. Zorg dat File Editing uit staat

editor-wordpress

In het dashboard van WordPress heb je standaard de mogelijkheid om bepaalde bestanden te wijzigen. Ik heb het hier dan over de code van de WordPress bestanden. Als iemand toegang heeft weten te verschaffen tot de back-end van jouw WordPress website, is hij vrij om deze bestanden te wijzigen of er ongewenste code in te plaatsen. Zorg dat je deze optie uit zet.

Wil je toch wijzigingen doen aan de bronbestanden van WordPress wat soms nodig/ wenselijk is kun je dit het beste doen via een FTP cliënt.

Voeg onderstaande code toe aan je wp-config.php.

define( ‘DISALLOW_FILE_EDIT’, true );

13. Verberg je WordPress versie

Regelmatig komt er een update uit van WordPress. Dit kun je zien in het dashboard. Er komt niet zomaar een update uit natuurlijk. Oudere versies van WordPress kunnen veiligheidslekken hebben of bugs.

Hackers hebben het vooral voorzien op oudere versies. Hoe ouder de versie hoe gemakkelijk het wordt om in te breken in je website. Heb je ook nog de versie zichtbaar van je WordPress installatie, dan wordt het wel heel gemakkelijk om gericht aanvallen uit te voeren via de bekende veiligheidslekken.

wordpress versie verwijderen

WPBeginner heeft een gemakkelijke functie gemaakt die je kunt implementeren in je functions.php:

function wpversion_remove_version() {
return '';
}
add_filter('the_generator', 'wpversion_remove_version');

Verwijder readme.html

Let op! Dit wordt door 80% van alle WordPress gebruikers vergeten. In elke installatie van WordPress zit een readme.html. Hier staat de versie ook in. Verwijder deze!!

domain.com/readme.html

14. Alleen inloggen vanaf je eigen ip-adres

WordPress website beveiligen

Naast het veranderen van je wp-admin URL is dit voor mij een perfecte optie om ongewenste gasten buiten je login pagina te houden. Dubbel genaaid houdt beter.

Als je de volgende code in je .htaccess bestand plaatst heb je alleen nog maar de mogelijkheid om in te loggen vanaf je eigen ip-adres. Dit i.c.m. je eigen URL om in te loggen én een sterke gebruikersnaam en veilig wachtwoord komt er nooit meer iemand in! Vervang het ip-adres door je eigen ip-adres.

Plaats de code voor of na de standaard WordPress code. Dat kun je zien door het # teken. Alles tussen de # kan WordPress overschrijven.

<FilesMatch "^(xmlrpc\.php|wp-trackback\.php|wp-login\.php|admin\.php)">
Order Deny,Allow
Deny from all
Allow from 111.111.111
</FilesMatch>

Kijk op www.whatsmyip.com om achter je eigen ip-adres te komen.

15. Installeer 2-factor authenticatie.

Naast een veilige gebruikersnaam en een sterk wachtwoord kun je nog een stap verder gaan. Met 2 – factor authenticatie bouw je een extra beveiliging in. Bekijk de oplossingen van WordPress eens op deze pagina. Hier zie je een overzicht van de beste 2-factor authenticatie plugins voor je website.

Als voorbeeld pakken we de Google Authenticatie plugin. Als extra veiligheidsmaatregel dien je een code in te voeren die je kunt ontvangen via je smartphone.

WordPress website beveiligen

Conclusie:

Je WordPress website beveiligen is vandaag de dag belangrijker dan ooit. Om bovenstaande maatregelen uit te voeren moet je wel wat verstand hebben van de WordPress core bestanden en je zult je iets moeten verdiepen in een FTP cliënt om bestanden over te brengen.

Met de installatie van een security plugin zoals Wordfence of Ithemes Security ben je al goed op weg. De laatste plugin neemt je veel werk uit handen en kun je de meeste van bovenstaande handelingen zonder problemen uitvoeren. Je moet wel een klein beetje weten wat je doet maar alles wordt goed uitgelegd. Wil je niet het risico nemen om zelf met deze plugins te gaan stoeien? Laat er dan een expert naar kijken. Je mag ook altijd contact met me opnemen.

Zorg ervoor dat je de laatste versie van WordPress gebruikt en update je plugins.

Je kunt je WordPress website beviligen wat je wilt maar als je PC of laptop zo lek is als een mandje en niet goed beveiligt is, kun je alsnog gehackt worden. Zorg dat je goed Anti Virus software gebruikt zoals Avast of Eset Smart Security.

Als jij nog andere tips hebt om WordPress nóg beter te beveiligen, dan hoor ik het graag. Deel je mijn bericht ook? Zorg dat het web veiliger wordt!

  1. Wil je weten wat je allemaal nog meer kunt met WordPress? 14 mogelijkheden van WordPress voor extra inkomsten.
  2. Maak een portfolio website met één van de beste fotografie thema’s.

stefpngOver Stephen

In 2009 ben ik gestart met mijn eigen webdesign bedrijf. Blogger en WordPress “addict”. Ik Blog over WordPress, SEO & Social Media. Vanaf heden focus ik me op snelle WordPress websites en help graag. Als je hulp nodig hebt met je WordPress website. Neem dan eens contact met me op.

Laten we kennismaken op Twitter, Facebook of Google+.

Actuele informatie over het optimaliseren van je WordPress website? Mis mijn 2-wekelijkse berichten niet en schrijf je in.

Ik spam je niet, belooft. 100% privacy over https.

Waarschijnlijk vind je deze ook interessant

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Verplichte velden zijn gemarkeerd met *