Geplaatst op

Wat is een SSL certificaat?

Internet security

In deze blog gaan we het thema SSL certificaten uitgebreid behandelen, en jou de vraag beantwoorden; Wat is een SSL certificaat? Wellicht ben je ook nieuwsgierig naar het instellen van een SSL certificaat, ook dit komt aan bod in deze leerzame blog! Laten we bij het begin beginnen, wat is nou precies een SSL certificaat? We proberen dat in deze blog kort, maar krachtig te bespreken, zodat je precies weet wat je moet doen om een SSL certificaat aan te vragen en te beheren.

Secure Sockets Layer

SSL staat voor Secure Sockets Layer. Met ‘layer’ wordt bedoeld dat er een beveiligde laag tussen jouw webhosting en de verschillende browsers zit, een browser is bijvoorbeeld Google Chrome of Mozilla Thunderbird. Dit zorgt er voor dat gegevens die verstuurd worden vanaf je website encrypted zijn, oftewel versleuteld. Hierdoor is het niet meer mogelijk dat derde partijen makkelijk gegevensdata kunnen onderscheppen. Het gebruik van een SSL certificaat is dus een vereiste als je een webshop beheert. Je zou er niet aan moeten denken dat klantgegevens zoals adresgegevens, bankgegevens etc. op straat komen te liggen.

Hoe werkt een SSL certificaat?

Nu je het antwoord hebt op; Wat is een SSL certificaat? Kunnen we verder gaan met de vraag; Hoe werkt een SSL certificaat? Een SSL certificaat werkt met een public key, en een private key. De public key is voor iedereen beschikbaar. De public key versleuteld de berichten bestemd voor de eigenaar van het key pair (Ontvanger). De private key is alleen bekend bij de eigenaar van de server (Ontvanger). Met de private key worden de versleutelde berichten weer gedecodeerd.

Het SSL proces

Je kunt het als volgt zien; jij als website bezoeker vult bijvoorbeeld jouw gegevens in via het contactformulier en je drukt op de knop ‘Verzenden’. Op dat moment zullen jouw gegevens omgezet worden tot onleesbare tekens, dit gebeurt door de public key, we noemen dit versleuten, oftwel encrypten. Dit bericht met onleesbare tekens wordt vervolgens verzonden en komt aan op de server (de ontvanger). De eigenaar van de website beschikt tevens over de private key en kan hiermee het bericht decoderen en vervolgens weer het bericht als normale tekst lezen.

Verschillende soorten SSL certificaten

Er zijn verschillende soorten SSL certificaten. Wist je dat het SSL certificaat niet alleen voor je website gebruikt kan worden, maar ook voor het beveiligen van je inkomende en uitgaande e-mail. Vaak heb je hiervoor wel een betaalde certificaat nodig. Om er achter te komen welke SSL certificaat het beste bij jouw website past, hebben wij hieronder een handig overzicht gemaakt. Heb je, of wil je jouw website bij ons laten bouwen? Dan leveren wij deze standaard op met het Cloudflare Wildcard SSL certificaat. Maak je geen gebruik van Cloudflare, dan zal jouw website opgeleverd worden met het Let’s Encrypt SSL certificaat.

Single-Domain SSL certificaat

Het single-domain SSL certificaat wordt ingezet voor specifiek één domein. Dit certificaat beveiligd de homepagina en alle onderliggende pagina’s als bijvoorbeeld de ‘Over ons’ & ‘Contact’ pagina. Subdomeinen worden in dit certificaat niet meegenomen, een subdomein is bijvoorbeeld shop.dewebdeveloper.nl. Vaak wordt het subdomein WWW wel meegenomen bij een single-domain SSL certificaat. Een erg bekend maar ook gratis single-domain SSL certificaat kun je vinden bij Let’s Encrypt. Let’s Encrypt biedt tevens mogelijkheid tot het beveiligen van subdomeinen.

Wildcard SSL certificaat

Het Wildcard SSL certificaat is bedoeld voor het beveiligen van het hoofddomein en alle subdomeinen die het hoofd domein telt. Ook beveiligd het Wildcard SSL certificaat maar één hoofddomein. Zoals eerder aangegeven kun je ook een gratis Let’s Encrypt Wildcard SSL certificaat verkrijgen. Gebruik je Let’s Encrypt op een eigen VPS? Dan zul je deze wel om de drie maanden zelf opnieuw moeten uitgeven.

Multi-Domain SSL certificaat

Het multi-domain SSL certificaat werkt anders dan de single-domain & het Wildcard SSL certificaat. In tegenstelling tot deze twee certificaten, kan het multi-domain SSL certificaten wel meerdere domeinen beveiligen met SSL. Het multi-domain SSL certificaat is een combinatie van het single-domain & het Wildcard SSL certificaat dat dan wel meerdere domeinen kan beveiligen.

Multi-Domain Wildcard SSL certificaat

Het multi-domain Wildcard SSL certificaat combineert de mogelijkheden van een multi-domain & Wildcard SSL certificaat. Je kunt met dit certificaat dus meerdere domeinen en alle subdomeinen hiervan beveiligen.

Welke type validaties zijn er?

