A Docker-packaged web UI for creating Nginx reverse proxy hosts with free Let's Encrypt SSL, without hand-editing Nginx configs.
ZoeyVid/NPMplus
A fork of nginx-proxy-manager with a web GUI for nginx reverse proxying, adding HTTP/3, CrowdSec, hardened TLS and mTLS, shipped as a Docker image.
Open-source alternative to:Cloudflare Tunnel
- Stars
- 2,436
- Forks
- 123
- Open issues
- 18
- Last commit
- 17 hours ago
What is it?
NPMplus is a fork of nginx-proxy-manager, a web interface for configuring nginx as a reverse proxy. It is distributed as a Docker image and aims to harden the default setup: it supports HTTP/3 (QUIC), uses a patched nginx build with aws-lc, enables certificate compression and optional Encrypted Client Hello, and issues short-lived Let's Encrypt certificates by default.
Beyond the basics, it adds per-host mTLS with client certificates, multiple upstream load balancing, gRPC and proxy protocol hosts, built-in auth_request integration for several auth providers, and CrowdSec with AppSec support for blocking malicious traffic. The web UI itself is served over HTTPS with a strict CSP and can use OIDC login.
The project is AGPL-3.0 licensed and runs on x86_64-v2 and arm64. Its documentation notes that it is not a drop-in replacement for upstream, so migration is one-way and existing custom nginx configs may need rework.
Key features
- 01Serves HTTP/3 (QUIC) alongside HTTPS, with optional Encrypted Client Hello
- 02Integrates CrowdSec and AppSec for blocking malicious requests
- 03Supports mTLS with client certificates configured per host
- 04Load balances proxy hosts across multiple upstreams and proxies gRPC and streams
- 05Provides built-in auth_request integration for common auth providers and OIDC login for the UI
- 06Supports zstd and brotli compression, plus Goaccess log analytics
Use cases
- Self-hosting several web services behind one public nginx entry point with a GUI
- Adding CrowdSec-based intrusion blocking in front of home-lab or small-business apps
- Putting an SSO or auth provider in front of internal services via auth_request
- Running a reverse proxy on a Docker host that needs automatic TLS certificates
Quick start
- 1
Install Docker and Docker Compose
- 2
Download the compose.yaml from the NPMplus repository and set your timezone (TZ) in it
- 3
Start NPMplus with Docker Compose
docker compose up -d - 4
Open the admin UI over https on port 81
Things to know
- Distributed under AGPL-3.0, a strong copyleft license that applies to modifications and network use.
- Only x86_64-v2 (amd64v2) and aarch64/arm64 are supported; plain x86-64 and 32-bit architectures are not.
- Only SQLite is recommended; MariaDB, MySQL and PostgreSQL are unsupported and migrating between them is not possible.
- Migrating from upstream nginx-proxy-manager cannot be reverted, so a backup is required first.
In collections
Topics
FAQ
- What is NPMplus?
- A fork of nginx-proxy-manager with a web GUI for nginx reverse proxying, adding HTTP/3, CrowdSec, hardened TLS and mTLS, shipped as a Docker image. NPMplus is a fork of nginx-proxy-manager, a web interface for configuring nginx as a reverse proxy. It is distributed as a Docker image and aims to harden the default setup: it supports HTTP/3 (QUIC), uses a patched nginx build with aws-lc, enables certificate compression and optional Encrypted Client Hello, and issues short-lived Let's Encrypt certificates by default.
- Is NPMplus free to use? What license does it have?
- NPMplus is open source under the AGPL-3.0 license. Check the license terms before using it in commercial products.
- Is NPMplus still maintained?
- Actively maintained. The last commit to NPMplus was on Nov 6, 2026.
- What can I use NPMplus for?
- Self-hosting several web services behind one public nginx entry point with a GUI Adding CrowdSec-based intrusion blocking in front of home-lab or small-business apps Putting an SSO or auth provider in front of internal services via auth_request Running a reverse proxy on a Docker host that needs automatic TLS certificates
- How do I install NPMplus?
- Install Docker and Docker Compose Download the compose.yaml from the NPMplus repository and set your timezone (TZ) in it Start NPMplus with Docker Compose: docker compose up -d Open the admin UI over https on port 81
- Where can I get NPMplus?
- The source code and installation instructions are on GitHub: https://github.com/ZoeyVid/NPMplus
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
Nginx-based reverse proxy and web gateway in a Docker container, with automatic Let's Encrypt/ZeroSSL certificates via Certbot and fail2ban intrusion prevention.
A web-based graphical interface for nginx that lets you manage virtual hosts, proxies, SSL certificates and streams without editing config files by hand.
A self-hosted web UI for managing Traefik reverse proxy routes, middlewares, services, certificates and logs without hand-editing YAML.
Self-hosted PaaS that deploys apps and databases on your own server using Docker, Nginx and Let's Encrypt, with a web GUI and CLI.
Caddy is an extensible web server written in Go that serves HTTP/1.1, HTTP/2 and HTTP/3 and enables HTTPS automatically by default.