2013-02-14 2 views
3

저는 대학생이며 80, 443을 제외한 모든 포트는 차단됩니다. 내가Heroku에 포트 443을 사용하여 연결

Host github.com                      
    Hostname ssh.github.com 
    Port 443 

git push heroku master를 통해 GitHub의에 연결할 수있어 나를이 오류가 있습니다 : 나는 SO에 here을 게시 솔루션을 시도했습니다

ssh: connect to host heroku.com port 22: Connection refused 
fatal: The remote end hung up unexpectedly 

을하지만 난 아직도했습니다 작업을 얻었다. 내 웹 사이트를 배포하는 heroku에 연결할 수있는 방법이 있습니까?

감사

+0

당신이 당신의 스푸핑/설정 및 설명 [여기] (HTTP와 같은 .git/config에 모두 수정 했 : //stackoverflow.com/a/11158724/28037)? 수정 후에 어떤 오류 메시지가 나타 납니까? – culix

답변

4

당신은 터널링을 고려할 수 있습니다.

는 터널링을 위해 당신은 우리가 Heroku가 서버에 터널에 집 PC를 사용할 수 있습니다 아래의 시나리오 포트 (22)

에 추가 PC 또는 서버 차단 된 네트워크의 외부에 갖는 액세스 권한이 필요합니다.

  1. 구성 SSH 서버에서 : 대학 네트워크는 포트 80과 443을 허용하기 때문에, 우리는 집 PC에서 포트 (22)

    에 포트 443 및 터널 그것을 통해 연결을받을 수있는 주택의 PC를 설정할 수 있습니다 집 PC는 포트 443 Refer here to configure SSH Server on Multiple Ports

대학 PC를 실행합니다 :

  1. 구성 대학교 PC는 [email protected]_tunnel:{app name}.git

    git remote add tunnel [email protected]_tunnel:{app name}.git

  2. 을 가리 킵니다 tunnel로 새 원격 별칭을 추가

    # ~/.ssh/config 
    
    Host git_tunnel 
        Hostname 127.0.0.1 
        User git 
        Port 9001 
    
  3. 를 다음 포트 9001 편집 ~/.ssh/config에 로컬 호스트 추가 가리 키도록 git_tunnel 별칭을 해결하기 위해

  4. 대학 PC에서 터널을 설정하여 443 번 포트에서 수신 대기합니다.

    만든 별칭 tunnel를 사용하여 Heroku가에

    ssh -L 9001:heroku.com:22 -p 443 [email protected]

  5. 배포를 이전

    git push tunnel master

+0

또는 공개적으로 사용 가능한 VPN (예 : https://hide.me/)을 사용하고 원하는 포트 번호를 사용해보십시오. – Azi

7

에게 Heroku의 SSH는 당신이 HTTP를 통해 밀어 수있는 플러그인이 있지만,이 포트 (22)를 통해 작동하는 많은. 그래도 git은 사용하지 않습니다. 대신 heroku push입니다. 당신의 SSH 포트가 차단 및 대체 포트를 사용하여 Heroku가로 밀어하고자 된 경우

https://github.com/ddollar/heroku-push

+1

은 매력처럼 작동합니다! – mtsz

관련 문제