Nu we weten welke type SSL certificaten er zijn, gaan we verder met de vraag; Welke type validaties zijn er? Wellicht is het eerst handig om te weten wat er precies bedoeld wordt met valideren. In deze context wordt ermee bedoeld het controleren van bepaalde protocollen waar het SSL certificaat aan moet voldoen. Het validatieniveau wordt bepaald door de Certificate Authority (CA). In totaal zijn er drie validatie niveaus. Deze zullen wij nu hieronder bespreken:

Domain Validation (DV) SSL certificaat

Het laagste niveau van valideren is door middel van DV toe te passen. Hierbij wordt de validatie verricht middels e-mailverificatie of DNS verificatie. DV is een snelle en goedkope manier om een SSL certificaat te bemachtigen. Valideer je jouw SSL certificaat middels DNS? Houdt dan rekening met een maximale verwerkingstijd van 24 uur. De gratis Let’s Encrypt SSL certificaten vallen ook onder deze methode van validatie.

Organization Validation (OV) SSL certificaten

Het opvolgende validatie niveau valideert niet enkel de domeinnaam, maar ook het bedrijf (Organisatie). Dit zal telefonisch gebeuren. Tijdens het gesprek zal naar voren komen of het bedrijf legaal is, en of het wel een geregistreerd bedrijf is. Dit niveau noemen we OV en is het middel veiligste niveau. Aan deze methode van valideren worden kosten gerekend. Ook worden deze Organization Validation (OV) SSL certificaten als erg betrouwbaar gezien.

Extended Validation (EV) SSL certificaten

Het valideren via de EV methode is het derde en laatste/hoogste niveau van valideren. Het EV SSL certificaat wordt veel gebruikt door bedrijven en webshops. De reden waarom dit niveau van valideren als erg betrouwbaar wordt gezien, is omdat tijdens de validatie de volledige achtergrond van het bedrijf wordt gecheckt. Dit type validatie is ook gelijk de duurste methode. Ook zie je in sommige browsers nog links naast de domeinnaam je bedrijfsnaam staan in een groen vlak. Vaak kun je ook op het slotje zelf klikken om te checken of je hier een bedrijfsnaam ziet staan.

Welk validatie niveau kan ik toepassen op welk SSL certificaat?

Nu we hebben gelezen welke validatie niveaus er zijn, zullen we ook moeten weten welk type validatie we kunnen toepassen op welk type SSL certificaat. De volgende certificaattypen; Single-domain & Wildcard kunnen enkel gevalideerd worden middels de volgende validatieniveau’s: DV/OV. Voor het multi-domain & multi-domain Wildcard kan dit enkel via het validatieniveau EV.

Welk type SSL certificaat moet ik aanschaffen?

Nu we te weten zijn gekomen wat een SSL certificaat is, welke types SSL certificaten er zijn en welke validatieniveau’s er zijn en welke validatieniveau’s op welke type SSL certificaat gebruikt kunnen worden. Om het nog even overzichtelijk weer te geven hebben we wat definities op een rijtje gezet:

 

Type SSL certificaat Doelgroep Prijs
Single-domain Blogs, Starters, Particulier Gratis / Goedkoop
Wildcard Subdomeinen, Klein / middelgroot Gratis / Goedkoop
Multi-domain Grote zakelijke websites Duur
Multi-domain Wilcard Grote zakelijke websites met meerdere domeinen Duurst kosteneffectief

Managed of self service SSL certificaat?

Nu je weet welk certificaat je moet aanschaffen, komen we aan bij de vraag; Moet ik een managed of self service SSL certificaat aanvragen? Om hier een keuze in te maken moeten we eerst weten wat deze twee methodes betekenen. Het verschil tussen een managed en self service SSL certificaat zit hem in de manier van configureren. Heb je bijvoorbeeld een simpel hostingpakket bij een hostingprovider, dan zul je in de meeste gevallen een managed certificaat krijgen. Je hoeft dan vaak enkel het certificaat aan te vragen, waarna deze aan je hostingpakket gekoppeld wordt. Maar heb je bijvoorbeeld een eigen server in Plesk, dan heb je een self service SSL certificaat nodig. Hierbij moet je nog wel zelf een CSR (Certificate Signing Request) genereren vanaf je webserver.

Waar kan ik SSL certificaten aanschaffen?

De meeste SSL certificaten kun je gewoon aanschaffen bij een hostingprovider. Ook is het mogelijk om gratis SSL certificaten vanaf je hosting platform aan te vragen. Met een hostingplatform bedoelen we bijvoorbeeld Plesk of cPanel. Ben je of wordt je klant van De Web Developer? Dan regelen wij het SSL certificaat voor jou! Dit betreft een single-domain certificaat van Cloudflare Inc. Stellen wij geen Cloudflare voor je in? Dan maken wij het Let’s Encrypt certificaat voor je aan!

HTTPS activeren na aanschaffen SSL certificaat

Vaak is het ook nog nodig om HTTPS te activeren. Bij domeinen zonder een SSL certificaat verloopt het verkeer via HTTP. HTTP staat voor Hypertext Transfer Protocol. Dit is een protocol voor de communicatie tussen een webclient en een webserver. De S achter HTTP staat voor secure. Om het verkeer vanaf nu via HTTPS te laten verlopen moeten we dit vaak nog even activeren. Dit doe je als volgt:

HTTPS activeren op WordPress

