Comment configurer la redirection de port après l'ouverture d'une connexion ssh?

13

J'utilise openssh sur le client et le serveur. Je sais que je peux exécuter ssh -Lou ssh -Rconfigurer des redirections de port sur ssh. Cependant, comme il s'agit de paramètres de ligne de commande, ces redirections doivent être écrites avant l'ouverture de la connexion.

Puis-je configurer des redirections de port à la volée à l'aide du client ssh en ligne de commande?

Lorsque j'ai utilisé le PuTTYclient ssh, j'ai pu configurer de manière interactive une redirection de port alors qu'une connexion était déjà ouverte, sans abandon ni reconnexion, donc je sais que c'est techniquement possible.

Denilson Sá Maia
la source

Réponses:

24

Si vous utilisez la ligne de commande SSH et que vous n'avez pas désactivé la fonctionnalité de caractère d'échappement, vous pouvez taper ~Caprès une nouvelle ligne pour ouvrir une mini-console sur le client ssh. Tapez ensuite -L port:host:portou -R port:host:portou -D portcomme vous le feriez sur la ligne de commande pour ajouter une redirection ou -KR portpour supprimer une redirection.

Une méthode plus flexible pour configurer des redirections sans refaire l'authentification consiste à démarrer le premier client ssh en tant que maître ( -Mou -o ControlMaster=auto) et les clients suivants en tant qu'esclaves ( -Sou -o ControlMaster=auto). Les esclaves creusent un tunnel à travers la connexion établie par le maître. Vous devrez peut-être définir ControlPathsur la ligne de commande ou dans votre ~/.ssh/config; voir la description des options dans la ssh_configpage de manuel pour plus d'informations.

Gilles 'SO- arrête d'être méchant'
la source
~C escape not available to multiplexex sessionsSi quelqu'un rencontre le problème comme je viens de le faire, ne cherchez pas votre connexion principale. Au lieu de cela, ajoutez simplement -O forwardà votre commande de transfert de port ssh, comme dans ssh -O forward -nfL 1234:whatever:1234 theserveret cela fonctionnera.
Patrick