Total Security Suite - Firewall, Captcha, 2FA & Scanner. Total Security bundelt in één module een webapplicatiefirewall, een captcha voor de formulieren van de webwinkel, tweestapsverificatie (2FA) voor de back-office en voor klanten, een lokale scanner voor malware/webshells en een live beveiligingsscore die aangeeft wat u kunt verbeteren. Alles draait op uw eigen server: niets verlaat uw webwinkel. Geen programmeerwerk, geen aanpassingen aan het thema.
Total Security bundelt in één module een webapplicatiefirewall, een captcha voor de formulieren van de webwinkel, tweestapsverificatie (2FA) voor de back-office en voor klanten, een lokale scanner voor malware/webshells en een live beveiligingsscore die aangeeft wat u kunt verbeteren. Alles draait op uw eigen server: niets verlaat uw webwinkel. Geen programmeerwerk, geen aanpassingen aan het thema.
1. Installatie
- Ga in de back-office naar Modules → Module Manager → Upload a module en selecteer de zip van de module.
- Klik na de installatie op Configure. Er opent een kort paneel met een knop Go to configuration die u naar de volledige pagina brengt.

.local, .test, localhost) zijn altijd toegestaan. Zodra er een nieuwe versie beschikbaar is, wordt dat direct in de module getoond.Ziet u in plaats van de bevestiging de melding ‘Upload failed’, dan heeft PrestaShop de module mogelijk zonder melding uitgeschakeld: uw instellingen en gegevens blijven behouden. Hoe u een module bijwerkt en wat u doet bij de melding ‘Upload failed’.
2. Configuratie: de tabbladen
De modulepagina is bovenaan in tabbladen georganiseerd: Dashboard, Firewall rules, Blocked log, Login protection, Captcha, Two-factor auth, Malware scanner en Settings.
Dashboard beveiligingsscore
Een live Security score met een lettercijfer (A/B/C/D), berekend op basis van de instellingen van uw webwinkel, de lagen firewall/captcha/2FA en de laatste malwarescan (niets verlaat uw server). Daaronder staat een Checklist met beveiligingscontroles (zichtbare voorbeelden: debugmodus uit in productie, overal HTTPS afgedwongen, webapplicatiefirewall actief, captcha bij inloggen/registreren, tweestapsverificatie voor de back-office, geen malware/webshell gedetecteerd, mapnaam van de back-office niet te raden, beveiligingstoken van de back-office ingeschakeld). Items die aandacht nodig hebben, tonen een snelkoppeling Fix now die direct naar de betreffende instelling springt.

Firewall rules
Voeg de regellijsten toe en beheer ze met één formulier Add a rule: Whitelist IP/CIDR (vertrouwd, omzeilt alles), Blacklist IP/CIDR (geblokkeerd), Country rules (ISO-2-codes), Bad user-agents (overeenkomst met deelstring), Custom attack patterns (overeenkomst met deelstring) en een Pattern whitelist (/module/designer/save voor het adres van een pagina, met een * aan het eind voor de adressen daaronder; ?fc=module&module=designer&controller=save of ?controller=search voor een pagina ongeacht het adres; elke andere tekst voor een volledige waarde. Een vermelding komt nooit overeen met een deel van een waarde: een waarde die haar alleen bevat, wordt toch gecontroleerd). Een banner toont uw huidige IP-adres en waarschuwt u dat u dit op de whitelist moet zetten voordat u de lockdownmodus of back-office-alleen-whitelist inschakelt, zodat u zichzelf nooit buitensluit.

Blocked log
Elk geblokkeerd verzoek wordt vastgelegd met datum, IP-adres, land, reden (bijvoorbeeld user_agent, attack_pattern, ip, rate, login), details, de opgevraagde URI en de user-agent. Filter op reden of IP-adres, Export CSV, Clear log, of deblokkeer hier direct een IP-adres.