Voor het activeren van HTTPS op WordPress kun je gebruik maken van de plugin Really Simple SSL. Deze plugin zorgt ervoor dat jouw domeinnaam standaard geredirect wordt naar je veilige omgeving (HTTPS). Ook zorgt deze plugin ervoor dat al je afbeeldingen en overige verwijzingen omgezet worden van HTTP naar HTTPS. Er wordt aangeraden om eerst een back-up te maken van je website. Na het installeren en activeren van de plugin kun je de stappen volgen, binnen een paar klikken is jouw website volledig omgeleid van HTTP naar HTTPS.

HTTPS activeren op overige websites

Maak je geen gebruik van WordPress, en heb je toevallig een standaard HTML, Bootstrap of andere website? Dan kun je via het .htaccess bestand een redirect maken naar je veilige omgeving. Hierbij is het uiteraard nog wel noodzakelijk om zelf alle hyperlinks te controleren of deze via HTTPS verlopen. Doen deze dat nog niet dan zou je dit moeten aanpassen. Hoe je dit doet lees je hier . Hieronder tref je de snippet voor wat er in het .htaccess bestand moet komen te staan.

RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L]

Zie je geen slotje of een streep door het slotje?

Als je het SSL certificaat hebt geïnstalleerd en hebt geconfigureerd, en je ziet nog steeds geen slotje, of een slotje met een streep erdoor, dan kan dit te maken hebben met je tijdelijke browser cache. Je zou je browser cache even kunnen proberen te legen. Ook kan het aan het DNS liggen omdat het nieuwe SSL certificaat nog niet gevalideerd is. Mocht je er zelf niet uitkomen, dan kunnen wij hier bij ondersteunen. Neem gerust contact op voor support! We hopen dat je na het lezen van deze blog jouw eigen website kunt beveiligen met het juiste SSL certificatie en middels juiste validatie.

Geplaatst op

WordPress website beter beveiligen

WordPress beter beveiligen

Wat kun je doen om jouw WordPress website beter te beveiligen? We leggen het je graag in deze blog uit. Zoals al wellicht bekend is, willen we zo min mogelijk gebruik maken van plugins, dit omdat des te meer plugins je gebruikt op je website, des te langzamer je website zal functioneren. We proberen in deze blog zo veel mogelijke handmatige methodes te bespreken voor het veiliger maken van jouw website. Ook besteden we aandacht aan enkele goede beveiligings- plugins die eigenlijks onmisbaar zijn voor betere beveiliging.

Waarom zouden ze mij hacken?

Veel mensen denken vaak onterecht dat enkel grote bekende websites met veel verkeer worden gehackt. Helaas is dit niet waar. Echter is de kans bij een kleine website met weinig verkeer even veel kans om gehackt te worden. Het doel van een hack kan zijn om veel spam te versturen via jouw server. Het nadeel hiervan is dat Google, Bing of andere serviceproviders je op een blacklist kunnen plaatsen. Hierdoor komen jouw e-mails veel sneller in de spamfolder terecht. Om zoiets weer te herstellen, kan een hele lange tijd overheen gaan.

Hoe kunnen ze mij hacken?

We hebben een overzicht gemaakt van de meest voorkomende methodes van verschillende hacks. In WordPress is het als volgt verdeeld:

  • 41% van de hacks heeft iets te maken van de hosting van jouw WordPress website.
  • 29% van de hacks komt voort uit onveilige of verouderde thema’s.
  • 22% van de hacks hebben te maken met onveilige of verouderde plugins.
  • 8% van de hacks zijn te wijten aan het gebruik van onveilige wachtwoorden.

Zorg allereerst voor een veilige omgeving

Voor we überhaupt inloggen op WordPress is het van groot belang dat we dit doen vanuit een veilige omgeving. Zorg allereerst dat de computer waarvan je inlogt virusvrij is. Scan de gehele computer op virussen en mal en spyware. Ook is het af te raden om in te loggen op je WordPress website als je computer verbonden is met een onbeveiligd WiFi netwerk.

Tip! Mocht je wachtwoorden moeten verzenden naar bijvoorbeeld je webbouwer, dan kun je deze het beste verzenden via de ouderwetse SMS. Wachtwoorden verzenden per e-mail wordt afgeraden.

1. Wachtwoorden optimaliseren

Wellicht is de eerste logische stap om je huidige wachtwoorden na te kijken. Zo wordt geadviseerd om jouw wachtwoord minimaal een keer te gebruiken. Want als bijvoorbeeld jouw WordPress wachtwoord achterhaald zou worden, zouden kwaadwillenden ook dit wachtwoord kunnen proberen op andere platformen / websites waar je dit wachtwoord ook gebruikt. Gebruik bij voorkeur een wachtwoord generator. Een wachtwoord generator genereert een uniek en moeilijk te kraken wachtwoord. Check naast je WordPress wachtwoord ook het wachtwoord van je FTP-toegang, en je MySQL database.

WordPress wachtwoord wijzigen via het dashboard

