De kracht van het World Wide Web is dat je in verbinding staat met de hele wereld en de hele wereld met jou. Of in dit geval met jouw website of applicatie. Maar er zijn argumenten waarbij dit niet altijd een meerwaarde heeft. De drie meest genoemde redenen om GeoBlocking toe te passen zijn; het besparen van resources, het beperken van ongewenste verspreiding van informatie en het beschermen van jouw website of applicatie.
Resources: bespaar rekenkracht en bandbreedte
Wanneer jouw doelgroep of afzetmarkt zich binnen Europa bevindt, waarom zou je dan een website belasten met verkeer uit andere landen? Open Analytics of een access log van een gemiddelde website en je zult ontdekken dat deze wordt aanroepen van over de hele wereld. Dat kan zomaar oplopen tot 10 a 20% van het totaal aan aanroepen voor een gemiddelde zakelijke website. Bij websites met veel verkeer ligt dit percentage uiteraard lager omdat er meer doelgericht verkeer (echte bezoekers) binnenkomen..
Een gemiddelde website gaat als het goed is geen hinder ervaren van deze 10 a 20% extra aanroepen. Deze zou anders na een mailing of social media post ook een probleem ervaren. Sommige websites en webshops hebben pagina’s die veel rekenkracht vereisen. Denk aan productpagina’s waarbij meerdere filters resulteren in een zware database opdracht. Je kunt je dan afvragen of die extra belasting van buitenlands verkeer wenselijk is als je bijvoorbeeld toch al een drukke periode ingaat.
Het blokkeren van landen kan eenvoudig, dus dit is een quick win. Al zouden wij hier adviseren om aan de hand van tools als Blackfire.io of Sentry.io de knelpunten in je website op te sporen en die te verhelpen.
Afscherming: niet alles hoeft wereldwijd zichtbaar te zijn
Van de drie argumenten in deze blog zal afscherming de zwakste zijn. Wil je niet dát iets online te vinden is, publiceer het dan niet openlijk. Maar hier zijn ook nuances in te vinden. Want moet nou écht alle informatie de wereld over als dit alleen voor een lokale doelgroep is? Mocht dit een overweging zijn dan zul je niet alleen landen moeten blokkeren maar ook alle zoekmachines die de website kunnen indexeren. Dit kan middels een tekstbestand robots.txt. Hierin kun je opdrachten meegeven aan de bots/crawlers van zoekmachines.
Bijvoorbeeld:
User-agent: *
Disallow: /
In dit geval geef je aan dat niemand de website mag indexeren. De wat grotere AI bots luisteren ook naar robots.txt al is ook de daarvoor meer specifieke llms.txt in opkomst. In de praktijk zien we echter terug dat lang niet alle, relatief nieuwe AI bots, luisteren naar deze instructies.
Bescherming: beperk aanvallen en SPAM
Het sterkste argument voor het blokkeren van landen voor jouw website of applicatie is het beperken van aanvallen en SPAM. De top 10 van landen waar aanvallend verkeer van afkomstig is verschilt per type aanval of hinder.
Bij DDoS verkeer zien we vooral Indonesië, Singapore en Hong Kong de boventoon voeren (Nederland staat in de top 9). Dankzij goede internet infrastructuur kan ieder apparaat, van laptop tot webcam, een bijdrage leveren aan een DDoS-aanval. Dit verkeer filteren we veelal via NaWas uit voordat dit uitkomt op een webserver.
Bij verkeer op applicatieniveau zien we Rusland, India en China bovenaan. Voor een gemiddelde server bij Rootnet met 200 tot 300 websites ziet de hele top 10 er tijdens één etmaal aan aanroepen er als volgt uit:
- 28679 requests vanuit RU (Rusland)
- 18216 requests vanuit IN (India)
- 7801 requests vanuit CN (China)
- 5043 requests vanuit BR (Brazilië)
- 4422 requests vanuit IR (Iran)
- 3946 requests vanuit UA (Oekraïne)
- 1125 requests vanuit PH (Filipijnen)
- 735 requests vanuit BY (Wit-Rusland)
Dit verkeer bestaat grotendeels uit loginpogingen, XML-RPC-aanvallen of SPAM via formulieren, namelijk:
- POST /xmlrpc.php
- POST /wp-login.php
- GET /wp-login.php
- GET /
- GET /contact/
- GET /robots.txt
- POST /
- GET /wp-login.php?wp_lang=en_US
- POST /wp-login.php?wp_lang=en_US
- POST /contact/
Het bestaat dus vooral uit pogingen om invloed uit te oefenen op WordPress websites. Maar ook veelvoorkomende pagina’s als /contact krijgen meteen te maken met POST data die, zonder captcha, kan resulteren in SPAM berichten vanuit je eigen website. Gelukkig hebben we voor ieder CMS en framework maatregelen getroffen waaronder brute force protectie en rate limiting.
Bescherming op applicatieniveau blijft de voorkeur ten opzichte van het blokkeren van landen. De landen waar aanvallend verkeer vandaan komt kan met de dag wijzigen en wanneer er spraken is van een gerichte aanval kan eenvoudig gebruik worden gemaakt van een proxy. Desondanks is GeoBlocking wel effectief. Vooral bij webservers met veel websites zien we na activatie minder hinder van aanvallen en SPAM.
GeoBlocking toepassen
Voor websites en applicaties passen we by default GeoBlocks toe op landen waar op dat moment veel verdacht verkeer afkomstig is. Dat resulteert direct in stabielere websites en minder SPAM. Via onze portal kun je deze default op projectniveau ook weer aanpassen. Bijvoorbeeld omdat je expliciet een land wilt vrijgeven. Of omdat je meer landen wilt uitsluiten dan wij op dat moment aanbevelen. Ons platform is zich bewust van bots zoals Google, Bing en ChatGPT. Deze vallen buiten een Geoblock en kunnen hiermee niet per ongeluk buiten worden gesloten.
