Beveilig je WordPress website met .htaccess

WordPress is op dit moment met 54,7 procent marktaandeel het meest populaire CMS op internet en 17,2% van alle websites draait op WordPress. (bron)


Deze populariteit van WordPress heeft zo z’n voor- en nadelen. Een groot voordeel is de grote community die werkt met WordPress, die zorgt voor het constant bijwerken van plugins, thema’s en de WordPress core zelf. Een nadeel is dat door de grote hoeveelheid WordPress websites, het voor hackers aantrekkelijk wordt om WordPress als platform aan te gaan vallen.

Aan ons (gebruikers van WordPress) dus de taak om er voor te zorgen dat onze website goed beveiligd is. Dit begint natuurlijk met een slimme gebruikersnaam en een nog slimmer wachtwoord., maar ook met extra regels aan je .htaccess bestand kan je veel mogelijke ingangen afsluiten.

Standaard .htaccess

Het standaard .htaccess bestand van WordPress bevat de volgende code:

1 # BEGIN WordPress
2 <IfModule mod_rewrite.c>
3 RewriteEngine On
4 RewriteBase /
5 RewriteRule ^index\.php$ - [L]
6 RewriteCond %{REQUEST_FILENAME} !-f
7 RewriteCond %{REQUEST_FILENAME} !-d
8 RewriteRule . /index.php [L]
9 </IfModule>
10  
11 # END WordPress

We gaan eens kijken wat we zoal in dit bestand kunnen toevoegen. Extra regels voegen we toe na de # END WordPress regel. Let op, maak voordat je aan de slag gaat eerst een kopie van je .htaccess voor in het geval er iets mis gaat.

Bescherm je .htaccess

Als eerste gaan we zorgen dat niemand toegang heeft tot het .htaccess bestand.

1 <Files .htaccess>
2 order allow,deny
3 deny from all
4 </Files>

Alleen toegang vanaf je eigen ip adres(sen)

Om er voor te zorgen dat er de wp-admin map alleen toegankelijk is vanaf je eigen ip adres(sen) voeg je de volgende code toe. De xxx.xxx.xxx.xxx vervangen we door ons eigen ip adres. Als je meerdere ip adressen wilt toevoegen dan kan je ze achter elkaar invoeren gescheiden door een spatie.

1 <Directory /www/public_html/example>
2 order deny,allow
3 allow from xxx.xxx.xxx.xxx
4 deny from all
5 </Directory>

Bescherm je wp-config.php

Om toegang tot je wp-config.php (waar nogal eens FTP inloggegevens in staan) te ontzeggen, gebruik je onderstaande regels.

1 <Files wp-config.php>
2 order allow,deny
3 deny from all
4 </Files>

Meer bescherming

Voor bescherm tegen script injectie en modificatie van _REQUEST en GLOBALS gebruik je onderstaande regels:

1 Options +FollowSymLinks
2 RewriteEngine On
3 RewriteCond %{QUERY_STRING} (\<|%3C).*script.*(\>|%3E) [NC,OR]
4 RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]
5 RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})
6 RewriteRule ^(.*)$ index.php [F,L]

Plugins om WordPress te beveiligen

Mocht je plugins willen gebruiken om je WordPress installatie te beveiligen, dan kan ik je Login Lockdown aanraden om ip adressen te blokkeren waarvan herhaaldelijk login pogingen worden gedaan. Een andere plugin is WP Security Scan, waarmee je een aantal adviezen kan krijgen over te nemen veiligheidsmaatregelen.

Klanten beoordelen ons

Volg ons ook op

Wned.nl

Op weg naar jouw eigen online succes. Zoek of verhuis je domeinnaam, bouw je eigen website en maak er een succes van. Met onze snelle servers en klantenservice maken wij dit mogelijk.