nforwardauth

nforwardauth

Lightweight forward-auth service for reverse proxies

152stars
8forks
Last commit: 3mo ago
Repo age: 3y old

nforwardauth is a lightweight forward authentication service written in Rust that provides a single auth middleware for reverse proxies. It validates requests, issues signed auth tokens (cookies), and redirects unauthenticated users to a simple login page.

Key Features

  • Forward-auth middleware compatible with common reverse proxies such as Traefik, Caddy, and nginx
  • Uses a passwd file of usernames and hashed passwords (sha-512) for credential storage
  • Issues signed authentication tokens/cookies using a configurable TOKEN_SECRET
  • Optional downstream header (X-Forwarded-User) to pass authenticated identity
  • Configurable cookie name, domain, secure flag, port, and pass-through behavior
  • Built-in, configurable rate limiter to mitigate brute-force login attempts
  • Distributed as a Docker image and usable with docker-compose; simple static login UI

Use Cases

  • Protect multiple self-hosted web apps behind a single authentication wall
  • Integrate a simple auth layer into Traefik/Caddy/nginx setups for homelabs and small deployments
  • Provide password-based access control where a full identity provider is unnecessary

Limitations and Considerations

  • Authentication is limited to username/password entries in a local passwd file; no built-in OIDC/SAML/OAuth providers
  • No built-in CSRF protection as of current roadmap items
  • Not intended as a full SSO or enterprise identity solution; focuses on minimalism and simplicity

nforwardauth is designed for minimal operational overhead and fast response times. It is well suited to homelab and small deployments that need a simple, centralized forward-auth layer without external identity provider integrations.

Categories:

Tags:

Tech Stack:

Share:

Similar Services

Caddy

Caddy

Extensible web server and reverse proxy with automatic HTTPS

69.2k
4.6k
Last commit: 1d ago

Caddy is a fast, extensible Go web server and reverse proxy with automatic HTTPS (ACME), HTTP/1.1, HTTP/2, and HTTP/3 support, and a JSON config API.

Alternative to:
Caddy Cloud
Caddy Cloud
+8
Traefik Proxy

Traefik Proxy

Cloud-native reverse proxy, load balancer, and ingress controller

61.1k
5.8k
Last commit: 1d ago

Traefik Proxy is a dynamic reverse proxy and load balancer that auto-discovers services from Docker, Kubernetes, and other providers, with HTTPS, routing, and observabili...

Alternative to:
Traefik Cloud
Traefik Cloud
+7
Kong Gateway

Kong Gateway

Cloud-native API and LLM gateway with extensible plugins

42.5k
5k
Last commit: 2mo ago

Kong Gateway is a high-performance, cloud-native API gateway for routing, securing, and observing API traffic, with an extensible plugin system and Kubernetes support.

Alternative to:
Amazon API Gateway
Amazon API Gateway
+7
Nginx Proxy Manager

Nginx Proxy Manager

Web UI to manage Nginx reverse proxy hosts and SSL certificates

31.1k
3.5k
Last commit: 2d ago

Nginx Proxy Manager is a web-based admin panel for managing Nginx reverse proxy hosts, redirects, streams, and Let’s Encrypt SSL certificates via Docker.

Alternative to:
NGINX Management Suite
NGINX Management Suite
+6
NGINX

NGINX

High-performance web server, reverse proxy, and load balancer

29.1k
7.7k
Last commit: 2d ago

NGINX is a high-performance HTTP server and reverse proxy with caching, load balancing, TLS termination, and TCP/UDP proxying via a modular architecture.

Alternative to:
NGINX Management Suite
NGINX Management Suite
+2
Pangolin

Pangolin

Identity-aware VPN and reverse proxy for secure remote access

18k
532
Last commit: 2d ago

Open-source identity-based remote access platform combining WireGuard VPN and tunneled reverse proxy access with granular zero-trust controls.

Alternative to:
Cloudflare Access
Cloudflare Access
+16