Cloudflare Pro instellen voor je webshop: stappenplan
Terug naar blog

Cloudflare Pro instellen voor je webshop: stappenplan

9 min leestijd

Cloudflare Pro instellen voor je webshop: DNS, SSL, Managed Rules, custom rules en rate limiting in acht stappen, met de valkuilen die je shop breken.

Cloudflare aanzetten kost tien minuten. Het goed instellen kost een middag. Het verschil zie je pas als er iets misgaat: een checkout die niet meer laadt, klanten die in een captcha-lus zitten, of een aanvaller die gewoon het IP-adres van je server aanvalt.

Dit stappenplan loopt van DNS tot de eerste security-regels, voor een Magento-, Shopify- of Laravel-webshop. Het is bedoeld voor Cloudflare Pro, maar het meeste geldt ook voor Free. Waar het verschilt, zeggen we dat.

Voor het grotere plaatje: de security-pagina laat zien hoe we naar webshopbeveiliging kijken. Een WAF is één laag. Patchen, admin-toegang en extensies blijven even belangrijk.

Wat Cloudflare voor je doet (en wat niet)

Cloudflare zet zich als reverse proxy tussen bezoeker en server. Al het verkeer loopt via hun netwerk. Dat geeft je drie dingen:

  • Filtering. De WAF, rate limiting en bot-bescherming kijken mee voordat een request je server raakt.
  • DDoS-bescherming. Op alle plannen, van Free tot Enterprise.
  • CDN. Statische bestanden komen uit een cache dichtbij de bezoeker.

Wat Cloudflare niet doet: een kwetsbare Magento-versie veilig maken. Een WAF blokkeert bekende aanvalspatronen. Een lek in je code of in een extensie blijft een lek. Zie het als een extra laag, niet als vervanging van patchen.

Stap 1: voorbereiding

Doe dit vóór je iets omzet:

  1. Noteer je huidige DNS-records. Cloudflare importeert de meeste, maar controleer ze. Mail-records (MX, SPF, DKIM) moeten kloppen.
  2. Kijk waar je e-mail draait. MX-records en mail-subdomeinen zet je op "DNS only" (grijze wolk). E-mailverkeer loopt niet via de proxy.
  3. Check je SSL-certificaat op de server. Je wilt straks Full (strict) gebruiken. Daarvoor moet het certificaat op je origin geldig zijn. Zie Cloudflare SSL/TLS instellen.
  4. Spreek een moment af. Nameservers wisselen kan tot enkele uren duren. Doe het niet tijdens een campagne.

Stap 2: domein toevoegen en nameservers wijzigen

In het Cloudflare-dashboard voeg je je domein toe en kies je het Pro-plan. Cloudflare scant je bestaande DNS-records. Daarna krijg je twee nameservers. Die zet je bij je domeinregistrar in plaats van de oude.

Controleer na de wissel:

  • Of de site bereikbaar blijft.
  • Of mail nog aankomt.
  • Of subdomeinen als admin. of api. nog werken.

Een record met oranje wolk loopt via Cloudflare. Grijze wolk is alleen DNS. Voor je webshop zelf wil je oranje. Voor alles wat geen HTTP is (mail, SSH, FTP) grijs.

Stap 3: SSL/TLS goed zetten

Dit is de stap waar de meeste fouten ontstaan. Cloudflare kent vijf modi. De twee die ertoe doen:

ModusBezoeker → CloudflareCloudflare → server
FlexibleHTTPSHTTP (onversleuteld)
FullHTTPSHTTPS, certificaat niet gevalideerd
Full (strict)HTTPSHTTPS, certificaat gevalideerd

Cloudflare raadt zelf Full of Full (strict) aan. Flexible versleutelt alleen het stuk tussen bezoeker en Cloudflare. Het stuk tussen Cloudflare en je server blijft open. Bij een webshop met betaalgegevens wil je dat niet.

Kies Full (strict) zodra je origin een geldig certificaat heeft. Dat kan een publiek certificaat zijn of een Cloudflare Origin CA-certificaat.

Stap 4: Managed Rules aanzetten