Om je WordPress wachtwoord te wijzigen volg je de onderstaande stappen:

  1. Login op het WordPress dashboard. Dit doe je door je domeinnaam in te vullen gevolgd door /wp-admin.
  2. Klik op de linkerkant op ‘Gebruikers’ en klik onder de gebruiker op ‘Bewerken’.
  3. Onderaan op de pagina, tref je ‘Nieuw wachtwoord instellen’ aan, hier klikken we op.
  4. Er wordt nu als het goed is, automatisch een sterk wachtwoord gegenereerd. Deze kun je behouden of aanpassen.
  5. Na het behouden of invoeren van het nieuwe wachtwoord scrol je helemaal naar onder op de pagina en klik je op ‘Update profiel’.

WordPress wachtwoord wijzigen indien vergeten

Het kan ook voorkomen dat je überhaupt WordPress niet meer in komt. Om toch in te kunnen loggen dienen we eerst het wachtwoord te wijzigen. Dit gaat ook via de inlogpagina. Hoe dit precies werkt leggen we hieronder uit.

  1. Ga naar de inlogpagina van jouw WordPress website. Dit doe je door je domeinnaam in te vullen gevolgd door /wp-admin.
  2. Onder het inlogveld zien we ‘Wachtwoord vergeten?’ staan. Hier klikken we op.
  3. Je kunt nu het administratie e-mailadres of gebruikersnaam invoeren, waarna je per e-mail een wachtwoord reset link toegestuurd krijgt en het wachtwoord kunt aanpassen.

Geen WordPress wachtwoord reset ontvangen per e-mail?

Ook kan het zijn dat je geen automatische e-mail terug hebt gekregen van WordPress bij het aanvragen van een nieuw wachtwoord. In dit geval is er ook nog een mogelijkheid het wachtwoord aan te passen via de database. Echter is dit wel een stuk lastiger. Mocht je hier hulp bij willen ontvangen, dan staan we altijd voor je klaar hierbij te helpen. Om het WordPress wachtwoord te resetten via de database volg je de onderstaande stappen.

  1. Allereerst moeten we inloggen op de database. Dit gaat bij vele hostingproviders via het control panel zoals Plesk, cPanel of DirectAdmin.
  2. Eenmaal ingelogd op de database klikken we links in het menu op de database naam (de link boven of onder ‘information_schema’).
  3. Vervolgens klikken we links in het net uitgeklapte menu op de tabel ‘wp_users’.
  4. Aan de rechterkant zien we nu alle gebruikers staan. Hier klikken we bij de desbetreffende gebruiker op ‘Edit’.
  5. Bij ‘user_pass’ in het veld rechts, kunnen we nu het wachtwoord invoeren.
  6. Selecteer in het dropdown menu achter ‘varchar (255)’ nu ‘MD5’.
  7. Om het nieuwe wachtwoord door te voeren, klikken we op ‘Go’ helemaal onderaan de pagina.

Database wachtwoord wijzigen via het control panel (Stap 1)

Eerder gaven we ook al aan om ook het WordPress database te wijzigen. Dit wachtwoord kun je zo uitgebreid mogelijk maken, aangezien we dit wachtwoord nooit ergens hoeven in te voeren. Het wijzigen van het WordPress database wachtwoord bestaat uit twee stappen. Zo dient het database wachtwoord aangepast te worden in bijvoorbeeld het control panel, maar ook dient deze aangepast te worden in het wp-config.php bestand. Als we dit wachtwoord enkel wijzigen in het control panel en niet goed doorvoeren dan zal jouw WordPress website de volgende melding geven ‘Error establishing a database connection’. Door de onderstaande stappen te volgen wijzigen we eerst het database wachtwoord via het control panel.

Klik hier om te zien hoe je het database wachtwoord wijzigt in Plesk

Klik hier om te zien hoe je het database wachtwoord wijzigt in cPanel

Klik hier om te zien hoe je het database wachtwoord wijzigt in DirectAdmin

Dit zijn de meest bekende control panels die bekend zijn. Het kan echter ook voorkomen dat jouw hostingprovider een eigen control panel aanbied. Hiervoor zou je op de website van de desbetreffende hosting provider kunnen kijken voor verdere instructies. Teven is het ook mogelijk het database wachtwoord te wijzigen via phpMyAdmin.

Database wachtwoord doorvoeren in het wp-config.php bestand (Stap 2)

Nadat we het wachtwoord aangepast hebben via het controlpanel of phpMyAdmin, dienen we dit wachtwoord nog door te voeren in het wp-config.php bestand. Dit bestand zorgt ervoor dat jouw WordPress website verbonden kan worden met de desbetreffende database. We vervangen in dit bestand het oude wachtwoord met het net aangemaakte wachtwoord (stap 1). Het wijzigen van dit bestand gaat als volgt:

  1. Log via de filemanager of via FTP in op jouw webserver en ga naar de rootfolder van jouw WordPress installatie.
  2. In de rootfolder tref je het wp-config.php bestand aan. Open dit bestand met een daarvoor bestemde editor als bijvoorbeeld Notepad++ of het standaard kladblok dat je kan vinden in Windows. (Gebruik hiervoor geen Wordpad, of Word bijvoorbeeld).
  3. Ga hier op zoek naar de volgende regel: /** MySQL database password */, op de regel hieronder kun je dan het nieuwe wachtwoord opgeven. Tussen de aanhalingstekens na: define( ‘DB_PASSWORD’ , ‘Hier kun je het nieuwe wachtwoord plaatsen’ );.
  4. Sla vervolgens het bestand op en test of de wijziging goed is doorgevoerd.

