Overview of rpxy features
developrpxy is a lightweight Layer 7 (HTTP) reverse-proxy written in Rust. It is designed to route multiple hostnames to backend application servers while handling TLS termination.
Key features include:
- Protocol Support: HTTP/1.1, HTTP/2, and HTTP/3 (via
quinnors2n-quic). - gRPC Support: Native support for gRPC traffic.
- TLS/SSL: TLS termination for multiple domains, Mutual TLS (mTLS) with client certificates, and automated certificate management via the TLS-ALPN-01 ACME protocol.
- Security: Post-quantum key exchange (
X25519MLKEM768) and TLS connection sanitization to prevent domain fronting (ensuring SNI and HTTP HOST headers match). - Load Balancing: Round-robin, random, and sticky sessions.
- Observability: Support for HAProxy PROXY Protocol (v1/v2) to recover client IPs behind L4 proxies.