Hier zit de kern van het Pro-plan. Op Pro kun je de volgende sets inschakelen:

  • Cloudflare Managed Ruleset. Regels tegen bekende aanvalstechnieken en kwetsbaarheden.
  • OWASP Core Ruleset. Cloudflares versie van de OWASP ModSecurity Core Rule Set, met een score per request.
  • Cloudflare Free Managed Ruleset. Staat op alle plannen.

Je zet ze aan via de Security-instellingen van je zone. Filter eventueel op "Web application exploits" en zet de set aan. Cloudflare maakt dan een regel met de actie Execute.

Begin met de Cloudflare Managed Ruleset. De OWASP-set vraagt meer tuning. Cloudflare waarschuwt er zelf voor dat die gevoelig is voor false positives. Lees eerst Cloudflare Managed Rules uitgelegd voor je hem aanzet.

Stap 5: eerste custom rules

Op Pro heb je 20 custom rules. Dat is genoeg voor een solide basis. Denk aan:

  • Beperk de Magento-admin tot bekende IP-adressen.
  • Daag verkeer naar login- en checkoutpaden extra uit.
  • Blokkeer paden die je shop niet gebruikt.

Let op: op Pro bestaat de actie Log niet voor custom rules. Je test dus niet "droog". Begin met Managed Challenge op een smal pad en kijk wat er gebeurt.

Stap 6: rate limiting

Pro geeft je twee rate limiting rules. Gebruik ze voor de plekken waar bots schade doen: login en checkout. De tellers kijken naar het IP-adres, over maximaal een minuut, met een blokkade tot een uur.

Stap 7: bot-bescherming

Pro bevat Super Bot Fight Mode. Dat daagt geautomatiseerd verkeer uit of blokkeert het. Let op je betaalproviders: een webhook van een PSP is ook "automatisch verkeer". Zet vooraf een uitzondering klaar.

Stap 8: controleer en monitor

Na de omzetting loop je dit na:

  • Checkout en betaling. Doe een testbestelling met de echte betaalmethoden.
  • Webhooks. Komen statusupdates van je PSP en ERP nog binnen?
  • Echte IP-adressen. Ziet je server nog de IP-adressen van bezoekers, of alleen die van Cloudflare? Dat los je op met de juiste header-instelling op je server.
  • Security events. Kijk in de eerste week dagelijks naar de WAF-events. Cloudflare bewaart ze 31 dagen op Free, Pro en Business.

Wat je na dag één nog regelt

  • Je origin afschermen, zodat aanvallers Cloudflare niet kunnen omzeilen.
  • Security headers instellen.
  • Alerts aanzetten voor aanvallen en DDoS.

Een goede opzet draait niet om zoveel mogelijk regels. Het draait om weinig regels die je begrijpt.

Plan de omzetting als een release

Een nameserverwissel is een productiewijziging. Behandel hem ook zo.

  • Kies een rustig moment. Niet vlak voor een campagne, niet tijdens een actie. Een doordeweekse avond met weinig verkeer is genoeg.
  • Verlaag de TTL vooraf. Zet de TTL van je belangrijkste DNS-records een dag eerder laag. Dan werkt een terugdraaiactie sneller door.
  • Neem alle DNS-records over en vergelijk. Cloudflare importeert records bij het toevoegen van het domein, maar dat is een scan, geen garantie. Zet de oude zone naast de nieuwe en loop elk record na.
  • Let op records die niet via de proxy mogen. Alleen webverkeer (HTTP/HTTPS) gaat via de proxy, de oranje wolk. Mailrecords (MX, SPF, DKIM, DMARC), een directe SSH-hostname en records voor een mailserver horen op "DNS only". Wie dit vergeet, ziet mail verdwijnen of een SSH-verbinding mislukken.
  • Noteer de huidige staat. Schermafbeelding of export van de oude DNS-zone, plus de huidige SSL-configuratie op de server. Zonder dat weet je bij een storing niet wat "terug" betekent.

Test direct na de omzetting

Loop deze lijst af, in deze volgorde. Doe het met een echte browser én met een mobiel netwerk, zodat je een andere route ziet dan vanaf kantoor.

ControleWat je ziet als het misgaat
Homepage, categorie, productOmleidingslus of certificaatfout
Product in winkelwagen, doorklikken naar checkoutSessie raakt kwijt, winkelwagen leeg
Testbestelling met je betaalproviderRetour van de betaalpagina faalt, order blijft "in afwachting"
Orderbevestiging per mailMail komt niet aan: DNS-record per ongeluk geproxied
Admin inloggenBlokkade, of foutieve IP-adressen in het admin-log
Webhooks van PSP en ERPStatussen worden niet meer bijgewerkt
Zoeken en filtersAjax-verzoeken geblokkeerd door een regel
Sitemap en robots.txtOude versie in cache of onbereikbaar
Cronjobs en queuesTaken die via de publieke URL draaien falen

Dit is de lijst waar de meeste omzettingen op stranden: betalen, webhooks en mail. Test die drie dus als eerste.

Zo draai je terug

Heb je een probleem dat je niet snel vindt, draai dan eerst terug en zoek daarna in alle rust.

  1. In het overzicht van je zone biedt Cloudflare een optie om Cloudflare tijdelijk te pauzeren. Dat laat verkeer rechtstreeks naar je server lopen, met behoud van je instellingen. Controleer in de Cloudflare-documentatie de actuele plek en werking van die optie.
  2. Lukt dat niet, zet de nameservers bij je domeinregistrar terug naar de oude. Door de lage TTL is dat sneller doorgevoerd.
  3. Haal pas daarna de oorzaak uit je logs, met het Ray ID van een mislukt verzoek.

Je vermijdt hiermee de meest voorkomende fout: in paniek regels uitzetten, terwijl de oorzaak een DNS-record of SSL-modus is.

Eerst loggen, dan blokkeren

Zet nieuwe regels niet meteen op Block als je verwacht dat ze legitiem verkeer raken. Begin met Managed Challenge of, waar je plan het toestaat, Log. Kijk een paar dagen in de events wat er gebeurt. Pas daarna ga je naar Block. Dat is het grootste verschil tussen een WAF die je shop beschermt en een WAF die je omzet raakt. De werkwijze staat in Cloudflare WAF false positives oplossen.

Wat je in de eerste week monitort

  • Het aantal geblokkeerde en uitgedaagde verzoeken per regel. Een regel die plots veel meer raakt, is verdacht.
  • Je conversieratio en het aantal mislukte betalingen. Een daling direct na de omzetting is een signaal, geen toeval.
  • Foutmeldingen in je server- en applicatielog, vooral 403, 429 en 52x-codes.
  • Klantmeldingen over "ik kom er niet in". Maak het makkelijk om die te melden en vraag om het Ray ID van de foutpagina.

Wil je dit niet zelf doen of liever laten controleren? Kijk bij onze aanpak voor webshop security.

Veelgestelde vragen

Is Cloudflare Pro genoeg voor een webshop?

Voor veel kleine en middelgrote webshops wel. Je krijgt Managed Rules, OWASP, 20 custom rules en Super Bot Fight Mode. Wat je mist is fijnmaziger controle, zoals regex in regels en meer rate limiting rules. Dat zit in Business en hoger.

Maakt Cloudflare mijn shop sneller?

Voor statische bestanden meestal wel. HTML en JSON cachet Cloudflare standaard niet. Een Magento-shop heeft dus nog steeds een goede full page cache nodig.

Kan ik Cloudflare voor Shopify gebruiken?

Voor je Shopify-storefront zelf regelt Shopify de beveiliging en de infrastructuur. Cloudflare voor het domein van een Shopify-shop is een aparte afweging. Controleer eerst wat Shopify daarover zegt voor jouw situatie.

Wat als mijn shop na de omzetting niet meer werkt?

Zet het betreffende DNS-record tijdelijk op grijze wolk (DNS only). Dan loopt het verkeer weer direct naar je server. Zoek daarna de oorzaak, meestal SSL-modus of een regel die te streng is.

Wil je dat een vast team dit inricht en bewaakt? Neem contact op.

Ruthger Idema

Geschreven door Ruthger Idema

15+ jaar ervaring in e-commerce development. Gespecialiseerd in Magento, Shopify en Laravel maatwerk.

Meer over ons team →
Deel dit artikel:

Wil je jouw e-commerce naar het volgende niveau?

Plan een vrijblijvend gesprek met onze experts over Magento, Shopify of Laravel maatwerk.

Plan een Tech Check