Als het goed is dan moet de verbinding tussen de database en je WordPress website hersteld zijn. Door het wachtwoord gewijzigd te hebben in een sterk wachtwoord, maken we het eventueel kwaadwillenden ook een stuk lastiger om bijvoorbeeld in te breken op de database.

Wachtwoord van de FTP-omgeving wijzigen

Ook hebben we eerder besproken dat het ook aan te raden is het wachtwoord van je FTP-omgeving te wijzigen. Als men toegang heeft tot jouw FTP-omgeving, kan men ook kwaadaardige randsomeware plaatsen op jouw website of webserver. Bovendien kan men ook via FTP het wachtwoord opvragen van de database en tot slot ook de domeinnaam doorsturen naar bijvoorbeeld een malafide website. Dit willen we uiteraard voorkomen. Ook voor het FTP-wachtwoord geldt natuurlijk dat we een zo sterk mogelijk wachtwoord genereren. Het wachtwoord wijzigen van jou FTP-gegevens gaat als volgt:

Klik hier voor de instructies met betrekking tot het wijzigen van het FTP-wachtwoord in Plesk

Klik hier voor de instructies met betrekking tot het wijzigen van het FTP-wachtwoord in cPanel

Klik hier voor de instructies met betrekking tot het wijzigen van het FTP-wachtwoord in DirectAdmin.

2. Het wp-config.php bestand beveiligen en encrypten

Het wp-config.php bestand is het bestand dat zorgt voor de koppeling tussen jouw WordPress website en de database. In dit bestand staat gevoelige informatie zoals het database wachtwoord. Het is daarom van belang dit bestand goed te beveiligen. Hiervoor kun je de onderstaande stappen uitvoeren.

Het wp-config.php bestand enkel toegankelijk maken vanaf een specifiek IP-adres

Het is aan te raden om enkel via jouw eigen IP-adres toegang te verlenen tot het openen en bewerken van jouw wp-config.php bestand. Hiervoor kun je een speciaal .htaccess bestand aanmaken en hierin enkel jouw huidige uitgaande IP-adres in op te nemen. Zo voorkom je dat buitenstaander het bestand kunnen openen of bewerken. Tevens geef je het wp-config.php bestand de bestandsrechten 600 mee. Dit wordt ook vanuit WordPress geadviseerd. Allereerst zullen we het .htaccess bestand moeten beveiligen. Dit doe je door in je huidige .htaccess de volgende code te zetten:

<Files .htaccess>
order allow,deny
deny from all
</Files>

Nu het .htaccess bestand beveiligd is, kunnen we het wp-config.php bestand beveiligen. Dit doe je door een nieuw .htaccess bestand aan te maken in de map ‘/wp-admin’ . In dit .htaccess bestand zet je de onderstaande code. Vervang uiteraard het IP-adres met jouw eigen IP-adres. Jouw IP-adres kun je hier opvragen.

order deny,allow
allow from 123.456.7.8
deny from all

Keys & Salts encryptie verbeteren van het wp-config.php bestand

Tot slot kunnen we in het wp-config.php bestand nog de keys & salts aantreffen. Voor deze key’s kunnen we een uniek code aanmaken om de encryptie te verbeteren. Hieronder zie je de standaard Key’s & Salts weergegeven. Om hiervoor een unieke code voor te maken, kun je de keys & salts generator van WordPress gebruiken.

 
define('AUTH_KEY', 'put your unique phrase here');
define('SECURE_AUTH_KEY', 'put your unique phrase here');
define('LOGGED_IN_KEY', 'put your unique phrase here');
define('NONCE_KEY', 'put your unique phrase here');
define('AUTH_SALT', 'put your unique phrase here');
define('SECURE_AUTH_SALT', 'put your unique phrase here');
define('LOGGED_IN_SALT', 'put your unique phrase here');
define('NONCE_SALT', 'put your unique phrase here');

3. Two Step Authentication inschakelen voor WordPress

Wellicht heb je wel eens gehoord van Two Step Authentication, ook wel 2FA genoemd. Hiermee kun je een beveiligde verificatie instellen. Hierbij wordt er bij het inloggen een SMS verstuurd naar je smartphone. Na het invoeren van het wachtwoord zul je ook de verificatie moeten invoeren bij het inloggen. Erg veilig!

We maken zelf gebruik van Rublon. Dit is een betaalde dienst, echter bieden ze ook een gratis account aan voor maximaal 1 website. We zullen hier binnenkort een heel blog aan toewijden. Houd daarom onze website goed in de gaten.

4. De juiste bestandsrechten instellen

Wellicht heb je wel eens gehoord van bestandsrechten. Met deze bestandsrechten kun je de permissies toewijzen aan elke soort gebruiker. We kennen drie soorten gebruikers ‘Eigenaar, Groep & Openbaar’. Deze kunnen met de opgelegde permissies ‘Lezen, Schrijven of Uitvoeren’. Het is daarom van groot belang dat deze bestandsrechten goed staan. Zet nooit zomaar je bestandsrechten op 777. We hebben een overzicht voor je gemaakt welke bestandsrechten er ingesteld moeten worden.

  • Mappen en directories: 755 of 750
  • Bestanden: 644 of 640
  • Het wp-config.php bestand kun je het beste op 600 zetten

