Skip to Content
DocumentationEdge ComputeCloudflare Workers

Cloudflare Workers

Das Abfangen von Datenverkehr am Edge ist der effizienteste Weg, ProxyTracer zu nutzen. Durch die Implementierung dieser Middleware in einem Cloudflare Worker werden schädliche Anfragen direkt auf CDN-Ebene abgewiesen, bevor sie Serverressourcen verbrauchen.

Die Implementierung

Dieses Snippet extrahiert die tatsächliche Client-IP über native Cloudflare-Header, fragt die ProxyTracer-API ab und gibt bei Erkennung eines Proxys sofort 403 Forbidden zurück.

export default { async fetch(request: Request, env: Env, ctx: ExecutionContext): Promise<Response> { // 1. Echte IP extrahieren (Cloudflare stellt dies nativ bereit) const ip = request.headers.get("cf-connecting-ip"); // Durchleiten, wenn keine IP gefunden wird (z. B. lokale Entwicklung) if (!ip) { return fetch(request); } try { // 2. Die ProxyTracer-API abfragen const ptResponse = await fetch(`https://api.proxytracer.com/v1/check/${ip}`, { method: "GET", headers: { "Authorization": `Bearer ${env.PROXYTRACER_API_KEY}` } }); if (ptResponse.ok) { const data = await ptResponse.json(); // 3. Verbindung trennen, falls ein Proxy/VPN erkannt wird if (data.proxy === true) { return new Response( JSON.stringify({ error: "Access Denied: VPN or Proxy detected." }), { status: 403, headers: { "Content-Type": "application/json" } } ); } } } catch (error) { // Fail-Open: Wenn die API nicht erreichbar ist, Traffic erlauben, um die Verfügbarkeit sicherzustellen console.error("ProxyTracer API Error:", error); } // 4. Bereinigter Traffic wird an Ihren Origin-Server weitergeleitet return fetch(request); } };

Sicherheitshinweis: Speichern Sie Ihren PROXYTRACER_API_KEY immer als verschlüsseltes Secret im Cloudflare Worker-Dashboard und niemals als Klartext.

Zuletzt aktualisiert am