Est-il possible de rediriger les ports de ce scénario? SSH?

Description

J'ai un serveur PostgreSQL via Internet dans le réseau de laboratoires. J'utilise actuellement ssh Se connecter à celui-ci. Cependant, je voudrais dockers Adminer Dans mon réseau local a été connecté au serveur. Est-il possible de créer un transfert de port afin que les dockers puissent se connecter au port de mon ordinateur local qui me redirige au service PostgreSQL?

Je pense que cette équipe ssh Cela peut fonctionner, mais pas sûr, j'aimerais également une brève explication de la façon dont cela fonctionne:

ssh -L 5000:myserverdomain:5432 postgresql@myserverdomain

Diagramme

Un petit diagramme représentant le script:
Invité:

David

Confirmation de:

L'équipe que vous montrez fera le port 5432 myserverdomain Disponible sur le port 5000 En voiture sur laquelle vous exécutez la commande.

Il doit travailler mais (Si j'ai raison), Lorsque vous exécutez la commande sur votre hôte, et non dans le conteneur Docker, Conteneur par défaut Adminer ne sera pas en mesure d'atteindre le port 5000 sur l'hôte (Docker Les conteneurs exécutés via un réseau de pont ne peuvent pas atteindre les ports hôtes). Afin que vous puissiez exécuter la commande ssh Dans le conteneur (
https://github.com/David-Lor/D ... lient
qui effectue le transfert de port ssh), ou vient d'exécuter le conteneur Adminer Avec un réseau "hôte".

Enfin, vous pouvez utiliser un modificateur -N dans une équipe SSH, Afin de ne pas ouvrir une session interactive et d'exécuter simplement le port en avant. Et vous pouvez même utiliser autossh Ré-connecter si la connexion est cassée.

Georges

Confirmation de:

Il initie la connexion à myserverdomain et redirige tout pour localhost (Qui est encore myserverdomain) Port 5000 Sur le port 5432 sur myserverdomain (localhost).

En substance, vous redirigez le trafic avec localhost 5000 sur localhost 5432.

ssh -L 5000:myserverdomain:5432 postgresql@myserverdomain

Pour répondre aux questions, connectez-vous ou registre