5. WordPress updates uitvoeren

Net als bij computers en telefoons zijn het uitvoeren van updates van essentieel belang. Updates kunnen beveiliging fixes bevatten. Het updaten geldt niet alleen voor het WordPress systeem zelf, maar ook voor je plugins en thema’s. Als je deze updates niet geregeld bijhoud wordt jouw WordPress website steeds kwetsbaarder. Zo kan er bijvoorbeeld een lek zitten in een oud thema die al tijden niet geüpdatet is, terwijl de ontwikkelaar deze lek gevonden heeft, en het bij een update al hersteld heeft. Zolang het thema niet over de laatste updates beschikt, blijft dit lek actief en is er dus een ingang voor kwaadwilligen om bijvoorbeeld een aanval in te zetten op jouw WordPress website.

Automatische WordPress updates

Je kunt ervoor kiezen alle updates binnen WordPress automatisch te laten verlopen. Dit kan erg handig zijn als je meerdere websites hebt die onderhouden moeten worden. Ook kleeft hier een nadeel aan. Zo kan het zijn dat er bij een grote WordPress core update jouw gehele website kan crashen. Dit kan erg frustrerend zijn als je geen back-up hebt of dat het met meerdere websites tegelijk gebeurt. Dit omdat WordPress op hetzelfde moment updatet als er een nieuwe update beschikbaar is. Wil je weten hoe je kunt checken hoe je de automatische updates in en uit kunt schakelen, lees dan even dit artikel.

WordPress updates uitvoeren.

De benodigde WordPress updates uitvoeren gaat vrij eenvoudig. Hiervoor kun je de volgende stappen in acht nemen:

    1. Login op het WordPress dashboard. Dit doe je door je domeinnaam in te vullen gevolgd door /wp-admin.
    2. Klikt vervolgens aan de linkerkant op ‘Dashboard’ > ‘Updates’.
    3. Hier zie je alle updates die klaar staan.
    4. Selecteer per groep ‘Plugins’, ‘Thema’s, ‘Vertalingen’ de updates en klik op ‘Update plugins’ & ‘Thema’s bijwerken’.

Let op! Maak altijd een back-up van je WordPress website als je een core update van WordPress uitvoert. Een core update is niets meer dan een upgrade naar een nieuwere versie van WordPress. Het systeem zal hier zelf ook een waarschuwing over geven.

Gebruik je eigen CSS? Zorg er dan voor dat je gebruik maakt van een child theme. Na een update van het huidig thema zul je CSS verdwijnen. Hoe je child theme maakt lees je in dit artikel.

6. Verwijder ongebruikte plugins en thema’s

Wist je dat ongebruikte plugins en thema’s extra risico’s met zich meebrengen? En waarom zou je thema’s en plugins willen bewaren die je toch niet gebruikt. Ook al heb je de niet gebruikte plugins en thema’s uitgeschakeld, ze zijn wel degelijk aanwezig op je website en vormen zo alsnog een gevaar. Dus gebruik je een bepaalde plugin of thema niet meer? Deactiveer de plugin of thema en verwijder hem ook daadwerkelijk. Zo houd je je WordPress website weer een stukje veiliger. Bekijk trouwens ook bij de plugins en thema’s die je wel gebruikt of deze regelmatig geüpdatet zijn.

7. De standaard WordPress gebruikersnaam wijzigen

Het kan zijn dat jouw (oudere) WordPress website nog de standaard ‘admin’ gebruikersnaam heeft. Dit weten hackers ook en kunnen door middel van de gebruikersnaam en standaard inlogpad ‘/wp-admin’ gerichter aanvallen. Het is daarom ook aan te raden deze gebruikersnaam te wijzigen. Gelukkig is dit probleem bij nieuwe WordPress installaties inmiddels opgelost en zijn de gebruikersnamen identiek. Maak je nog gebruik van de standaard gebruikersnaam ‘admin’, dan kun je dat wijzigen door het uitvoeren van de onderstaande stappen:

  1. Controleer eerst of de gebruiker ‘admin’ wel daadwerkelijk bestaat. Dit doe je door in te loggen op jouw WordPress dashboard en vervolgens te gaan naar ‘Gebruikers’.
  2. Filter hier op ‘Beheerders’. Staan hier meerdere beheerders? Dan kun je de beheerder ‘admin’ veilig verwijderen. Zorg wel dat je niet als ‘admin’ bent ingelogd, anders kun je deze beheerder niet verwijderen.
  3. Of is er maar 1 beheerder en heet deze toevallig ‘admin’, dan kun je een nieuwe beheerder aanmaken, een sterk wachtwoord aanmaken en vervolgens uitloggen met de huidige beheerder. Hierna weer inloggen met de nieuwe beheerder en tot slot de beheerder ‘admin’ te verwijderen.

8. Locatie van de standaard inlogpagina wijzigen

