Maîtriser vos Services : Installer et Configurer NGINX Proxy Manager sur Proxmox VE 🚀

Dites adieu aux configurations NGINX complexes ! Ce guide vous montre comment déployer et gérer vos reverse proxies facilement sur Proxmox.


NGINX Proxy Manager sur Proxmox
NGINX Proxy Manager (NPM) agit comme point central pour acheminer et sécuriser vos requêtes sur Proxmox.

Introduction : Pourquoi Choisir NPM pour votre Homelab ?

Gérer plusieurs applications sur **Proxmox VE** (votre média center, domotique, ou wiki) nécessite un **reverse proxy** pour distribuer les requêtes et un **certificat SSL** pour la sécurité. Traditionnellement, cela passe par des fichiers de configuration NGINX complexes.

Le **NGINX Proxy Manager (NPM)** est la solution moderne : il offre une interface graphique complète pour gérer tous vos hôtes proxy et automatiser l'obtention de certificats **Let's Encrypt**.

🚨 Note de Sécurité : Nous allons utiliser un script d'aide communautaire. C'est une méthode fiable, mais en tant qu'administrateur de votre propre système, ayez toujours la prudence de comprendre ce que vous exécutez.


Préparation : Configurer la Résolution DNS Locale

Un point essentiel : pour que `monapp.local` fonctionne, ce nom doit diriger le trafic vers l'adresse IP de votre futur conteneur **NGINX Proxy Manager**. Nous gérons cela avec un serveur DNS local.

  • **Solution recommandée :** Utilisez un serveur **Pi-hole** ou AdGuard Home pour gérer vos enregistrements DNS locaux personnalisés.

Dans les étapes suivantes, nous allons supposer que vous utilisez cette méthode.


Étape 1 : Installation de NGINX Proxy Manager via Script

1. Lancer la Commande d'Installation

Accédez au **Shell** de votre Proxmox (en haut à droite de l'interface) et collez la commande suivante. Elle télécharge et exécute le script d'aide officiel :

bash -c "$(wget -qLO - https://github.com/community-scripts/ProxmoxVE/raw/main/ct/nginxproxymanager.sh)"
        

2. Paramétrage du Conteneur

Lorsque le script vous le demandera :

  • Confirmez l'installation (`Yes`).
  • Choisissez les **`Default Settings`** pour une configuration rapide et recommandée.

Le script va se terminer en affichant l'URL d'accès à l'interface web de NGINX Proxy Manager.

3. Attendre le Déploiement

Le script va télécharger les dépendances (Docker) et déployer votre conteneur LXC. Une fois terminé, l'URL d'accès à l'interface de NPM sera affichée.


Étape 2 : Sécurisation et Première Connexion

1. Connexion Initiale

Accédez à l'interface de NPM via l'URL fournie (généralement `http://[IP_NPM]:81`). Utilisez les identifiants par défaut :

  • **Email :** admin@example.com
  • **Mot de passe :** changeme

2. Changer les Identifiants Immédiatement

C'est la première chose à faire ! Allez dans les paramètres et modifiez l'adresse email et le mot de passe par défaut pour sécuriser votre installation.


Étape 3 : Configurer votre Premier Hôte Proxy (Exemple : Un Wiki)

Imaginons que vous ayez un Wiki sur Proxmox avec l'IP `192.168.1.100` et le port `8080`. Nous allons le rendre accessible via `wiki.local`.

1. Création dans NGINX Proxy Manager

  1. Dans NPM, allez dans **`Hosts`** > **`Proxy Hosts`**.
  2. Cliquez sur **`Add Proxy Host`**.

Remplissez l'onglet **Details** :

Champ Valeur pour notre Wiki
Domain Names wiki.local
Scheme http
Forward Hostname / IP 192.168.1.100 (L'IP de votre Wiki)
Forward Port 8080 (Le port de votre Wiki)

Rendez-vous dans l'onglet **`Advanced`** et cochez **`Block Common Exploits`** et **`Cache Assets`**.

Cliquez sur **`Save`**.

2. Enregistrement DNS dans Pi-hole

C'est l'étape de l'aiguillage. Nous disons au réseau d'envoyer toute requête pour `wiki.local` au conteneur NPM.

  1. Dans Pi-hole, allez dans **`Local DNS`** > **`DNS Records`**.
  2. Ajoutez un nouvel enregistrement :
    • **Domaine :** wiki.local
    • **Adresse IP :** L'IP de votre conteneur **NGINX Proxy Manager** (ex: `192.168.1.51`).

Règle d'Or : L'IP dans Pi-hole **doit toujours** être l'IP du **NGINX Proxy Manager**. C'est NPM qui fait le travail de redirection interne.

Testez ! Tapez `wiki.local` dans votre navigateur. Si tout est correct, vous devriez voir votre Wiki !


Étape 4 : Activer le HTTPS (SSL)

Pour sécuriser la connexion, nous allons obtenir un certificat Let's Encrypt :

  1. Dans NPM, éditez le **`Proxy Host`** pour `wiki.local`.
  2. Allez dans l'onglet **`SSL`**.
  3. Sous "SSL Certificate", sélectionnez **`Request a new SSL Certificate`**.
  4. Cochez **`Force SSL`** (recommandé pour rediriger HTTP vers HTTPS).
  5. Entrez votre adresse email.
  6. Cochez la case pour accepter les conditions d'utilisation.
  7. Cliquez sur **`Save`**.

Si vous utilisez un domaine public, le certificat sera généré. Pour un domaine purement local (`.local`), vous devrez utiliser un certificat auto-signé que NPM peut aussi générer, ou utiliser une validation DNS-01 si votre fournisseur de domaine le permet.


Conclusion

Votre NGINX Proxy Manager est maintenant opérationnel et sécurisé sur Proxmox. Vous pouvez répéter ces étapes pour tous les autres services que vous hébergez, vous offrant ainsi un contrôle total et simplifié sur votre réseau domestique !

Cet article est prêt à être publié.

Auteur: Mvondo bekey anael

ceo | founder
COMPETENCES
  • • Maitrise des environnements Unix, Linux, Mac, Windows, IOS et Android
  • • Programmation OrientĂ©e Objet : Python, Ruby, C++, Java, PHP, Js
  • • Certifier linux Lpi (101, 102, 202, 203, 301, 303)
  • • Certifier Adwords Professional , Certifier Ceh (6, 7, 8, 9, 10, 11)
  • • MaĂ®trise parfaite de : Docker, VMware sphère, Microsoft Hyper, Citrix, Virtual box,promox vm