Repolode
ZoeyVid

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. 1

    Install Docker and Docker Compose

  2. 2

    Download the compose.yaml from the NPMplus repository and set your timezone (TZ) in it

  3. 3

    Start NPMplus with Docker Compose

    docker compose up -d
  4. 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