TenthMatrix WSL Proxy
API-gateway, CDN en enterprise-WAF — Productoverzicht
TenthMatrix WSL Proxy (WSLProxy) is het complete API-gateway- en CDN-edge-controlplane van TenthMatrix. Het staat voor uw origins en bepaalt per request wat er gebeurt — routeren, beveiligen, cachen en observeren — op basis van live JSON- en MCP-configuraties, zonder nginx bij elke regelwijziging te herladen.
Wat is TenthMatrix WSL Proxy?
WSLProxy is een dynamische API-gateway en reverse proxy op OpenResty. Operators beheren virtual hosts, routeringsregels, WAF-policies, cache, traffic splits en edge-POP's via een Admin UI, REST API, MCP-tools of de wslproxy-cli. Dagelijkse regels worden direct op het hot path actief; nginx herlaadt alleen als listen- of SSL-blokken op serverniveau veranderen.
Watch the overview

Bekijk: introductie TenthMatrix WSL Proxy
Bekijken
Bekijk op YouTube: Bekijk: introductie TenthMatrix WSL Proxywslproxy.org
Bekijk: WSL Proxy WAF-tour
Bekijken
Bekijk op YouTube: Bekijk: WSL Proxy WAF-tourwslproxy.org/waf
Hoe de proxy werkt
Als een oplossingsplaybook: één keer matchen, per request beslissen, dan proxyen of beschermen. Het controlplane hoeft de edge nooit te herstarten voor gewone regelwijzigingen.
Request komt aan bij een POP
Browsers, API's en agents bereiken een TenthMatrix WSL Proxy-edge (Docker, bare-metal Ansible-POP of k3s Helm-ingress). OpenResty accepteert TLS en gaat het Lua-hot path in.
Matchen met een routeringsregel
gateway_ack.lua laadt de virtual host en evalueert live regels vanaf schijf of Redis: pad, IP, land, JWT, S3, cookie en meer. Prioriteit en specificiteit bepalen de winnaar — zonder nginx-reload.
Pipeline: rate limit → WAF → respons
De gatewaypipeline voert rate limits uit, dan de WAF-engine (stages + signatures), waarna gateway_resp.lua de responsactie en balancer-timeouts toepast.
De uitkomst bepalen
Typische uitkomsten: 305 reverse proxy naar een upstream, 301/302-redirect, statisch HTML-blok, CAPTCHA-challenge of 403 WAF-blokkade met support-ID-headers.
Balanceren en observeren
Voor proxyresponses past balancer_by_lua weighted, RR, canary, sticky of least-conn toe. Health, metrics en verkeersstatistieken voeden ops en AI-loghooks.
Operators en agents sturen de config
Mensen gebruiken de Admin UI / CLI; agents gebruiken REST- of MCP-tools voor CRUD op servers, regels en WAF-binds — dezelfde interface, GitOps-vriendelijk pull/push.
| Code | Betekenis |
|---|---|
| 305 | Reverse proxy naar upstream (primair gatewaypad) |
| 301 / 302 | Redirect |
| 200 HTML | Statisch / gebrand blok of tussenpagina |
| CAPTCHA | Challenge vóór doorgaan |
| 403 WAF | Geblokkeerd door WAF met X-WAF-*- en X-Support-ID-headers |
Belangrijkste productfuncties in detail
Alles voor een beheerste edge: routering, beveiliging, CDN-cache, multi-POP-levering en een controlplane dat zowel mensen als agents kunnen bedienen.
Dynamische routeringsregels
Match op pad, IP, land, JWT-claims, S3-achtige keys en cookies. Acties zijn onder meer reverse proxy, redirect, HTML-responses en CAPTCHA. Regels worden op prioriteit gesorteerd met specificiteit als tiebreaker, zodat de meest precieze route wint zonder nginx te herstarten.
Traffic engineering
Weighted, round-robin, header-based canary, sticky sessions via cookie en least-conn-balancing. Promoot of rol backends terug vanuit het controlplane wanneer een canary er healthy uitziet — of trek hem in één actie terug.
Enterprise WAF-engine v2
Policypacks worden per domein, service en route gekoppeld. Stages omvatten method-allowlists, filetype-deny, IP-/geolijsten, JWT-algoritmebeleid, JSON-bodyprofielen, brute-force-velocity en OpenAPI positive security — plus beheerde aanvalssignatures en anomaly scoring. Blocking- of transparent-modus (monitor).
CDN en edge-cache
Statische edge-cache, optionele Docker-blobcache en Varnish-hooks geven u een CDN-achtige laag voor uw origins — ideaal voor marketingsites, API-documentatie en artefactlevering naast API-gatewayverkeer.
SSL en HTTPS
auto-ssl / Let’s Encrypt, SSL-JSON per domein en force-HTTPS-beleid, zodat elke virtual host TLS correct op de POP termineert.
Multi-POP + DNS
Declareer edgelocaties en richt Cloudflare A-records in met veiligheidsgrenzen. Een gangbaar productiepatroon is publieke POP → k3s NodePort → wslproxy-ingress Helm → app-pods.
Controlplane
React Admin- en Next.js-dashboards, Swagger REST, MCP-tools voor Claude/Cursor en de wslproxy-cli-image (ghcr.io/bwalia/wslproxy-cli) voor pull/push/diff/verify-workflows.
Overal deployen
Docker Compose voor labs, Ansible voor bare-metal- of VM-POP's en Helm ingress-controller-charts voor k3s / Kubernetes — één productinterface in alle omgevingen.
Observability
/health, /healthz, /ready, Prometheus /metrics, traffic stats, structured WAF security logs, and AI log analysis hooks for SRE teams.
WAF-regels en handhaving
De WAF draait in het OpenResty-requestpad (geïnspireerd op enterprise NGINX WAF-patronen). Standaard is hij fail-open, zodat een WAF-bug de site niet kan platleggen, uitlegbaar bij elke blokkade en backwards compatible met eenvoudige v1-regellijsten. Zie de gerelateerde artikelen hieronder voor een rondleiding en deep dive — of bekijk de WAF-video op deze pagina.
Pipeline in het requestpad
- rewrite_by_lua: gateway_ack.lua selecteert de routeringsregel
- gateway_pipeline.execute(): rate limit → WAF → doorgaan
- waf_engine.inspect(): laadt policy, bepaalt binding, voert stages uit en daarna signatures
- Bij blokkade: 403 + X-WAF-Block, X-WAF-Rule, X-WAF-Violation, X-Support-ID
Stagepipeline (vóór signatures)
| Code | Fase | Detail |
|---|---|---|
| VIOL_METHOD | Method-allowlist | Alleen toegestane HTTP-methoden (bijv. GET, POST, HEAD, OPTIONS). |
| VIOL_FILETYPE | Filetype-deny | Blokkeer gevoelige extensies zoals .env, .sql, .bak, .git, .pem. |
| VIOL_IP_DENY / VIOL_GEO | IP-lijsten en geo | Sta CIDR's toe/weiger ze en weiger landen via een IP2Location-achtige DB. |
| VIOL_JWT_ALG | JWT-algoritmebeleid | Weiger zwakke algoritmen (none, HS256); vereis RS256/ES256 waar nodig. |
| VIOL_JSON_SIZE / DEPTH | JSON-bodyprofiel | Begrens JSON-diepte en bodygrootte om parsermisbruik te stoppen. |
| VIOL_BRUTE_FORCE | Brute-force-velocity | Sliding windows per pad (bijv. /api/login) per IP. |
| VIOL_OPENAPI_* | OpenAPI positive security | Sta alleen gedeclareerde pad+methode-combinaties toe (getemplatete paden). |
Signatureregels en governance
Elke signature heeft een stabiele ID (de adresseerbare eenheid), categorie/set, severity, matchdoel (url, args, body, headers, cookies, UA of all), regex- of stringpatroon, actie (block of monitor) en anomaly score.
disable
signatures.disable slaat een regel volledig over.
stage
signatures.stage geeft alleen alarmen tot een tijdstip — een veilige uitrol die tijdens staging nooit bijdraagt aan de anomaly score.
signature-sets
Schakel hele sets (bijv. SET_SQLI) tussen block en alarm zonder elke regel te herschrijven.
anomaly-drempel
Een cumulatieve score ≥ drempel triggert VIOL_ANOMALY_SCORE, ook als geen enkele signature op zichzelf zou blokkeren.
Bindingvoorrang
De meest specifieke wint: route-override → waf_mode_override per server → standaard enforcementMode van de policy (blocking of transparent/monitor). Elke bevinding legt vast welke binding won, zodat logs antwoord geven op “waarom is dit geblokkeerd?”
Blocking
Overtredingen geven 403 terug met support-ID en optionele gebrande blokpagina.
Transparent / monitor
Overtredingen geven alleen alarm en worden gelogd — ideaal voor dry-runs en staging.
Agents Gateway en MCP Gateway
TenthMatrix breidt WSL Proxy uit naar het agenttijdperk. Dezelfde edge die HTTP-API's afschermt, bepaalt straks hoe agents en Model Context Protocol (MCP)-clients tools en backends bereiken.
In progress
MCP Gateway (in ontwikkeling)
Een beheerde voordeur voor externe MCP-servers — auth-bridging, allow/deny-lijsten voor tools/methoden, audit van tools/call en rate limits per tool. Clients hebben nooit upstream-tokens in handen.
In progress
Agents Gateway (in ontwikkeling)
Policy, routering en observability voor multi-agentverkeer — zodat agentvloten origins bereiken via dezelfde TenthMatrix WSL Proxy-edge als uw API's en CDN-workloads.
Available
MCP-beheerinterface (beschikbaar)
WSLProxy biedt zijn eigen Admin-interface al aan als MCP-tools voor Claude, Cursor en andere agents — configureer regels en inspecteer de edge zonder uw IDE te verlaten.
Oplossingsarchitectuur
Clients en agents bereiken een TenthMatrix WSL Proxy-POP. De edge matcht live regels, past WAF en cache toe en balanceert naar origins. Operators sturen alles via Admin UI, REST, MCP of CLI.
Edge-POP
OpenResty + Lua hot path: regels matchen, antwoorden, backends balanceren.
Live config
Regels, WAF en traffic splits vanaf schijf of Redis — geen nginx-reload voor dagelijkse wijzigingen.
Controlplane
Admin UI, REST, MCP en wslproxy-cli voor mensen en agents.
Origins
API's, k3s-services, statische sites en toekomstige MCP-/agent-upstreams.
Verder op de productsite
Bezoek wslproxy.org voor demo's, documentatie en de nieuwste TenthMatrix WSL Proxy-releases.
TenthMatrix WSL Proxy downloaden
Ontdek het product op wslproxy.org, lees de WAF-deep-dive op TenthMatrix of praat met ons over edge-, CDN-, WAF- en agentgateway-deployments.