j’ai installé Stirling PDF sur un ordinateur à faible consommation qui restera allumé en permanence. Je veux pouvoir y accéder où que je sois. Je vais donc créer un système pour y accéder comme si c’était un site internet standard https://pdf.DOMAINE.com.
Pour cela 6 étapes, plus ou moins difficiles :
- Attribuer une IP fixe à l’ordinateur Linux ;
- régler mon réseau interne pour que les ports 80 et 443 soient redirigés (autoriser le reverse proxy)
- Installer et connecter NGinx Proxy Manager (via Portainer)
- Créer le « Pont » dans Nginx Proxy Manager vers https://pdf.DOMAINE.com
- installer un certificat Let’s Encrypt
- vérifier tout
Les étapes 1 et 2 sont complètement liées à ton installation interne. Ce que je décris est spécifique à moi. C’est l’étape 2 qui a été le plus difficile pour moi. Heureusement que Gemini m’a aidé.
Pour le reste, tout est transférable je pense.
Avant de démarrer
Obtenir un nom de domaine
Pour ma part j’ai acheté un domaine sur infomaniak. On peut le faire avec n’importe quel fournisseur, type OVH, Gandi ou autre. J’aurais aussi pu utiliser un nom de domaine que j’ai déjà puisque j’utiliserai des sous-domaines.
Pour ce qui suit on utilisera le nom de domaine DOMAINE.com.
Identifier l’IP de ma box
Depuis ton PC Windows, va sur https://www.mon-ip.com/. mon IP est par exemple 12.123.45.678 Attention, si tu utilises un VPN le site te renverra l’IP de ton VPN et pas celle de ton point d’accès à internet, et rien ne fonctionnera.
Pour vérifier qu’elle est fixe, utiliser https://www.mon-ip.com/ip-dynamique.php . Elle est fixe pour moi. Si elle ne l’était pas, il faudrait que je m’intéresse aux clients DDNS, souvent déjà présents dans les box internet, les Google Mesh, et qui peut aussi être placé dans un conteneur Docker sur mon ordinateur Linux). Le client DDNS informe alors le gestionnaire du nom de domaine de la nouvelle adresse IP à utiliser lorsque le fournisseur internet la change.
Pointer le nom de domaine vers ma box
Comme j’ai acheté le nom de domaine chez Infomaniak, je vais maintenant dans mon manager Infomaniak pour régler la zone DNS du domaine pdf.DOMAINE.com
Chez Infomaniak :
- Va dans Domaines > DOMAINE.com > Zone DNS.
- Ajoute une entrée (un « Enregistrement A ») :
- Nom (ou hôte) : pdf (pour créer pdf.DOMAINE.com).
- Cible (ou IP) : Ton adresse IP publique notée plus haut, 12.123.45.678.
- Enregistre.
Attention, il faut au moins 1 heure pour que tous les systèmes de routage du monde soient informés.
Pour vérifier si ça fonctionne : https://dnschecker.org/#A/pdf.DOMAINE.com pointe bien vers l’adresse IP fixe de ma box (12.123.45.678)
étape 1 : Attribuer une IP fixe au PC linux
Dans mon réseau, c’est un Google Mesh qui attribue les adresses IP, pas le routeur de mon opérateur. Je fais donc les réglages sur mon téléphone, dans l’application google Home.
- Ouvre l’application Google Home.
- Appuie sur l’icône Favoris ou Appareils et cherche ton réseau Wi-Fi.
- Va dans Paramètres du réseau > Paramètres avancés > Réseau local (LAN).
- Cherche une option nommée « Réservation d’adresse IP » ou « Baux statiques ».
- Appuie sur le bouton « + », sélectionne ton Beelink dans la liste et enregistre l’adresse 192.168.86.101 (ou une autre de ton choix).
- Redémarrer l’ordinateur
étape 2 : Rediriger les ports 80 et 443
j’ai mis du temps sur cette étape. Je ne comprenais pas tout. Et j’avais oublié que c’est le google Mesh qui gère les accès à mon réseau interne, pas la box du fournisseur d’accès. Il faut donc que je procède en deux temps :
- dire à la box du fournisseur d’accès d’autoriser l’accès direct du google mesh à internet (mode DMZ) ;
- dire au google mesh d’autoriser les entrées via les ports 80 et 443 (redirection de ports).
régler la box du fournisseur d’accès
Pour la plupart des gens, on ne fait pas ce réglage, on passe tout de suite à la redirection des ports 80 et 443 plus loin.
Pour accéder à ma box internet, ilfaut que je me connecte directement à elle (pas via le boîtier google mesh), par exemple avec un cable ethernet.
Puis de mon ordinateur connecté à cette box : 192.168.1.1 dans un navigateur.
- Aattribue une IP fixe au boîtier Google Mesh. Par exemple 192.168.1.100
- Ensuite, dans les paramètres de la Livebox, cherche l’option DMZ (Zone Démilitarisée). Active la DMZ pour l’adresse du Google Mesh. Cela signifie : « Livebox, n’essaie pas de filtrer ce qui arrive, envoie tout directement au Google Mesh, c’est lui qui gère la sécurité ».
- Ensuite, tu n’auras plus qu’à gérer les redirections de ports (80 et 443) uniquement dans l’application Google Home.
N’oublie pas de reconnecter ton ordinateur Windows derrière le Google Mesh pour être sur le même réseau local que l’ordinateur Ubuntu !
redirection des ports 80 et 443
Pour moi c’est sur le Google Mesh, via l’application Google Home sur mon téléphone. Mais pour la plupart des gens, c’est directement sur la box.
on doit impérativement rediriger le port 80 également, même si on prévoit de n’utiliser que des connexions sécurisées (httpS).
- Ouvre l’application Google Home sur ton téléphone.
- Va dans Favoris (ou Paramètres du réseau) > Paramètres avancés > Redirection de port.
- Crée deux règles pour l’ordinateur sous Linux (IP 192.168.86.101) :
- Règle 1 : Port interne 80, Port externe 80, Protocole TCP.
- Règle 2 : Port interne 443, Port externe 443, Protocole TCP.
Pour vérifier, on peut utiliser https://www.yougetsignal.com/tools/open-ports/ pour le port 80 et pour le port 443.