Na de standaard gebruikersnaam ‘admin’ te wijzigen, is het ook erg veilig om de inlogpagina naar het dashboard van locatie te wijzigen. Standaard is dat bijvoorbeeld example.com/wp-admin. Dit kunnen we wijzigen naar example.com/beheerder of iets wat je eigen voorkeur betreft. Je kunt dit op twee manieren wijzigen. Dit kan via de handmatige methode, dus door wat scripts aan te passen, of via een plugin. We behandelen beide methoden, maar onze voorkeur gaat uiteraard voor het wijzigen zonder plugin. Onderstaande methode werkt via het plaatsen van een cookie en een aanpassing in het .htaccess bestand. Om het pad naar jouw inlogpagina aan te passen volg je de onderstaande stappen:

    1. Login op jouw FTP-server en navigeer naar de rootfolder.
    2. Download het bestand wp-login.php en maak hier ook gelijk voor de zekerheid een kopie van. Mocht er iets mis gaan, dan kunnen we altijd nog dit bestand herstellen.
    3. Zoek nu in het wp-login.php bestand naar: ‘wp-admin’, in ons geval komen er 13 gerelateerde resultaten naar boven.
    4. Vervang ‘wp-admin’ naar ‘wp-redirect’. Doe dit uiteraard voor alle gevonden overeenkomsten. En sla het bestand op en schrijf het weg naar jouw server.

De bovenstaande stappen zorgen ervoor dat het inlogscherm dat normaal via /wp-admin te benaderen was, niet meer te bereiken is. Uiteraard moeten we nog wel kunnen inloggen op de website en zullen we dus een redirect in moeten stellen. Dit doen we met behulp van een cookie en een aanpassen verwijzend naar deze cookie in het .htaccess bestand.

Het .htaccess bestand aanpassen met een cookie referentie

Nu we de standaard locatie van de pagina /wp-admin verborgen hebben. Kunnen we de wijzigingen doorvoeren aan het .htaccess bestand. In dit geval wijzigen we de locatie van ‘/wp-admin’ naar ‘wp-beheercms.php’, maar je mag het ook anders noemen, zolang het maar begint met ‘wp-’. Het is van belang dat wij er .php achter zetten, dit verwijst naar de nog aan te maken pagina in de volgende stap. Voer nu de volgende code door die je hier beneden in de snippet aantreft in jouw .htaccess bestand, en schrijf het weg naar jouw server:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_COOKIE} !^.*wp\-beheercms=2917998723.*$ [NC]
RewriteRule wp-login.php - [F]
</IfModule>

De pagina wp-beheercms.php aanmaken.

We hebben het .htaccess bestand zojuist aangepast. Nu is het van belang dat wij een cookie aanmaken die redirect naar ‘/wp-login.php’. Zorg er allereerst voor dat de bestandsrechten voor ‘wp-login.php’ gewijzigd worden van 644 naar 640. Dit zorgt er voor dat zonder het gebruiken van de cookie het bestand niet meer publiekelijk beschikbaar is. Je kunt deze bestandsrechten instellen via jouw FTP cliënt. Als dit is gedaan maak je de pagina ‘wp-beheercms.php’ (afhankelijk van hoe je de redirect van je inlogpagina hebt genoemd) in de rootfolder. Hier plak je de volgende syntax in:

<?php
setcookie("wp-beheercms", 2917998723);
header("Location: wp-login.php");
?>

Nadat je de bovenstaande code in het cookiebestand hebt geplaatst kun je deze vervolgens opslaan en wegschrijven naar jouw server. Als het goed is zou je nu kunnen inloggen via jouwdomein.nl/wp-beheercms.php, deze cookie zul je je omleiden naar ‘/wp-login.php’ die enkel via deze omleiding dan wel te bereiken is. Test in dit geval de volgende punten:

  1. Kun je nog inloggen via ‘wp-admin’? Als dit niet het geval is, dan heb je deze stap correct uitgevoerd.
  2. Kun je de pagina ‘wp-login.php’ nog bereiken? Als dit niet geval is, dan heb je deze stap correct uitgevoerd.
  3. Wordt je juist doorgestuurd naar ‘wp-login.php’ als je ‘/wp-beheercms.php’ in hebt gevoerd? En zie je hierna de inlogpagina? Dan is alles nu correct ingesteld.

Probeert tot slot te testen of je kunt inloggen, en of het uitloggen ook wilt loggen. Als dit het geval is, dan heb je alle stappen succesvol afgerond, en is jouw dashboard vanaf nu goed te bereiken via de nieuwe inloglink.

Locatie van de standaard inlogpagina wijzigen met plugin

Mocht het handmatig wijzigen van jouw inlogpagina te ingewikkeld zijn, dan is er ook altijd nog de mogelijkheid om dit in te stellen met behulp van een plugin. Het overmatig gebruik van plugin’s raden wij altijd af. Er zijn verschillende plugins om het standaard pad van de inlogpagina te wijzigen. Een lichtgewicht plugin die wij hiervoor kunnen gebruiken is de plugin ‘Change wp-admin login’ van de uitgever Nuno Morais Sarmento.

  1. Login op het WordPress dashboard. Dit doe je door je domeinnaam in te vullen gevolgd door /wp-admin.
  2. Ga vervolgens naar ‘Plugins’ > ‘Nieuwe plugin’.
  3. Zoek hier naar ‘Change wp-admin login’ en installeer de plugin en activeer deze.
  4. Ga nu naar ‘Instellingen’ > ‘Permalinks’.
  5. Scrol door tot ‘Login URL’ > Hier vul je de gewenste URL in, wat standaard ingesteld staat op ‘login’. Nadat je dit opslaat, log in je in op bijvoorbeeld jouwdomein.nl/login in plaats van jouwdomein.nl/wp-admin.
  6. Tot slot kun je ook nog een returnpad invullen. Dit is de pagina waar bezoekers op terecht moeten komen die nog het oude pad invoeren, bijvoorbeeld jouwdomein.nl/wp-admin. Deze kun je bijvoorbeeld redirecten naar je homepage (standaard) of door 404 in te vullen. Dan komen bezoekers op de algemene not found page van je WordPress website.