Login protection
Houdt inlogpogingen in de back-office bij en blokkeert een account/IP-adres na te veel mislukte pogingen binnen een tijdvenster; u kunt een item handmatig deblokkeren. Mislukte pogingen worden geteld op PrestaShop 1.7, 8 en 9, en een geblokkeerd adres wordt geweigerd nog voordat het wachtwoord wordt gecontroleerd, ook op PrestaShop 9. Stel de drempels in bij Settings (Back-office login protection). Ook het inloggen van klanten tijdens het afrekenen (checkout) heeft een limiet voor mislukte pogingen per IP-adres (het dubbele van de back-office-drempel, binnen hetzelfde tijdvenster): boven de limiet keert de klant terug naar het afrekenen met een melding om enkele minuten te wachten.

Captcha
- Captcha provider: kies Google reCAPTCHA v2 (selectievakje), reCAPTCHA v3, hCaptcha, Cloudflare Turnstile of de provider Lightweight, die geen sleutels nodig heeft en alles op uw server houdt.
- Site key / Secret key: uit het dashboard van de gekozen provider, reCAPTCHA v3 score threshold, widget theme, badge position, lightweight token lifetime.
- Protected forms: Login, Registration, Forgot password, Contact form, Newsletter, Product review, Guest checkout (elk aan/uit).
- Advanced: Fail closed (blokkeren als de provider onbereikbaar is), Skip captcha for logged-in customers, Verification timeout, Trusted IP whitelist, verify hostname, verify action.
- Rate limiting: beperk mislukte captchapogingen met een maximum en een tijdvenster.

Two-factor auth (2FA)
Tijdgebonden eenmalige codes (Google Authenticator, Authy, 1Password en elke compatibele app). Niets verlaat uw server: geheimen worden versleuteld opgeslagen en lokaal geverifieerd.
- Your account: stel 2FA in voor het account waarmee u bent aangemeld (scan een QR-code, voer een code van 6 cijfers in).
- Enable 2FA for the back office (medewerkers) en/of for customers (winkel).
- Force 2FA for specific employee profiles, op id (1 = SuperAdmin, 2 = Logistician, 3 = Translator, 4 = Salesman); vermelde profielen kunnen de back-office niet gebruiken totdat ze zich hebben aangemeld.
- Tolerance window, number of backup codes, issuer name die in de app wordt getoond.
- Enrolled employees en enrolled customers worden vermeld en kunnen worden gereset.

Malware scanner
Lokale scan op malware / webshells: zoekt naar bekende handtekeningen van webshells en obfuscatie, uitvoerbare code verborgen in mediamappen en bestanden die zijn toegevoegd of gewijzigd sinds uw vertrouwde basislijn. Alles draait op de server: geen enkel bestand, geen hash en geen pad verlaat de webwinkel.
- Metrics: verdachte bestanden, bestanden in de basislijn, laatste scan.
- Run scan now en Set current files as trusted baseline.
- Bevindingen worden getoond met severity, what, file en when.

