2 votes

Comment faire fonctionner le ssh chaîné avec git ?

J'essaie de contourner un problème stupide de pare-feu. J'essaie de chaîner l'accès ssh à git par le biais d'un proxy ssh :

~/git-chain :

#!/bin/bash
ssh hosticangetto ssh $*
# End

Et puis :

$ export GIT_SSH=~/git-chain
$ git clone ssh://git@somerepostore.com/somerepo.git

E, [2012-02-07T12:50:21.434913 #28359] ERROR -- : git command not recognized
fatal: The remote end hung up unexpectedly

les arguments passés dans mon script sont :

git@somerepostore.com git-upload-pack 'somerepo.git'

J'ai vérifié les clés de l'hosticangetto vers le magasin de dépôt git et tout est ok.

Je ne sais pas pourquoi cela échoue. J'ai déjà fait ce genre de chose avec mercurial avant avec mercurial -e switch.

4voto

stew Points 9143

Ajoutez ces lignes à votre ~/.ssh/config (ou créez ce fichier avec ces lignes s'il n'existe pas déjà) :

Host somerepostore.com
    ProxyCommand ssh -W %h:%p hosticangetto

Ensuite, désactivez GIT_SSH.

Ceci indique à ssh de ssh en utilisant hosticangetto comme proxy. C'est mieux que votre solution car dans votre solution, les paquets sont décryptés sur hosticangetto et ensuite ré-encryptés pour somerepostore.com sur l'hôte distant. En utilisant une proxycommande comme celle-ci, les paquets sont cryptés pour somerepostore.com sur votre machine locale et ces paquets cryptés passent par hosticangetto.

0voto

cjc Points 24265

Je pense que vous devez faire quelque chose avec le TTY.

Ça n'a pas marché :

ssh server1 ssh server2

C'est juste suspendu là.

Cela semble avoir fonctionné :

ssh -t server1 ssh server2

En regardant la sortie verbeuse avec ssh -v server1 ssh server2 il semble que le premier ssh/outside se termine et que j'arrive au serveur1, mais je n'exécute pas le ssh inside/second pour le serveur2.

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