본문 바로가기
Notes

WSL VScode에서 SSH 에러 (Could not establish connection to "ip")해결방법

by Yonghip 2024. 9. 20.

기존에도 WSL+VS code+SSH를 사용해 원격에 자주 접속한 적이 있어 이번에 회사에서 똑같이 따라하려다 황당한 에러가 나서 해결법은 공유하려 한다.

 

TL;DR

vscode에서 IdentityFile에 wsl경로를 리눅스(폴더에 "/" 사용)가 아니라 윈도우로 바꿔주면 해결할 수 있다. 

문제파악

VScode에서 SSH를 사용할 때 대게 위와 같은 형식을 사용한다.

이번에난 에러에서 중간 부분을 잘라왔는데 중간에 기존 IdentityFile로 지정한 id_rsa 파일이 존재하지 않는다고 경고하는걸 볼 수 있다.

 

폴더 위치를 재확인했을 때 문제가 없어서 무언가 내가 모르는 귀찮은 일이 일어났다는걸 파악했고 바로 검색에 들어갔다.

해결과정

https://github.com/microsoft/vscode-remote-release/issues/1619

 

Requires correct file permissions on key file but freezes if incorrect · Issue #1619 · microsoft/vscode-remote-release

Nothing special (same as the command line SSH client) but it provides no feedback. With the SSH key file being a regular (I mean, with the typical default Windows permissions, with inheritance on, ...

github.com

다행히 공식 레포에 똑같은 이슈가 있었고 해결법도 한눈에 알 수 있었다.

보통 WSL을 사용하니 경로를 복사할 때 우클릭하고 copy path를 사용해 경로를 붙여 넣고 이때 당연히 리눅스 경로를 사용한다. 하지만 여기서는 윈도우식 경로에 쌍따옴표를 붙여 사용하는걸 볼 수 있다.

해결법

순서대로

1. 기존 ssh파일들을 로컬에 (wsl에서 C드라이브 쪽으로) 옮긴다.

2. 그 경로의 id_rsa를 윈도우에서 복사한다.

3. 쌍따옴표 잊지 말기!


해결하고 나서 돌이켜보니 정말 오랜만에 GPT와 말싸움하지 않고 순수 검색으로 해결한 에러인것 같다. 뭔가 이러면 스스로의 힘으로 해낸 것 같아 조금 뿌듯하다.