J'essaie de créer un tunnel vers un serveur via un serveur de pont. Jusqu'à présent, j'ai pu le faire fonctionner correctement à partir du shell de commande en utilisant la commande suivante:
ssh -A -t bridge_userid@bridgemachine.com ssh -A remote_userid@remoteserver.com
Mais j'ai essayé de mettre cela dans mon ~/.ssh/config
dossier et j'ai des problèmes. J'ai essayé:
Host axp
User remote_userid
HostName remoteserver.com
IdentityFile ~/.ssh/id_rsa.eric
ProxyCommand ssh -A -t bridge_userid@bridge_userid.com ssh -A remote_userid@%h
Mais quand je le fais, j'obtiens le message d'erreur suivant de remoteserver.com
et je ne suis pas sûr de la cause:
ksh: SSH-2.0-OpenSSH_6.8 ^ M: introuvable
Je sais que lorsque je me connecte remoteserver.com
, ma coquille l'est /usr/bin/ksh
.
J'ai essayé d'ajouter des arguments de chemin aux commandes ssh dans le fichier de configuration, mais cela n'a fait aucune différence.
Des idées ce que cela peut être?
ssh -A remote_userid@remoteserver.com
une commande à exécuter sur la machine bridge, config ne vous donne pas un moyen de fournir des commandes par défaut. Ce que vous essayez de faire works
en soi, mais ssh essaie ensuite d'utiliser votre ProxyCommand
comme tunnel et commence à tirer le protocole SSH vers le bas là où un shell attend à l'autre extrémité plutôt qu'un sshd écoutant le protocole SSH.
ProxyCommand
est censé être utilisé. Généralement, il est utilisé avec netcat où ssh achemine sa sortie à travers lui et netcat agit comme tunnel vers le port SSH du serveur distant . Vous avez besoin d'un ProxyCommand quelque chose commessh -W %h:%p bridge_userid@bridgemachine.com
si vous voulez utiliser cette fonctionnalité.