본문 바로가기

정보/오류

SSH 연결 오류 간단 해결법 (ssh: connect to host github.com port 22: Connection refused)

깃허브의 레포지토리를 복제하기 위해서는 SSH 연결이 필요합니다.

 

그래서 로컬 저장소에 SSH 키를 생성하고 깃허브에 SSH키(public key)를 올려놓는 절차가 필요합니다.

 

하지만, 위의 절차를 모두 완료했음에도 위와 같은 SSH 연결 오류가 발생하였습니다. 정확히는 저의 경우에는 로컬 환경이 아닌 서버 환경에서 진행하였습니다.

 

그래서 아마 서버 환경에서 SSH 포트와의 연결을 차단시킨 것 같습니다.

 

 

해결 방법


먼저, 정말로 SSH 연결이 안되어서 발생한 오류인지를 더블 체크해봅니다.

ssh -T git@github.com

 

위의 코드를 입력했을 때, SSH 연결이 refused 되었다고 뜨는 경우, 아래와 같은 방법을 사용해봅시다.

 

  1. 로컬 저장소에 생성된 .ssh 폴더에 들어간다
  2. config라는 이름의 파일이 있는 경우 파일을 열고, 없는 경우 config 파일을 생성한다.
  3. 파일 내에 아래와 같은 코드를 입력 후 저장한다
Host github.com
 Hostname ssh.github.com
 Port 443

 

기본적으로 SSH는 22번 포트를 사용하는데, 일부 네트워크에서는 해당 포트가 차단 되어있을 수 있습니다. 그래서 사용하는 포트를 443번 포트로 바꾸어준 것입니다.

 

443번 포트는 HTTPS 트래픽에 주로 사용되는 포트이며, 대부분의 방화벽과 네트워크에서 열려 있어 SSH 접속에도 사용할 수 있다고 합니다.

 

깃허브 연결 뿐만 아니라 다른 사이트와의 SSH 연결이 안되는 경우에도 유용하게 사용할 수 있는 방법인 것 같습니다.

 

위의 방법은 아래의 사이트를 참고하였습니다.

https://stackoverflow.com/questions/15589682/how-to-fix-ssh-connect-to-host-github-com-port-22-connection-timed-out-for-g

 

How to fix "ssh: connect to host github.com port 22: Connection timed out" for git push/pull/... commands?

I am under a proxy and I am pushing in to git successfully for quite a while. Now I am not able to push into git all of a sudden. I have set the RSA key and the proxy and double checked them, with no

stackoverflow.com