> Tech > Port forwarding local

Port forwarding local

Tech - Par Renaud ROSSET - Publié le 24 juin 2010
email

La possibilité qu’a SSH de déplacer un protocole TCP/IP arbitraire d’un hôte sur un autre est appelé port forwarding. En substance, le port forwarding déplace une connexion TCP/IP du serveur SSH vers le système client, de telle sorte que la connexion au système client sur le port « forwarded »

équivale à se connecter à une machine arbitraire sur le réseau du serveur SSH (voir figure 2).

Dans ce scénario, vous utilisez le client SSH et voulez vous connecter à un serveur Web (fonctionnant sur le port 80) à l’adresse IP 10.2.2.2 dans votre réseau local. Votre serveur SSH est à l’adresse IP publique 1.2.3.4. Vous établissez un port forward avec la commande suivante :

ssh -l jdoe –N –L 2001: 10.2.2.2:80 1.2.3.4

Comme cela semble obscur, essayons de clarifier ce qui se passe. La partie « ssh -l jdoe -N » initie une session SSH, mais sans créer un shell de commande (l’option -N). Le morceau « -L 2001 » dit que vous voulez transférer le trafic provenant de l’autre extrémité du tunnel SSH vers le port local 2001. Le « :10. 2.2.2:80 » signifie que le serveur SSH doit établir une connexion vers 10.2.2.2 sur le port TCP/IP 80.

L’exécution de cette commande ne créera aucun résultat visible mais, sous le capot, le serveur SSH distant est prêt à retransmettre toute connexion vers le port 2001 sur votre machine client, vers le port 80 sur 10.2.2.2. Pour voir cela en action, pointez simplement un navigateur Web sur votre machine locale avec la désignation de port 2001. Un moyen simple pour faire cela consiste à utiliser l’adresse hôte locale « home » universelle, connue également en tant que 127. 0.0.1 :

http://127.0.0.1:2001

La page Web qui apparaîtra sera la même que celle que vous verriez si vous aviez navigué vers http:// 10.2.2.2 à partir du serveur SSH.

Sur la plupart des systèmes, vous pouvez utiliser le nom symbolique localhost au lieu de 127.0.0.1 (c’est-à-dire, http://localhost: 2001).

Réfléchissons à ce que vous venez de faire. Vous vous êtes connectés à un serveur Web sur votre réseau local, en toute sécurité, sans que ce serveur Web sache, ou se préoccupe, que vous n’êtes pas réellement un utilisateur local. Le serveur Web voit que vous vous connectez à partir du serveur SSH, 10.2.2.1. C’est un idiome incroyablement puissant pour l’administrateur de réseau : ses utilisations sont innombrables.

Voici un exemple propre à l’iSeries qui montre comment transporter une session d’émulation 5250 d’un hôte iSeries sur un autre, en utilisant le port forwarding local :

CALL QP2TERM [get a local command shell]

ssh -l jdoe –T –L 2001:
localhost:23 1.2.3.4
TELNET RMTSYS(*INTNETADR)
INTNETADR(LOCALHOST)
PORT(2001)

L’option -T signifie « disable pseudo-TTY allocation » et elle est nécessaire pour que les caractères spéciaux 5250 empruntent le tunnel de manière transparente. Il n’y a pas d’option -N, parce que vous voulez créer une session terminal. Le port forwarding local va associer le port Telnet du serveur SSH, port 23, au port 2001 sur l’hôte local. La commande TELNET suivante dirigée au port localhost 2001 ouvre ainsi une session d’émulation 5250 connectée au serveur SSH à 1.2.3.4.

Téléchargez cette ressource

Guide de technologie 5G pour l’entreprise

Guide de technologie 5G pour l’entreprise

Pourquoi la 5G est-elle faite pour votre entreprise ? La 5G peut améliorer la vitesse, la fiabilité et la capacité de votre réseau, permettant ainsi une meilleure collaboration, une productivité accrue et une prise de décision plus rapide. Notre livre blanc " The Big Book of Enterprise 5G" vous fournit les informations stratégiques dont vous avez besoin pour prendre des décisions éclairées et préparer votre entreprise à prospérer dans l'ère de la 5G. Cradlepoint, part of Ericsson est le leader mondial des solutions de réseau sans fil 4G LTE et 5G fournies via le cloud. Connectez vos employés, lieux et objets avec la 4G LTE et la 5G pour un WAN sans fil d'entreprise.

Tech - Par Renaud ROSSET - Publié le 24 juin 2010