étape 3 : Installer NGinx Proxy Manager
J’ai installé Docker et Portainer précédemment sur mon ordinateur Linux. Voir à ce sujet l’article Docker et Portainer sur ubuntu . Je réalise donc l’installation dans le navigateur de mon ordinateur Windows, par Portainer.
Installation de NPM via Portainer
- Sur ton PC Windows, ouvre Portainer (https://192.168.86.101:9443).
- Ouvre l’environnement HOME
- Va dans Stacks (dans le menu de gauche) puis clique sur le bouton + Add stack.
- Nomme la stack : nginx-proxy-manager.
- Dans l’éditeur, colle le code YAML suivant :
version: '3.8'
services:
npm:
image: 'jc21/nginx-proxy-manager:latest'
container_name: nginx-proxy-manager
restart: unless-stopped
ports:
- '80:80' # Port pour le trafic HTTP et Let's Encrypt
- '81:81' # Port de l'interface d'administration de NPM
- '443:443' # Port pour le trafic HTTPS sécurisé
volumes:
- npm_data:/data
- npm_letsencrypt:/etc/letsencrypt
volumes:
npm_data:
npm_letsencrypt:
Clique sur Deploy the stack. Attends une minute que Docker télécharge l’image et lance le service.
Première connexion et configuration
Une fois que la stack est « Green » (en cours d’exécution) :
- Ouvre un nouvel onglet sur ton Windows et tape : http://192.168.86.101:81.
- Connecte-toi avec les identifiants par défaut :
- Email : admin@example.com
- Mot de passe : changeme
- Important : NPM va immédiatement te demander de modifier ton nom, ton email d’administrateur et ton mot de passe. Fais-le soigneusement et note bien ces informations.
étape 4 : Créer le « Pont » dans Nginx Proxy Manager
Maintenant, on dit à ton ordinateur Linux quoi faire quand il reçoit une demande pour « pdf ».
- Connecte-toi à NPM sur ton navigateur Windows : http://192.168.86.101:81.
- Va dans l’onglet Proxy Hosts et clique sur Add Proxy Host.
- Onglet « Details » :
- Domain Names : pdf.DOMAINE.com (appuie sur Entrée).
- Scheme : http.
- Forward Name/IP : 192.168.86.101.
- Forward Port : 8080.
- Coche Block Common Exploits et Websockets Support.
Normalement à ce stade, si je tape https://pdf.DOMAINE.com dans un navigateur, il pointe vers mon ordinateur linux mais rien ne s’affiche car le navigateur bloque l’accès à un site non sécurisé. Il manque en effet un certificat Let’s Encrypt qui garantit que le site est correctement encrypté.
étape 5 : installer un certificat Let’s Encrypt
Tu as maintenant tous les ingrédients : un nom de domaine (DOMAINE.com), un serveur prêt (sous Linux) et un chef d’orchestre (Nginx Proxy Manager).
Voici l’étape indispensable pour que https://pdf.DOMAINE.com affiche ton Stirling PDF avec le cadenas vert. En effet, le cadenas vert ne s’affiche que si mon site a un certificat qui dit que je possède bien le domaine DOMAINE.com et que le navigateur parvient à utiliser un protocole de cryptage moderne (TLS 1.2 ou 1.3) pour l’afficher.
- Connecte-toi à NPM sur ton navigateur Windows : http://192.168.86.101:81.

2. Sur la ligne pdf.domaine.com clique sur les trois petits points verticaux tout à droite (sous la colonne « Status »). Clique sur Edit (Modifier). Une fenêtre surgissante (pop-up) va s’ouvrir. Tu y verras alors plusieurs onglets en haut : Details, Custom locations, SSL, et Advanced. Clique sur l’onglet SSL.
- Coche HTTP/2 Support et HSTS Enabled (c’est mieux pour la sécurité et la rapidité).
- Dans le menu déroulant « SSL Certificate », choisis Request a new SSL Certificate.
- Coche Force SSL (pour que personne ne reste en non-sécurisé).
3. Clique sur Save
NPM va mouliner pendant 30 secondes. Il est en train de discuter avec Let’s Encrypt pour prouver que tu es bien le propriétaire de DOMAINE.com
étape 6 : vérifier tout
On a installé un un Proxy Host, quelque chose qui dit « Si quelqu’un demande pdf.DOMAINE.com, envoie-le vers 192.168.86.101 sur le port 8080 (Stirling PDF) »
Maintenant, si je tape pdf.DOMAINE.com dans le navigateur de n’importe quel ordinateur, dans le monde entier, j’ouvrirai un accès à mon logiciel de gestion de pdf, Stirling PDF !

Je peux même créer une application (PWA pour Progressive Web App) qui m’évitera d’utiliser mon navigateur. Il me suffit de cliquer sur « ouvrir dans l’appli » qui aparaît à droite de l’url pdf.DOMAINE.com en haut du navigateur.
Et voilà !

Commentaires récents