Settings firewallconfiguratie
De eigen configuratie van de firewall, per sectie gegroepeerd.
- General: Enable firewall; Behind a proxy/CDN met een vertrouwde proxy-header en vertrouwde proxy-IP’s/CIDR’s, schakel dit alleen in achter een echte vertrouwde proxy, anders zijn de headers voor IP/land te vervalsen.
- IP/CIDR blocking.
- Country blocking: modus met blokkeerlijst of toestaanlijst, ISO-2-codes, een optioneel pad naar een MaxMind GeoLite2-database of een landenheader van de CDN; de database wordt om licentieredenen nooit meegeleverd.
- Bad bots / user-agents: schakel UA-blokkering in, blokkeer lege UA, extra geblokkeerde deelstrings die met een ingebouwde lijst worden samengevoegd.
- Rate limiting: maximaal aantal verzoeken per venster, vensterduur in seconden, duur van de tijdelijke blokkade.
- Attack-pattern blocking: SQLi/XSS/LFI/probing. Elk veld van een verzonden formulier wordt gecontroleerd; een verzending groter dan 2 MB, dieper genest dan 32 niveaus of die niet tot het einde kan worden gelezen, wordt geweigerd (logredenen
inspection_limiteninspection_error). Een echte checkout blijft ver onder deze grenzen; als een van uw modules vanuit de winkel terecht grotere gegevens verstuurt, voeg dan het pad van het adres (bijvoorbeeld/module/designer/save) toe aan de Pattern whitelist. - Back-office login protection: maximaal aantal mislukte pogingen, venster voor pogingen, duur van de blokkade, back-office alleen toestaan vanaf IP’s op de whitelist.
- Maintenance & logging: Lockdown mode (alleen IP’s op de whitelist toestaan), geblokkeerde verzoeken loggen, bewaartermijn van logs in dagen, alle gegevens wissen bij verwijderen.
- Weekly security report: verstuurt per e-mail een kort rapport; draait op de achtergrond in kleine stappen, zodat het de webwinkel nooit vertraagt.

In de webwinkel
Wanneer de firewall een verzoek blokkeert, krijgt de bezoeker een eenvoudige 403-pagina ‘Forbidden, your request has been blocked by the site firewall’: bots en scanners komen nooit in uw webwinkel.

3. Controleer of het werkt
- Open het Dashboard en lees uw beveiligingsscore en checklist.
- Verstuur een verzoek met een user-agent die op een scanner lijkt (of een URL voor probing) en controleer of u de 403-blokkeerpagina krijgt en een nieuwe rij in het Blocked log.
- Na meerdere mislukte inlogpogingen in de back-office wordt het account/IP-adres geblokkeerd in Login protection.
- Schakel captcha in en controleer of die op het formulier voor inloggen/registreren verschijnt.
- Stel 2FA in voor uw account en log opnieuw in met een code van 6 cijfers.
- Voer de Malware scanner uit en lees de bevindingen.
4. FAQ
Maakt de module de webwinkel trager?
Nee: de firewall draait als eerste met goedkope, geïndexeerde opzoekingen; de scanner en het wekelijkse rapport draaien op de achtergrond.
Sluit de module mij buiten?
Zet eerst uw huidige IP-adres op de whitelist (de pagina waarschuwt u; bij de installatie zet de module alleen uw openbare adres op de whitelist, nooit lokale adressen zoals 127.0.0.1/::1 of die van de proxy); schakel pas daarna de lockdownmodus of back-office-alleen-whitelist in. Ziet de module uw verbinding met een lokaal of privéadres (bijvoorbeeld 127.0.0.1), dan waarschuwt de back-office u: achter een proxy, een load balancer of een CDN komen waarschijnlijk alle bezoekers met hetzelfde adres binnen. Schakel dan de optie Behind a proxy/CDN in bij Settings (en voeg het adres van de proxy toe aan de vertrouwde proxy's als het niet 127.0.0.1 is).
modules/cll_totalsecurity met de hand (via FTP of een bestandsbeheerder) om weer binnen te komen, leeg dan direct daarna de cache van PrestaShop: maak de map var/cache/prod leeg of voer php bin/console cache:clear --env=prod uit als de gebruiker van de webserver. Zolang de cache niet is geleegd, antwoordt de back-office met een fout 500; de winkel blijft gewoon werken. De module uitschakelen of de-installeren via de Module Manager heeft dit probleem niet.Verlaten er gegevens mijn server?
Nee: de firewall, de captcha-optie Lightweight, de 2FA-geheimen en de malwarescanner draaien allemaal lokaal op uw server.
Vervangt de module afzonderlijke modules voor firewall / captcha / 2FA?
Ja: het is de enige, geïntegreerde beveiligingssuite.
Moet ik mijn thema aanpassen?
Nee: de module werkt via standaard hooks en is compatibel met elk thema.
