1 votes

Comment télécharger un fichier via (Putty) SSH

Imaginez la situation suivante :

Je n'ai pas d'accès SSH direct au serveur A en raison de restrictions liées au filtrage IP. Pour accéder au serveur (à partir de Windows en utilisant putty), je me connecte d'abord à Server-B, qui a une adresse IP en liste blanche, et de là, je me connecte en SSH à Server-C, puis de là, je me connecte en SSH à Server-A (je sais que cela semble fou, mais malheureusement je n'ai pas le droit de modifier les restrictions de filtrage IP). Existe-t-il un moyen d'utiliser putty/winscp/quelque chose d'autre pour télécharger un fichier du serveur A vers mon PC local ?

4voto

Moritz Both Points 647

Utilisez la redirection de port. WinSCP, par exemple, a une option pour créer une connexion via un tunnel ssh et il utilise la redirection de port. Cependant, puisque vous devez passer par un tunnel deux hops, vous ne pouvez pas l'utiliser.

Je devrais d'abord créer une connexion ssh avec le serveur-B qui a un tunnel vers le serveur-C. Vous pouvez utiliser plink.exe pour cela (qui fait partie de putty) :

plink.exe -l username_on_server_B -L 8888:server-C:22 server-B

Maintenant vous pouvez créer un second tunnel, en utilisant une connexion ssh au serveur-B, qui mène au serveur-A (dans un second cmd.exe Shell) :

plink.exe -l username_on_server_C -L 8889:server-A:22 -P 8888 localhost

Après cela, vous devriez être en mesure de vous connecter au serveur-A en utilisant WinSCP. Au lieu du serveur-A, vous vous connectez au port 8889 de l'hôte local, qui sera relié par un tunnel au serveur-A.

Ceci n'a pas été testé mais devrait fonctionner je pense.

3voto

twehad Points 286

Le moyen le plus simple sans chaînes :

  1. télécharger un fichier du Serveur-A au Serveur-C en utilisant scp
  2. télécharger un fichier du Serveur-C au Serveur-B en utilisant scp
  3. télécharger le fichier du serveur B vers le PC local en utilisant WinSCP

2voto

jcollum Points 10236

WinSCP prend en charge le tunnelage SSH. Pour l'activer :

  • Cliquez sur la case à cocher "Options avancées".
  • dans l'arbre de configuration, cliquez sur "Connexion/Tunnel" et ajoutez ici le serveur de saut intermédiaire.
  • dans l'arbre de configuration, cliquez sur "Session" et configurez le serveur de destination. Enregistrez la session pour un utilisateur ultérieur en cliquant sur "Enregistrer...".

Vous pouvez enchaîner le reste des connexions en utilisant le tunneling ssh. Voir l'option -L pour openssh : ssh -L 1234:remote_host:22 user@intermediate_hop . Ensuite, vous pouvez vous connecter sur le remote_host ssh en utilisant localhost:1234 sur le intermediate_hop.

0 votes

Il a deux des sauts intermédiaires. WinSCP fournit-il vraiment cela ?

0 votes

Non, WinSCP ne peut utiliser qu'un seul tunnel. Mais il peut utiliser un autre tunnel que celui fourni par WinSCP.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X