GNU/Linux >> Tutoriels Linux >  >> Linux

Ssh - Problème de gestion de fichiers avec plusieurs connexions Ssh courantes ?

souvent je dois télécharger un fichier qui n'est pas directement accessible via la première connexion SSH. Par exemple, je suis sur une machine Windows et je souhaite accéder à une autre machine accessible uniquement depuis le réseau local. Cela signifie que je dois d'abord me connecter à une machine intermédiaire et SSH à la suivante.

Il serait facile d'utiliser pscp pour obtenir le fichier, s'il était disponible pour la première machine. Le transfert de port SSH peut-il être utilisé dans ce scénario ?

Réponse acceptée :

Oui, le transfert de port SSH peut être utilisé dans ce cas, mais vous pouvez également recevoir des avertissements concernant des clés d'hôte non valides ou incorrectes lorsque vous tentez cela. Certains clients SSH comme OpenSSH suivent les clés d'hôte SSH par domaine ou IP uniquement et n'incluent pas le numéro de port. PuTTY semble enregistrer le numéro de port avec la clé d'hôte et ne devrait pas souffrir de ce problème tant que vous êtes cohérent avec les numéros de port que vous utilisez pour chaque hôte. Je recommanderais d'ajouter les transferts de port à une session enregistrée dans PuTTY. Vous pouvez également enregistrer les sessions supplémentaires pour les différents hôtes distants en tant que sessions enregistrées et les utiliser avec pscp/psftp. Vous pouvez commencer avec n'importe quel port de numéro élevé pour le transfert, tel que 2220, puis augmenter de un à partir de là pour chaque hôte que vous devez transférer via un hôte intermédiaire. Ajouter à la session enregistrée pour intermediate transfert de port local comme le port 2220 et destination remote1:22 et port 2221 avec destination remote2:22 pour les hôtes distants remote1 et remote2 Créez ensuite des sessions pour remote1 avec destination localhost et port SSH 2220 et une session pour remote2 avec destination localhost et port SSH 2221 . Pour utiliser des sessions avec pcsp/psftp, utilisez @session-name pour l'hôte.

Le problème se produit lorsque vous avez associé d'une manière ou d'une autre une clé d'hôte SSH à localhost et que vous essayez de vous connecter à un port local qui est transféré vers un autre ordinateur. Avec OpenSSH, j'ai résolu ce problème en utilisant HostKeyAlias . J'ai ajouté des entrées à mon ~/.ssh/config comme ceci :

Host intermediate
HostName intermediate.example.org
LocalForward 2220 remote1.example.org:22
LocalForward 2222 remote2.example.org:22

Host remote1
HostName localhost
Port 2220
HostKeyAlias remote1.example.org

Host remote2
HostName localhost
Port 2221
HostKeyAlias remote2.example.org

Ma solution préférée, cependant, était lorsque j'ai déployé IPv6 sur mon réseau domestique et professionnel et que je n'avais plus à me soucier de me connecter d'abord à un serveur intermédiaire pour arriver à ma destination finale.

Connexe :Linux – Y a-t-il un risque sérieux si Mint 17 pense qu'il s'agit d'Ubuntu ?
Linux
  1. Comment configurer des connexions SSH personnalisées pour simplifier l'accès à distance

  2. Comment exécuter ssh sur plusieurs ports

  3. vérifier si le fichier existe sur l'hôte distant avec ssh

  4. SSH :connect to host localhost port 22 : Connexion refusée

  5. Fichier journal de queue sur plusieurs machines via ssh

Comment changer le port SSH sur VPS

Utilisation du fichier de configuration SSH

Comment créer des hôtes virtuels sur un serveur Apache pour héberger plusieurs sites Web

Utiliser le fichier de configuration SSH pour gérer les connexions SSH à divers serveurs distants

se connecter à l'hôte localhost port 22 :Connexion refusée

Tunnel SSH HTTPS