Workstation WSL Proxy
API 閘道、CDN 與企業 WAF:產品概覽
Workstation WSL Proxy(WSLProxy)是 Workstation 完整的 API 閘道與 CDN 邊緣控制平面。它位於您的來源伺服器前端,並依據即時的 JSON 與 MCP 設定,針對每個請求決定如何處理——路由、保護、快取與觀測——每次規則變更都無需重新載入 nginx。
API 閘道、CDN 與企業 WAF:產品概覽
Workstation WSL Proxy(WSLProxy)是 Workstation 完整的 API 閘道與 CDN 邊緣控制平面。它位於您的來源伺服器前端,並依據即時的 JSON 與 MCP 設定,針對每個請求決定如何處理——路由、保護、快取與觀測——每次規則變更都無需重新載入 nginx。
觀看: youtu.be/7NJulclG5sQ · Product: wslproxy.org
觀看: youtu.be/r10XSonA5JE · Product: wslproxy.org/waf
WSLProxy 是建構於 OpenResty 之上的動態 API 閘道與反向代理。營運人員可從管理介面、REST API、MCP 工具或 wslproxy-cli 管理虛擬主機、路由規則、WAF 政策、快取、流量分流與邊緣 POP。日常規則會在熱路徑上立即生效;只有伺服器層級的 listen 或 SSL 區塊變更時,nginx 才會重新載入。
上方兩個影片介紹了產品和 WAF。下方,閘道器和 CDN 邊緣位於您的源站之前,每個請求在到達源站前都會經過 WAF 管道。
就像解決方案手冊:比對一次,逐請求決策,然後代理或保護。一般規則變更時,控制平面完全不需要重新啟動邊緣。
瀏覽器、API 與代理連到 Workstation WSL Proxy 邊緣節點(Docker、裸機 Ansible POP,或 k3s Helm ingress)。OpenResty 接受 TLS 並進入 Lua 熱路徑。
gateway_ack.lua 載入虛擬主機,並從磁碟或 Redis 評估即時規則:路徑、IP、國家、JWT、S3、Cookie 等。由優先順序與特定性決定勝出者,無需重新載入 nginx。
閘道管線先執行速率限制,接著是 WAF 引擎(階段 + 特徵規則),然後由 gateway_resp.lua 套用回應動作與負載平衡器逾時設定。
典型結果:305 反向代理至上游、301/302 重新導向、靜態 HTML 攔截、CAPTCHA 挑戰,或帶有支援 ID 標頭的 403 WAF 封鎖。
對於代理回應,balancer_by_lua 會套用加權、RR、金絲雀、黏性或最少連線策略。健康狀態、指標與流量統計會提供給維運與 AI 日誌掛鉤。
人員使用管理介面/CLI;代理程式使用 REST 或 MCP 工具對伺服器、規則與 WAF 綁定進行增刪改查,同一套介面,適合 GitOps 的 pull/push 流程。
| 響應 | 含義 |
|---|---|
305 | 反向代理至上游(主要閘道路徑) |
301 / 302 | 重新導向 |
200 HTML | 靜態/品牌化封鎖頁面或插播頁面 |
CAPTCHA | 繼續之前先進行驗證挑戰 |
403 WAF | 遭 WAF 封鎖,並附帶 X-WAF-* 與 X-Support-ID 標頭 |
受控邊緣所需的一切:路由、安全、CDN 快取、多 POP 交付,以及人類與代理程式都能操作的控制平面。
可依路徑、IP、國家、JWT 宣告、S3 風格金鑰與 Cookie 比對。動作包括反向代理、重新導向、HTML 回應與 CAPTCHA。規則依優先順序排序,並以特異度作為同順位的判定依據,使最精確的路由獲勝,且無需重新啟動 nginx。
加權、輪詢、依標頭的金絲雀、Cookie 黏性工作階段,以及最少連線數負載平衡。當金絲雀看起來健康時,可從控制平面推進或回復後端,也能一個動作就撤回。
政策包可依網域、服務與路由綁定。各階段涵蓋方法允許清單、檔案類型拒絕、IP/地理清單、JWT 演算法政策、JSON 內容設定檔、暴力破解速率,以及 OpenAPI 正向安全,另有受管控的攻擊特徵與異常評分。可選擇封鎖模式或透明(監控)模式。
邊緣靜態快取、選用的 Docker blob 快取與 Varnish 掛鉤,在來源伺服器前提供 CDN 風格的一層,非常適合行銷網站、API 文件,以及與 API 閘道流量並行的產出物交付。
auto-ssl / Let’s Encrypt、每個網域的 SSL JSON,以及強制 HTTPS 政策,讓每個虛擬主機都能在 POP 正確終止 TLS。
宣告邊緣位置並佈建 Cloudflare A 記錄,並設有安全護欄。常見的正式環境模式是:公開 POP → k3s NodePort → wslproxy-ingress Helm → 應用程式 Pod。
React Admin 與 Next.js 儀表板、Swagger REST、適用於 Claude/Cursor 的 MCP 工具,以及用於 pull/push/diff/verify 工作流程的 wslproxy-cli 映像檔 (ghcr.io/bwalia/wslproxy-cli)。
實驗室用 Docker Compose,裸機或虛擬機 POP 用 Ansible,k3s / Kubernetes 用 Helm ingress-controller chart,跨環境皆為同一套產品介面。
/health, /healthz, /ready, Prometheus /metrics, traffic stats, structured WAF security logs, and AI log analysis hooks for SRE teams.
WAF 運行於 OpenResty 的請求路徑中(靈感來自企業級 NGINX WAF 模式)。預設為故障放行 (fail-open),因此 WAF 的錯誤不會讓網站掛掉;每次封鎖都可解釋,並向下相容簡單的 v1 規則清單。如需導覽與深入說明,請參閱下方相關閱讀,或觀看本頁的 WAF 影片。
| 違規 | 階段 | 詳情 |
|---|---|---|
VIOL_METHOD | 方法允許清單 | 僅允許的 HTTP 方法(例如 GET、POST、HEAD、OPTIONS)。 |
VIOL_FILETYPE | 檔案類型拒絕 | 封鎖 .env、.sql、.bak、.git、.pem 等敏感副檔名。 |
VIOL_IP_DENY / VIOL_GEO | IP 清單與地理位置 | 以 IP2Location 風格的資料庫設定允許/拒絕 CIDR 並拒絕特定國家。 |
VIOL_JWT_ALG | JWT 演算法政策 | 拒絕弱演算法(none、HS256);必要時要求使用 RS256/ES256。 |
VIOL_JSON_SIZE / DEPTH | JSON 本體設定檔 | 限制 JSON 深度與內容大小,以阻止剖析器濫用。 |
VIOL_BRUTE_FORCE | 暴力破解速度 | 依路徑的滑動視窗(例如 /api/login),以 IP 為鍵。 |
VIOL_OPENAPI_* | OpenAPI 正向安全 | 僅允許已宣告的路徑加方法組合(範本化路徑)。 |
每個特徵規則都有穩定的 ID(可定址單位)、類別/集合、嚴重性、比對目標(url、args、body、headers、cookies、UA 或 all)、正規表示式或字串模式、動作(block 或 monitor)與異常分數。
signatures.disable 會完全略過某條規則。
signatures.stage 僅在指定時間戳記之前發出警示,這是安全的推出方式,在暫存期間不會計入異常分數。
在封鎖與警示之間切換整組規則(例如 SET_SQLI),無需改寫每一條規則。
累積分數 ≥ 門檻時,即使沒有單一特徵碼足以封鎖,也會觸發 VIOL_ANOMALY_SCORE。
最具體者優先:路由覆寫 → 各伺服器的 waf_mode_override → 政策預設的 enforcementMode(阻擋或透明/監控)。每項發現都會記錄由哪個綁定勝出,讓日誌能回答「為什麼這個請求被阻擋?」
違規請求會回傳 403,並附支援 ID 與可選的品牌化封鎖頁面。
違規時僅發出警報並記錄,非常適合試跑與預備環境。
可解釋的 Web 應用程式防火牆,建立在同一個即時設定邊緣上:每項決策都附有政策、階段、監控或封鎖,以及支援 ID。
Workstation 正將 WSL Proxy 延伸至代理時代。同一個位於 HTTP API 前端的邊緣,將管控代理與 Model Context Protocol(MCP)用戶端如何存取工具與後端。
在外部 MCP 伺服器前方設置受管控的前門:驗證橋接、工具/方法的允許與拒絕清單、tools/call 稽核,以及每個工具的速率限制。用戶端永遠不會持有上游權杖。
針對多代理程式流量的政策、路由與可觀測性——讓代理程式機群透過與您的 API 和 CDN 工作負載相同的 Workstation WSL Proxy 邊緣存取源站。
WSLProxy 已將自身的管理介面以 MCP 工具形式提供給 Claude、Cursor 與其他代理程式,讓您無需離開 IDE 就能設定規則並檢視邊緣。
用戶端與代理程式會連到 Workstation WSL Proxy POP。邊緣節點比對即時規則、套用 WAF 與快取,再平衡負載至來源伺服器。營運人員可透過管理介面、REST、MCP 或 CLI 控制一切。
OpenResty + Lua 熱路徑:比對規則、回應、平衡後端。
規則、WAF 與流量分流來自磁碟或 Redis,日常變更無須重新載入 nginx。
適用於人員與代理程式的管理介面、REST、MCP 與 wslproxy-cli。
API、k3s 服務、靜態網站,以及未來的 MCP/代理程式上游。
請至 wslproxy.org 探索產品、閱讀 Workstation 上的 WAF 深度解析,或與我們洽談邊緣、CDN、WAF 與代理閘道部署。