envoy-proxy-bouncer

command module
v0.8.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 7, 2026 License: MIT Imports: 1 Imported by: 0

README

Go Build License

CrowdSec Envoy Proxy Bouncer

CrowdSec bouncer for Envoy Proxy using the ext_authz filter.

[!WARNING] This project is in active development and has not been tested in production environments. Use at your own risk. Breaking changes may occur between releases. For the most stable experience, use a tagged release rather than the main branch.

Features

  • Block malicious IPs streamed via CrowdSec decisions
  • Bouncer metrics reporting
  • Request inspection via CrowdSec AppSec
  • CAPTCHA challenges for suspicious IPs with support for:
    • Google reCAPTCHA v2
    • Cloudflare Turnstile
  • Crowdsec AppSec bot challenges

Supported CrowdSec Versions

The following CrowdSec versions have been tested. Other versions may work but have not been validated.

CrowdSec Version Status
v1.7.0
v1.7.2
v1.7.3
v1.7.4
v1.7.6
v1.7.7
v1.7.8
v1.8.0
v1.8.1

How It Works

Integrates with Envoy as an external authorization service. Each request is evaluated by:

  1. Extracting client IP from forwarded headers
  2. Checking CrowdSec decision cache for IP-based ban or captcha decisions
  3. Inspecting request with CrowdSec AppSec WAF (if enabled)
  4. Enforcing decisions:
    • Allow: request proceeds
    • Ban: return 403 with ban page
    • Captcha: redirect to challenge page
    • Challenge: pass AppSec's bot challenge page through to the client

Ban Page

Documentation

Examples

Acknowledgments

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
pkg
crowdsec/mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.
mocks
Package mocks is a generated GoMock package.
Package mocks is a generated GoMock package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL