Placez un mandataire inverse devant n'importe quoi sur votre réseau
Un site peut répondre à son nom ici et transmettre chaque requête à une adresse que vous indiquez. C'est ainsi que quelque chose qui n'a jamais été destiné au public obtient un domaine, un certificat et une porte d'entrée, sans être déplacé.
À quoi cela sert
Des choses qui fonctionnent déjà, et qui ont besoin d'une porte d'entrée.
Un appareil sur votre réseau
Un appareil ou un service doté d'une interface web, sans certificat propre et sans intention d'en obtenir un. Il reçoit un nom et le HTTPS sans qu'on y touche.
Des logiciels que vous n'avez pas écrits
Quelque chose qui écoute sur un port et s'attend à être joint directement. Donnez lui un domaine au lieu d'un numéro de port que les gens doivent retenir.
Un service sur une autre machine
Un second serveur sur le même réseau qui doit répondre à un nom porté par celui ci, sans déplacer l'application ni scinder le DNS.
Quelque chose en cours de migration
Faites pointer le nom ici pendant que le véritable déplacement se fait derrière, et changez l'adresse quand vous serez prêt.
Une connexion de longue durée
Les mises à niveau WebSocket sont transmises et la connexion reste ouverte, si bien qu'un tableau de bord en direct ou un service de clavardage se comporte comme en accès direct.
Le HTTPS pour quelque chose qui n'en a pas
Le certificat est émis et renouvelé ici. Ce qui se trouve derrière le mandataire inverse n'a jamais besoin de savoir que le TLS existe.
Ce que le site transmet
Les en têtes qu'attend une application placée derrière un mandataire.
- L'hôte d'origine, pour qu'une application qui construit ses liens à partir de la requête construise les bons.
- L'adresse du visiteur, à la fois en
X-Real-IPet enX-Forwarded-For, pour que les journaux et les limites de débit voient un visiteur plutôt que ce serveur. - Le protocole, sous forme de
X-Forwarded-Proto, pour qu'une application sache que le visiteur est arrivé en HTTPS même si on lui a parlé en HTTP simple. - Les requêtes de mise à niveau, avec les en têtes de saut en saut réécrits à chaque requête plutôt que transmis aveuglément, et c'est ce qui fait fonctionner les WebSockets.
- Les réponses au fil de l'eau, sans mise en mémoire tampon, pour qu'une application qui diffuse en continu continue de le faire.
Les restrictions, et pourquoi
Un administrateur le définit, et il pointe vers une adresse.
C'est le seul environnement d'exécution qu'un client ne peut pas choisir, car ce vers quoi il peut être dirigé est précisément ce qui le rend utile.
Un mandataire inverse transmet les requêtes venues de l'internet public vers un endroit que ce serveur peut atteindre. Cela comprend des choses sur cette machine qui n'ont jamais été destinées au public, et des choses situées dans un réseau privé qui ne sont sûres que parce que rien de l'extérieur ne peut les atteindre. Laisser un client saisir une adresse dans ce champ serait laisser un client décider de ce que le serveur expose.
- Réservé aux administrateurs. Créer un site mandataire, ou changer sa destination, est refusé à tout autre.
- Une adresse numérique et un port explicite, en
httpou enhttps. Les noms d'hôte ne sont volontairement pas acceptés : un nom résolu plus tard pourrait déplacer sans bruit un mandataire approuvé vers une autre machine le jour où quelqu'un modifie un enregistrement DNS. - Une origine, et rien d'autre. Aucun identifiant, aucun chemin, aucune requête, aucun fragment. Ce qui est approuvé est une destination, pas une requête.
- Une adresse routable. Les adresses non spécifiées, de multidiffusion et de lien local sont refusées plutôt qu'écrites dans un fichier de configuration.
Ces règles sont volontairement étroites. L'intérêt de ce champ est qu'il atteint des choses, si bien que sa seule version sûre est celle où ce qu'il atteint a été écrit exactement, par quelqu'un qui avait le droit de l'écrire.
Ce que ce n'est pas
Cela ne vous rend pas responsable de la gestion de ce qui se trouve derrière.
Un site mandataire est un nom, un certificat et une destination. Ce qui répond à cette destination reste le programme de quelqu'un d'autre selon le calendrier de quelqu'un d'autre : ce panneau ne le démarre pas, ne le sauvegarde pas, ne le surveille pas et ne le maintient pas en marche, et un mandataire inverse qui pointe vers quelque chose d'éteint est un site qui renvoie une erreur.
Si vous voulez que la chose elle même soit gérée ici, une application Node.js ou un site en conteneur est l'environnement d'exécution qui le fait, et la page des environnements compare les cinq.
Vos serveurs, sans que rien de ce qu'ils portent ne soit compté.
Le panneau entier est gratuit sur un serveur, sans limite de sites, de boîtes aux lettres, de zones DNS ou de comptes clients. Pro, jusqu'à cinq serveurs, n'est pas encore disponible.