9. Beperk WordPress inlogpogingen

Geef hackers geen kans meer die door middel van een zo geheten brute force attack jouw inloggegevens proberen te achterhalen. Met een brute force attack proberen hackers door middel van systematisch wachtwoorden en encryptiesleutels uit te proberen een weg naar binnen te wanen. Standaard zit er geen beperking op het totaal aantal inlogpogingen binnen WordPress. Dit is vrij eenvoudig in te stellen door middel van een plugin. De plugin die wij hiervoor gebruiken heet ‘Limit Login Attempts’. Met deze plugin kun je het aantal inlogpogingen beperken tot maximaal vier inlogpogingen. Na de vierde keer het geprobeerd te hebben zul je WordPress website automatisch blokkeren. Hierdoor is een aanval op jouw website veel minder interessant. Een echte must have voor jouw WordPress website.

10. Beveilig je headers

Zorg ervoor dat je de X-Frame-Options, X-Content-Type-Options & Strict-Transport-Security layers beveiligd. Dit kun je doen door onderstaande code in je .htaccess bestand te zetten. Vervolgens kun je een test doen via securityheaders.com om te zien wat je score is. In combinatie met SSL en dit stukje code zou je minimaal een C moeten scoren.

# Set browser headers
<IfModule mod_headers.c>
Header set Strict-Transport-Security "max-age=31536000" env=HTTPS
Header always set X-Frame-Options "SAMEORIGIN"
Header always set X-Xss-Protection "1; mode=block"
Header always set X-Content-Type-Options "nosniff"
</IfModule>

11. Beveiligde verbinding via HTTPS

Wat vandaag de dag niet mag ontbreken aan jouw website is een beveiligde verbinding via https door middel van een SSL-certificaat. Met een beveiligde verbinding encrypt je de gegevensstroom die vanaf jouw website plaats vindt. Denk hierbij ingevulde contactformulieren, bestelformulieren, persoonlijke klantgegevens. Bovendien geven zoekmachines ook een hogere prioriteit aan websites met een beveiligde SSL-verbinding. Een SSL-certificaat is in vele gevallen gratis aan te vragen. Een erg bekende certificaat, is het Let’s Encrypt certificaat. Hiermee beveilig je jouw hoofddomein en subdomeinen. Soms Is het ook noodzakelijk om alle verwijzingen van HTTP naar HTTPS te wijzigen. Hiervoor zijn ook erg handige plugins beschikbaar zoals Realy Simple SSL.

12. Je WordPress website beveiligen met Wordfence

Er zijn diverse plugins beschikbaar die enorm bijdragen aan het veiliger maken van jouw website. Een van die plugins is Wordfence. Deze plugin is verkrijgbaar in zowel een gratis als betaalde versie. Wordfence beschikt over een ingebouwde firewall, malware scanner & integriteitschecks. Maak voordat je Wordfence installeert en configureert wel eerst een back-up van jouw website. Mocht er iets mis gaan, dan kun je altijd nog terug vallen op een back-up. Let ook op dat je niet te veel beveiligings- plugins installeert. Dit zal ten eerste ten kosten gaan van de website prestaties, maar ook kunnen meerdere beveiliging plugins elkaar erg tegen gaan werken.

13. WordPress website back-up

Het laatste punt wat wij bespreken is het maken van back-ups! Mocht je na het uitvoeren van alle bovenstaande punten toch nog gehackt worden, dan is het wel handig om een back-up achterhanden te hebben. Maak daarom altijd van je WordPress website een back-up. Het maken van een WordPress back-up kan op drie manieren. Je kunt er voor kiezen om de back-up handmatig uit te voeren, wat vooral handig is als je de bestanden lokaal wil opslaan. Ook kun je een plugin gebruiken die de back-ups voor je maakt. Deze plugin installeer je op je WordPress website. Een bekende back-up plugin is bijvoorbeeld ‘UpdraftPlus’. Met deze plugin kun je een back-up schema instellen. Zo kun je er voor kiezen om eens per week een back-up te maken. Tot slot kun je ook op server niveau een back-up maken, dit kan bijvoorbeeld via Plesk, cPanel & DirectAdmin etc. Een WordPress back-up bestaat altijd uit twee delen: Website bestanden die je kunt downloaden via FTP en het database bestand dat je via phpMyAdmin kunt exporteren.

Kom je er uit?

Heb je na het lezen van dit artikel nog vragen? Dan helpen we je graag verder op weg! Je mag ook altijd een berichtje achterlaten onder in de reacties. Wil je dat wij de bovenstaande beveiligings- opties toevoegen aan jouw website? Dan helpen we je graag verder! Vergeet niet dit artikel een beoordeling te geven!