En utilisant PuTTY, j'ai mis en place un proxy inverse qui me permet de me connecter sur le port 8080 du serveur à server.tld
au port 80 de la machine qui a initié la connexion SSH.
Le serveur me permet de me connecter sur localhost:8080
et renvoie le résultat de initiator:80
lorsque je me connecte sur le serveur.
Cette question dit d'activer GatewayPorts et de se lier à toutes les adresses.
À l'aide de PuTTY, comment puis-je exposer le port 8080 sur le serveur afin que lorsqu'une demande passe par l'interface externe (par exemple une demande Web), le port soit transféré vers le initiator:80
?
Il y a deux cases à cocher lors de la configuration du tunnel PuTTY,
le second fait ce dont vous avez besoin.
Je viens de le tester,
Boîte de dialogue Tunnels PuTTY,
Fonctionne bien, voici le netstat résultant,
# netstat -an | grep 8080
tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN
tcp6 0 0 :::8080 :::* LISTEN
Vous pouvez également utiliser plink.exe fourni avec PuTTY, par exemple,
plink -R *:8080:localhost:80 [email protected]
qui fonctionne bien aussi.
# netstat -an | grep 8080
tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN
tcp6 0 0 :::8080 :::* LISTEN
Si vous obtenez toujours 127.0.0.1:8080 sur l'hôte, GatewayPorts est toujours défini sur no dans votre configuration sshd.
N'oubliez pas non plus de mettre à jour le pare-feu sur le serveur cible pour autoriser les connexions externes au port 8080.