Git, SSH und ProxyCommand

8

Ich habe einen Git-Server, der sich hinter einer Firewall befindet. Ich kann von zu Hause aus auf die Firewall zugreifen, aber nicht auf den Git-Server. Ich kann jedoch von der Firewall auf den Git-Server zugreifen (das heißt, ich kann SSH zur Firewall und dann SSH von der Firewall zum Git-Server). Ich versuche, von meiner Heimmaschine auf die Git-Repos zu drücken und zu ziehen, und ich dachte, der SSH-Proxy-Befehl würde es tun. Also habe ich meiner SSH-Konfigurationsdatei folgendes hinzugefügt:

%Vor%

Mit diesem Setup kann ich direkt SSH zum Git Server machen, indem ich ssh git_server mache. Git-Befehle, die mit dem Server kommunizieren müssen, funktionieren jedoch nicht. git remote show origin schlägt mit der Nachricht fehl:

%Vor%

Die URL des Ursprungsrepo ist

%Vor%

Ich denke, ich habe die meisten Dinge an Ort und Stelle, aber vermisse ein kleines entscheidendes Stück. Irgendwelche Hinweise darauf, was ich falsch machen könnte?

    
Varun Vats 15.06.2013, 00:24
quelle

2 Antworten

3
%Vor%

Sie verwenden die falsche URL für Ihr Repository. Da Ihre ssh-Konfigurationsdatei einen Hosteintrag für git_server hat, müssen Sie diesen Hostnamen auch in Ihrer Repository-URL verwenden, da SSH sonst keinen ProxyCommand verwendet.

Die richtige URL sollte entweder

sein %Vor%

oder einfach

%Vor%     
innaM 15.06.2013, 09:43
quelle
1

Es ist möglich, wie in " Git-Klon vom Remote-SSH-Repository - den Computer im Remote-Netzwerk vor dem Ausführen des Klonbefehls zu ändern ", dass Sie nicht den Befehl netcat auf dem Proxy-Server haben.

Sie haben auch eine andere Lösung mit socat , die mit dem HTTP (S) -Proxy-Server verhandelt Mit der CONNECT-Methode erhalten Sie eine saubere Verbindung zum Server auf der anderen Seite. Siehe socat .

%Vor%
  

Jetzt können Sie einfach sagen (zum Beispiel):

%Vor%     
VonC 15.06.2013 03:15
quelle

Tags und Links