--- title: Nginx Proxy Manager created: 2026-06-06 updated: 2026-06-06 type: app tags: [catalogue, reverse-proxy, gui, nginx, typescript, beginner] confidence: high contested: false sources: [https://selfh.st/apps/?tag=Reverse+Proxy, https://nginxproxymanager.com/] --- # 🚦 Nginx Proxy Manager > **Interface graphique pour gérer Nginx** comme reverse proxy. La solution parfaite pour les débutants qui veulent une GUI plutôt qu'un fichier de config. ## 📋 Informations Générales | Champ | Valeur | | :--- | :--- | | **Site web** | [nginxproxymanager.com](https://nginxproxymanager.com/) | | **GitHub** | [NginxProxyManager/nginx-proxy-manager](https://github.com/NginxProxyManager/nginx-proxy-manager) | | **License** | MIT | | **Langage** | TypeScript (frontend), Nginx (proxy) | | **Étoiles GitHub** | 33k ⭐ | | **Dernière MAJ** | 2026-06-04 | | **Catégorie** | [[cat-reverse-proxy|Reverse Proxy]], Web Server | ## 📝 Description **Nginx Proxy Manager (NPM)** est un **wrapper GUI** au-dessus de Nginx. Il permet de : - ✅ **Ajouter des proxy hosts** via interface web (pas de fichier de config) - ✅ **Gérer les certificts SSL** (Let's Encrypt automatique) - ✅ **Redirections** (301/302) - ✅ **Streams TCP/UDP** (depuis v2.10+) - ✅ **Access lists** (whitelist/blacklist par IP) - ✅ **User management** (multi-utilisateurs) - ✅ **401 authentication** (basic auth) devant n'importe quel service - ✅ **Nginx de base** toujours accessible (custom locations) **Public cible** : **débutants**, sysadmins qui ne veulent pas éditer de YAML, ou équipes qui veulent **un admin GUI**. ## 🚀 Installation ### Docker Compose (recommandé) ```yaml # docker-compose.yml version: '3.8' services: nginx-proxy-manager: image: jc21/nginx-proxy-manager:latest container_name: nginx-proxy-manager restart: unless-stopped ports: - "80:80" # HTTP - "443:443" # HTTPS - "81:81" # Admin UI environment: DB_SQLITE_FILE: "/data/database.sqlite" DISABLE_IPV6: "true" volumes: - ./data:/data - ./letsencrypt:/etc/letsencrypt ``` ### Configuration Initiale 1. **Accéder à l'admin** : `http://IP_DU_SERVEUR:81` 2. **Login par défaut** : - Email : `admin@example.com` - Password : `changeme` 3. **Changer immédiatement** le mot de passe 4. **Ajouter un Proxy Host** : - Domaines : `app.example.com` - Scheme : `http` ou `https` - Forward Hostname : `app-internal` (nom du conteneur) - Forward Port : `8080` - Activer "Block Common Exploits" - Activer "Websockets Support" si besoin - Onglet SSL : Request a new SSL Certificate (Let's Encrypt) ## ⚙️ Configuration Avancée ### Access Lists (whitelist IP) - Proxy Hosts → Edit → Access List - Créer une liste : "Home" = mes IPs - Appliquer aux services sensibles ### Custom Nginx Config - Onglet "Advanced" : permet d'ajouter des directives Nginx custom - Exemple : `client_max_body_size 100M;` pour les uploads ## 🔄 Alternatives ### Open Source - [[app-traefik]] — Auto-discovery (plus "DevOps") - [[app-caddy]] — Plus simple pour config statique - [[app-nginx-proxy]] — nginx-proxy (junior, sans GUI) - **NPMplus** — Fork avec extras (geo-blocking, fail2ban) ### Comparaison NPM vs Traefik | Critère | NPM | Traefik | | :--- | :--- | :--- | | GUI | ✅ Complète | Dashboard only | | Auto-discovery | ❌ | ✅ | | Let's Encrypt | ✅ | ✅ | | Config | Via GUI | Labels Docker | | Public cible | Débutants | DevOps | | Access lists | ✅ Built-in | Middleware | | Custom Nginx | ✅ | ❌ | **Verdict** : - **NPM** si vous aimez les **GUI** et voulez un contrôle manuel - **Traefik** si vous voulez que tout soit **automatique** (ajout de service = label) ### Propriétaires (ce que NPM remplace) - **Cloudflare Pro** (en partie) - **RunCloud**, **ServerPilot** (GUI de gestion Nginx payante) ## 🔐 Sécurité - **SSL/TLS** moderne - **Access lists** par IP - **Block common exploits** (SQL injection, XSS basiques) - **Authentification** (Basic, multi-users) ## 📚 Ressources - [Documentation officielle](https://nginxproxymanager.com/setup/) - [GitHub NginxProxyManager](https://github.com/NginxProxyManager/nginx-proxy-manager) - [Communauté Discourse](https://community.nginxproxymanager.com/) ## Pages Liées - [[cat-reverse-proxy]] — Catégorie Reverse Proxy - [[app-traefik]] — Concurrent auto-discovery - [[app-caddy]] — Concurrent simple - [[securisation-home-lab]] — Sécurité