목차
- SSH eXtension 설치
- SSH extension 사용법
- 워크스페이스
- 하나의 워크스페이스에서 로컬과 SSH를 함께
- SSH extension 연결 설정 방법
1. SSH extension 설치
먼저 VS코드에서 SSH extension을 설치해줍니다. extension 중 SSH FS 를 추천합니다.
공식적으로 지원하는 extension은 Microsoft의 Remote-SSH 지만, 이는 ssh 연결시 무조건 새 창으로 열리게 설정되어있어 사용에 불편함이 있습니다.
SSH FS extension이 설치되면 좌측 SideBar에 SSH FS 아이콘이 생길 것입니다.
2. SSH extension 사용법
SideBar에서 SSH FS 아이콘을 클릭하면 extension의 실행 화면으로 넘어갑니다.
SSH FS extension의 화면은 위와 같은데요, 크게 두 부분으로 살펴보겠습니다.
(1) Configurations
SSH 연결에 대한 프리셋을 설정하는 부분입니다. MobaXterm 등에 익숙하신 분이라면 쉽게 알 수 있을 텐데요, 미리 SSH에 대한 연결정보를 세팅해놓고 이후 쉽게 연결할 수 있도록 할 수 있습니다.
(2) Connections
Connections는 현재 연결 정보를 보여줍니다. 위의 Configurations 프리셋을 통해 연결을 하거나, instance 연결을 하게 되면 이 곳에 현재 연결중인 정보가 보여지게 됩니다.
연결 정보 설정 방법은 뒤에서 더 자세히 다뤄보도록 하겠습니다.
Configurations 중 하나에 마우스를 올려보면 네 개의 버튼이 보일 것입니다.
순서대로 아래와 같습니다.
(1) Add as Workspace folder
현재 VScode 윈도우의 Workspace에 선택한 SSH 연결 대상 서버의 폴더를 추가합니다.
이렇게 추가한 폴더는 VScode의 Explorer 에서 볼 수 있습니다.
(2) Open remote SSH terminal
SSH 터미널을 엽니다. 일반적으로 터미널에서 SSH 연결을 한 것과 동일합니다.
이렇게 연 터미널은 VScode 윈도우 하단 terminal 영역에 열리게 됩니다.
(3) Edit Configuration
SSH 연결 프리셋 설정 페이지입니다. 이에 대한 자세한 내용은 뒤에서 다루겠습니다.
(4) Disconnect
연결 해제입니다. 만약 해당 Configuration에 해당하는 연결이 열려있다면 연결을 해제합니다. 설정파일은 지워지지 않습니다.
3. 워크스페이스
워크스페이스 WorkSpace를 직역하자면 “작업장”이 되겠네요! VScode에서 워크스페이스는 “여러 폴더를 하나의 윈도우에 열어놓을 수 있는 작업환경”이라고 봐주시면 됩니다.
VScode의 Explorer 를 선택했을 때 보이는 영역이 바로 워크스페이스입니다.
위 이미지를 보면 Project 폴더와 backup 폴더가 함께 열려있는 것을 볼 수 있습니다. 하지만 이 둘은 서로 다른 경로 (Project 폴더는 D드라이브, backup 폴더는 C드라이브)에 있습니다.
이렇게 여러 폴더를 하나의 윈도우를 통해 접근할 수 있게 해서 작업의 효율성을 더욱 높여주는 것이 워크스페이스입니다.
현재의 워크스페이스를 workspace 설정파일로 저장하고, 이를 나중에 불러와서 사용할 수도 있습니다.
(File -> Save Workspace As.. / File -> Open Workspace From File …)
4. 하나의 워크스페이스에서 로컬과 SSH를 함께
로컬의 폴더와 SSH 로 연결한 원격지의 폴더를 하나의 워크스페이스에서 열 수도 있습니다. 이 때는 순서가 중요한데, 먼저 로컬의 폴더를 열어준 뒤 -> SSH 연결을 워크스페이스에 추가해줘야 합니다.
먼저 “폴더 열기” 혹은 워크스페이스에 “폴더 추가” 를 하여 로컬 폴더를 열어봅시다.
다음에는 SSH FS extension 에서 Add as Workspace folder 버튼을 눌러 워크스페이스에 원하는 원격지 폴더를 추가합니다.
이제 다시 Explorer로 돌아와 워크스페이스를 살펴봅시다. 원격지의 폴더가 워크스페이스에 추가되어 있을 것입니다.
이제 원격지의 파일을 VScode에서 바로 열고, 편집하고, 저장할 수 있습니다.
5. SSH extension 연결 설정 방법
SSH FS extension으로 돌아가서 SSH 연결 정보를 설정하는 법을 살펴보겠습니다.
먼저, SSH 연결 설정을 만들기 위해서 Create 버튼을 클릭합니다.
설정의 이름을 넣어줍니다. 이름은 영어 소문자, 숫자, 언더스코어, 닷, +, -, 앳 특수문자를 사용할 수 있습니다. 넣어줬다면 Save 버튼을 클릭합니다.
이제 본격적인 설정입니다. 주요 항목들만 빠르게 살펴보겠습니다.
설정 항목 | 설명 |
---|---|
Name | 프리셋의 이름입니다. 앞서 살펴본 것과 동일하게 영소문자, 숫자, 몇 가지 특수문자를 사용할 수 있습니다. |
Group | SSH 연결 설정 그룹을 지정할 수 있습니다. 원격지가 다수이고, 카테고리화 할 수 있을 때 사용하면 좋겠습니다. |
Host | 원격지의 IP 주소입니다. |
Port | SSH 연결을 할 포트 번호입니다. |
Root | 원격지 폴더를 열거나 SSH 터미널을 열 때의 Root 폴더를 지정합니다. |
Username | SSH 연결을 할 때 사용하는 계정명입니다. |
Password | Username에 대한 패스워드입니다. |
Private Key | 계정이 아닌, key를 통한 SSH 연결을 할 때 사용됩니다. |
연결은 Private Key 방식을 사용하는 것을 추천합니다
이전 포스팅 - SSH 에서 key를 이용한 연결
설정을 완료한 뒤 Save 버튼을 누르면 Configurations 영역에 생성한 설정이 생성된 것을 볼 수 있습니다.
Trouble Shooting
1) 서버에 .ssh 폴더가 없는 경우
ssh 키 발급 후, .ssh 폴더 내에 authorized_keys
파일을 만들면 됩니다.
ssh key 발급받기
Reference
.ssh 폴더가 없는 경우 : https://little-daily-life.tistory.com