First things first…
WordPress is niet per se “onveilig”. Al jaren maken mensen zich zorgen om de veiligheid van hun WordPress installatie, vaak onterecht. Het zijn de plugins (kleine stukjes code die u kan installeren om gemakkelijk functionaliteiten toe te voegen aan uw website) die een site wat minder weerbaar maken. De eigenlijke WordPress software wordt heel regelmatig bijgewerkt om een veilige, stabiele omgeving na te streven.
WordPress beveiligen
Better be safe than sorry. Er zijn een aantal tips die heel gemakkelijk te implementeren zijn, maar uw site een heel stuk veiliger maken. Ik kan dus niet anders dan iedereen aan te raden om deze uit te voeren.
1. Update
De updates van WordPress zijn er met een reden. De meest voorkomende hacks zijn gebaseerd op verouderde WordPress-code. Als u in de backoffice een melding krijgt dat er updates beschikbaar zijn, voer deze dan ook uit.
Tip: vergeet geen back-up te nemen voor het updaten. Mocht er iets fout lopen tijdens het updaten met WordPress of de geïnstalleerde plugins, kan je altijd terug.
2. Gebruik SSL
Ik had het in een ander artikel reeds over wat SSL precies is. Mocht uw website nog niet beveiligd zijn met SSL, doe dit dan zo snel mogelijk. In tegenstelling tot de volgende puntjes is SSL encryptie geen optie, maar een basisvereiste.
3. File editor uitschakelen
Binnen de backoffice van WordPress is het mogelijk de bestanden / code van uw website aan te passen onder Weergave > Editor. Dit wordt het best uitgeschakeld. Mocht een hacker in uw backoffice kunnen geraken zou hij anders de software van uw website gemakkelijk kunnen aanpassen.
Om deze functie uit te schakelen dient u via een FTP programma (bvb. FileZilla) connectie te maken met uw webhosting. In de basismap van uw WordPress installatie dient u vervolgens het bestand wp-config.php aan te passen. Zet er volgend lijntje bij:
define('DISALLOW_FILE_EDIT', true);
4. .htaccess optimaliseren
Om de .htaccess van uw WordPress website aan te passen dient u opnieuw connectie te maken via FTP. De .htaccess bevindt zich op hetzelfde niveau als de eerdere wp-config.php. Wanneer u dit bestandje opent zal u ergens het volgende zien staan:
# BEGIN WordPress
4.1. Toegang tot wp-includes limiteren
Een vaak gebruikte hack is om te zitten rondneuzen in de wp-includes folder van je website. Met het volgende stukje code beperkt u die toegang.
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^wp-admin/includes/ - [F,L]
RewriteRule !^wp-includes/ - [S=3]
RewriteRule ^wp-includes/[^/]+\.php$ - [F,L]
RewriteRule ^wp-includes/js/tinymce/langs/.+\.php - [F,L]
RewriteRule ^wp-includes/theme-compat/ - [F,L]
</IfModule>
4.2. Toegang tot de wp-config blokkeren
Tijdens de installatieprocedure worden gevoelige data zoals database gebruikersnaam en wachtwoorden weggeschreven naar de wp-config.php. Als iemand deze file zou kunnen inkijken kan deze persoon heel wat schade berokkenen. Verhoog daarom de beveiliging van die specifieke file:
<files wp-config.php>
order allow,deny
deny from all
</files>
4.3. Toegang tot .htaccess blokkeren
We hebben nu reeds belangrijke beveiligingsmechanismen ingesteld in de .htaccess, het zou zonde zijn dat een hacker deze terug kan uitschakelen. Daarom blokkeren we ook best toegang tot de .htaccess zelf:
<files ~ "^.*\.([Hh][Tt][Aa])">
order allow,deny
deny from all
satisfy all
</files>
5. Wachtwoord wijzigen
U zou niet de eerste site wiens site gehackt werd omdat software uw wachtwoord kon raden. Kies vanaf de installatie een “veilig wachtwoord”. Ga voor een mix van letters, cijfers en tekens.
Zo’n wachtwoord is echter wel moeilijker te onthouden. Ik raad u daarom aan om voor een password manager zoals 1Password te opteren. Hierin worden al uw wachtwoorden op een geëncrypteerde manier opgeslagen (dus geen post-its meer op uw laptop!), en hoeft u maar één wachtwoord meer te onthouden: dat van uw LastPass account. Wie ijverig is kan ook iedere 3 maanden het WordPress wachtwoord wijzigen, met zo’n password manager hoeft u ze toch niet te onthouden.