Documentation
OctoPrint à distance : surveiller son imprimante 3D sans l'exposer
OctoPrint est l’interface web open source de référence pour piloter et surveiller une imprimante 3D, le plus souvent depuis un Raspberry Pi posé à côté de la machine. Une impression dure des heures : on veut naturellement jeter un œil depuis le bureau, le canapé ou le train — et pouvoir tout arrêter si ça tourne mal. Mais le projet OctoPrint lui-même le dit sans détour : il ne faut jamais exposer cette interface sur Internet, car derrière elle il y a un appareil chauffant motorisé. La bonne approche n’est pas d’ouvrir un port, c’est un réseau privé : le Pi rejoint votre mesh, l’interface et la webcam deviennent joignables par leur nom, et rien n’est exposé à personne d’autre que vous.
Pourquoi on veut OctoPrint à distance
L’impression 3D est une activité longue et faillible. Une pièce sérieuse s’imprime en plusieurs heures, parfois en plus d’une journée, et personne ne reste assis devant sa machine pendant tout ce temps. Or les échecs d’impression ne préviennent pas : une pièce qui se décolle du plateau, une buse qui se bouche, et l’imprimante continue d’extruder dans le vide pendant des heures — le fameux « plat de spaghettis » que tout imprimeur a connu. Pouvoir regarder, et surtout pouvoir arrêter, sans être dans la pièce, change complètement le confort et la sécurité d’usage.
- Suivre la progression — pourcentage d’avancement, temps restant, températures de la buse et du plateau, directement dans l’interface OctoPrint.
- Regarder la webcam — OctoPrint affiche le flux d’une caméra branchée au Pi : un coup d’œil suffit pour vérifier que les premières couches tiennent.
- Mettre en pause ou annuler — si l’impression a raté, chaque minute d’extrusion inutile gaspille du filament et fait chauffer la machine pour rien.
- Lancer la suite — envoyer le fichier G-code suivant et démarrer une nouvelle impression sans retourner physiquement devant l’imprimante. Tout cela, OctoPrint le fait déjà très bien — mais uniquement depuis le réseau local.
Pourquoi il ne faut jamais exposer OctoPrint sur Internet
Sur ce point, inutile de nous croire sur parole : c’est la position publique, ancienne et constante du projet OctoPrint lui-même. Sa mainteneuse a publié un guide entier consacré à l’accès distant sûr, dont le message central est limpide : mettre OctoPrint sur l’Internet public est une très mauvaise idée, redirection de port comprise. Ce n’est pas une précaution d’avocat : des recensements publics ont trouvé des milliers d’interfaces OctoPrint joignables depuis Internet, souvent sans la moindre authentification.
Ce qui rend le cas OctoPrint différent d’un service web ordinaire, c’est que l’interface ne pilote pas des données : elle pilote une machine. Une imprimante 3D, ce sont des moteurs, un plateau et une buse chauffants, du plastique fondu — un appareil qui chauffe, sans surveillance, pendant des heures. Quelqu’un qui prend la main sur l’interface prend la main sur l’objet physique.
- Risque physique — commander les températures et les mouvements d’un appareil chauffant à distance, chez vous, en votre absence.
- Vie privée — la webcam qui vous sert à surveiller l’impression filme une pièce de votre domicile ou de votre atelier, en continu.
- Vos fichiers — les G-code stockés sur le Pi décrivent vos pièces ; pour un bureau d’étude ou un artisan, c’est de la propriété intellectuelle.
- Le Pi lui-même — une interface exposée est scannée en permanence par des robots ; toute faille du logiciel qui écoute devient exploitable depuis n’importe où, et le Pi compromis devient une porte vers le reste du réseau local.
Les options habituelles et leurs contreparties
Le besoin d’accès distant étant universel, plusieurs approches se sont installées — dont certaines sont d’ailleurs recommandées par le projet lui-même, précisément parce qu’elles évitent l’exposition directe. Chacune a ses contreparties, qu’il faut connaître avant de choisir.
La redirection de port
Ouvrir le port de l’interface sur la box et le rediriger vers le Pi. C’est exactement ce que le projet OctoPrint déconseille : l’interface devient un service public, scanné et attaquable depuis le monde entier. À écarter, tout simplement.
Les plugins et services cloud
Des services dédiés (Obico, par exemple) relient OctoPrint à leur cloud via un plugin, et vous accédez à l’imprimante depuis leur application. C’est simple et sans exposition directe — mais un service tiers s’intercale entre vous et votre machine : le flux webcam transite par lui, et les fonctions disponibles sont celles que le service choisit d’offrir, pas l’interface OctoPrint complète.
Le reverse proxy authentifié
Publier l’interface derrière un serveur frontal avec TLS et authentification forte. Réservé à ceux qui savent exactement ce qu’ils font : certificats, configuration fine, mises à jour — et au bout du compte, il reste un service exposé à maintenir sans erreur, en permanence.
Le VPN classique auto-hébergé
Monter son propre serveur VPN à la maison est l’approche que le projet cite comme sûre — à raison. Mais elle demande d’ouvrir un port entrant sur la box pour le serveur VPN lui-même, d’en assurer la maintenance, et elle devient impossible derrière un accès en CGNAT (4G/5G, nombreuses fibres récentes) où aucun port ne peut être ouvert.
| Approche | Exposition sur Internet | Contrepartie principale |
|---|---|---|
| Redirection de port | Totale — l'interface est publique | Ce que le projet OctoPrint déconseille explicitement |
| Plugin / service cloud | Aucune en direct | Un tiers entre vous et l'imprimante ; fonctions limitées à son offre |
| Reverse proxy authentifié | Un service frontal exposé | Compétence et maintenance continues, sans droit à l'erreur |
| VPN classique auto-hébergé | Un port VPN ouvert | Port entrant requis — impossible en CGNAT ; serveur à entretenir |
| Réseau privé mesh | Aucune — sortant uniquement | Installer un client sur le Pi et sur vos appareils |
L'approche réseau privé : le Pi rejoint le mesh
VIGIL-MESH prend le problème dans l’autre sens : au lieu de publier l’interface pour pouvoir la joindre, il met vos machines — le Pi, votre téléphone, votre ordinateur portable — sur un même réseau privé chiffré, comme si elles partageaient un câble. OctoPi repose sur Raspberry Pi OS, une distribution Linux : le client s’installe sur le Pi aux côtés d’OctoPrint, sans rien changer à l’installation existante.
- Zéro port entrant, zéro configuration de box — le Pi n’établit que des connexions sortantes, un seul flux en 443 UDP, le même port que le web moderne. Rien à rediriger, rien à exposer : exactement l’état que le projet OctoPrint recommande.
- Joignable par son nom — chaque machine reçoit une adresse stable sur le mesh et un nom via MagicDNS. L’interface OctoPrint s’ouvre par le nom du Pi, depuis n’importe lequel de vos appareils, comme en local.
- Chiffré de bout en bout — les sessions sont des connexions QUIC/TLS 1.3 entre vos machines, avec un établissement de clés hybride post-quantique. Quand un relais intervient, il est structurellement aveugle : il ne détient pas les clés et ne voit jamais le contenu.
- Accès restreint par ACL — les politiques d’accès sont en refus par défaut : seuls les appareils que vous autorisez peuvent joindre le Pi, et vous pouvez limiter l’accès au seul port de l’interface.
- Connexion immédiate, puis chemin direct — la liaison s’établit tout de suite via le relais, puis migre sans coupure vers le chemin direct entre vos appareils dès qu’il est trouvé.
La webcam suit le même chemin privé
La surveillance visuelle est souvent la vraie raison de vouloir OctoPrint à distance — et c’est aussi le flux le plus sensible, puisqu’une caméra filme chez vous. Avec l’approche réseau privé, la question ne se pose plus en termes d’exposition : le flux de la webcam est servi par le Pi, comme le reste de l’interface, et il voyage dans la même session chiffrée de bout en bout entre le Pi et l’appareil qui regarde.
- Aucun compte vidéo tiers — le flux ne transite par aucun cloud : il va du Pi à votre écran, chiffré, et personne d’autre ne peut le demander.
- La même URL qu’en local — la vue caméra intégrée à l’interface OctoPrint fonctionne telle quelle à travers le mesh, puisque vous ouvrez la même interface, simplement par le nom du Pi.
- Les timelapses restent chez vous — les captures et vidéos qu’OctoPrint fabrique restent stockées sur le Pi ; vous les récupérez par le réseau privé quand vous le décidez.
Surveiller et couper depuis son téléphone
Le scénario qui compte vraiment : vous n’êtes pas chez vous, l’impression est en cours depuis trois heures, et vous voulez vérifier — maintenant, depuis votre téléphone. Avec le client Android enrôlé dans le même espace de travail, votre téléphone est membre du réseau privé où qu’il soit : vous ouvrez le navigateur, tapez le nom du Pi, et l’interface OctoPrint s’affiche — températures, avancement, webcam, et les boutons pause et annuler.
Le tout fonctionne y compris en 4G/5G : le téléphone comme le Pi n’établissent que des connexions sortantes, donc le CGNAT des opérateurs mobiles ne bloque rien. Si l’image montre un plat de spaghettis, vous annulez l’impression et coupez la chauffe en deux gestes — au lieu de laisser la machine extruder et chauffer pour rien jusqu’à votre retour.
Mise en place, pas à pas
La mise en place suit le parcours standard d’enrôlement de VIGIL-MESH : on installe le client sur chaque appareil concerné, on l’autorise avec une clé à usage unique, et le réseau fait le reste. Aucune configuration réseau, ni sur la box, ni sur le Pi.
- 1Créer un compte et un espace de travailDepuis la console VIGIL-MESH. L’usage personnel est gratuit — largement de quoi couvrir un Pi, un téléphone et un ordinateur.
- 2Installer le client sur les machines concernéesLe client Linux sur le Raspberry Pi qui héberge OctoPrint, le client Android sur votre téléphone, et le client Windows ou Linux sur l’ordinateur depuis lequel vous préparez vos impressions.
- 3Enrôler chaque machineDans la console, page Réseaux → Machines → « Ajouter une machine » : l’assistant fournit une clé d’enrôlement à usage unique à passer au client. Répétez pour le Pi, le téléphone et l’ordinateur.
- 4VérifierChaque machine reçoit une adresse stable et un nom MagicDNS ; un ping du téléphone vers le Pi confirme que le réseau privé est en place.
- 5Ouvrir OctoPrint par le nom du PiDepuis le navigateur de n’importe lequel de vos appareils enrôlés, ouvrez l’interface via le nom ou l’adresse du Pi, exactement comme en local — webcam comprise.