Dans cette réponse, je vais passer à travers un exemple concret. Il vous suffit de remplacer les noms d'hôte, noms d'utilisateur et mots de passe des ordinateurs par les vôtres.
Déclaration du problème
Supposons que nous ayons la topologie de réseau suivante:
our local computer <---> server 1 <---> server 2
Pour des raisons concrètes, supposons que nous possédons les noms d'hôte, noms d'utilisateur et mots de passe des ordinateurs suivants:
LocalPC <---> hostname: mit.edu <---> hec.edu
username: bob username: john
password: dylan123 password: doe456
Objectif: nous voulons configurer un proxy SOCKS qui écoute sur le port 9991de LocalPCsorte que chaque fois qu'une connexion LocalPCest établie à partir du port, 9991elle passe mit.eduensuite hec.edu.
Exemple de cas d'utilisation: hec.edudispose d'un serveur HTTP uniquement accessible sur http://127.0.0.1:8001 , pour des raisons de sécurité. Nous aimerions pouvoir visiter http://127.0.0.1:8001 en ouvrant un navigateur Web sur LocalPC.
Configuration
Dans LocalPC, ajoutez dans ~/.ssh/config:
Host HEC
HostName hec.edu
User john
ProxyCommand ssh bob@mit.edu -W %h:%p
Puis dans le terminal de LocalPC, lancez:
ssh -D9991 HEC
Il vous demandera le mot de passe de bobon mit.edu(ie dylan123), puis il vous demandera le mot de passe de johnon hec.edu(ie doe456).
À ce stade, le proxy SOCKS s'exécute maintenant sur le port 9991de LocalPC.
Par exemple, si vous souhaitez visiter une page Web sur l’ LocalPCutilisation du proxy SOCKS, vous pouvez le faire dans Firefox:

Quelques remarques:
- in
~/.ssh/config, HECest le nom de la connexion: vous pouvez le changer en tout ce que vous voulez.
- Le
-D9991dit sshde configurer un proxy SOCKS4 sur le port 9991.