http 프록시 액세스 만 허용하는 회사 방화벽 뒤에있는 개인용 (ssh) 개인 저장소에 액세스 (복제/푸시/풀)하고 싶습니다. 필자는 로컬 및 원격 포트 포워딩을 활용할 수있는 강력한 Java (데몬) 프로그램 (JSCh 클래스 라이브러리 기반)을 작성했으며이 기능을 활용하기를 바라고 있습니다. 그러나이를 설정하는 방법을 생각할 때 두뇌가 상처를받습니다. .방화벽 뒤에서 ssh를 통해 git 저장소에 액세스
망할 놈의 repo 저장소 (문구를 화폐로 주조하는)의 fireall을 무시 복제가 될 것이다 설정, 자연적인 성향 때문에 foo.server.com/var/git에 있습니다 :
$ git clone ssh://foo.server.com/var/git/myrepo.git
하지만, 방화벽은이 명령을 차단합니다. 내가
$ git clone ssh://localhost:8022/var/git/myrepo.git
같은 것을 시도하는 경향이있어 로컬 호스트
: 8022 그래서이 경로가 추구하는 가치가 foo.server.com:22
로 전달됩니다? 아직 안전한 솔루션이 있습니까? 내가 알아야 할 함정이나 잡기가 있습니까?
아니요. 그렇게하는 것이 그렇게 어렵습니다. 방화벽을 통해 http 만 허용됩니다. 정상적인 ssh 명령을 작동시키는 데 사용할 수있는 SSH 구성 해킹이 있지만 이러한 명령이 git 명령에 도움이되지 않는다고 생각합니다. 나는 내가 틀렸다는 이야기를 듣고 싶습니다. 그리고 일할 때 이것을 시도 할 것입니다. – pajato0
제 대답이 업데이트되었습니다. SSH 구성 해킹은 git을 통해 작동해야합니다. – Thilo
사실 SSH를 통해 fetch/push 할 때 git은 단순히'git-upload-pack' /'git-receive-pack'을 호출합니다 ('ssh git.example.com "git-upload-pack '/project.git ''). git-fetch/git-push에 적절한 옵션을 사용하여 git-upload-pack 또는 git-receive-pack을 찾을 위치를 지정할 수 있습니다. –