GCP(Google Cloud Platform)에서 SSH 접속을 설정하는 것은 클라우드 서버 관리의 필수 단계 중 하나입니다. 이번 글에서는 Public Key를 생성하고 GCP에 추가하는 방법과 VS Code를 통해 원격 서버에 접속하는 방법을 단계별로 설명드리겠습니다.
1. SSH 접속용 Public Key 생성
먼저 로컬 환경에서 원격 서버로 안전하게 접속할 수 있도록 SSH 키를 생성해 보겠습니다. SSH 키는 Public Key와 Private Key로 구성되며, 이를 통해 인증 과정을 진행합니다.
ssh-keygen -t rsa -f [저장경로/파일명] -C [gcp id] -b 2048
위 명령어를 입력하면, SSH 키가 생성됩니다.
- -t rsa: RSA 방식으로 키를 생성
- -f [저장경로/파일명]: 저장할 경로와 파일명 지정
- -b 2048: 키 길이를 2048비트로 설정
- -C [gcp id]: 키에 붙일 주석, gcp id를 넣음
Enter passphrase (emtpy for no passphrase):
Enter same passphrase again:
명령어 실행 후, Passphrase를 묻는 메시지가 나오면 비밀번호 없이 바로 사용하려면 공란으로 두고 Enter를 입력합니다.
이후 지정된 경로에 rsa_key(Private Key)와 rsa_key.pub(Public Key)가 생성됩니다. 여기서 rsa_key.pub 파일을 메모장으로 열어 전체 복사합니다.
.
2. GCP에 Public Key 추가
2.1 GCP 계정 전체 ssh key 추가
- GCP 콘솔에 접속합니다.
- Compute Engine > 설정 > 메타데이터 > SSH 키로 이동합니다.
- 수정 버튼을 클릭하고, 항목 추가를 선택한 후, 아래 형식으로 Public Key를 입력합니다.
ssh-rsa AAAAB3NzaC1tc2EAAAADAQABAAAEAQDLpkjXX...=gcp_id
2.2 GCP 계정 개별 인스턴스 ssh key 추가
- GCP 콘솔에서 Compute Engine > VM 인스턴스로 이동합니다.
- 원하는 인스턴스를 클릭한 후, 수정 버튼을 선택합니다.
- SSH 키 섹션에서 항목 추가를 클릭한 후, Public Key를 추가합니다.
ssh-rsa AAAAB3NzaC1tc2EAAAADAQABAAAEAQDLpkjXX...=gcp_id
3. VS Code SSH Configuration File 만들기
VS Code를 사용하면 매우 편리하게 원격 서버에 접속하고 관리할 수 있습니다. 아래 단계를 따라 SSH 설정 파일을 만들고, GCP 인스턴스에 접속하는 방법을 알아보겠습니다.
3.1 VS Code Extension 설치
- Remote - SSH 확장을 설치합니다. (VS Code 좌측 확장 아이콘을 클릭한 후, 'Remote - SSH'를 검색하여 설치)
3.2 SSH Configuration 파일 생성
- Ctrl + Shift + P를 눌러 **Remote-SSH: Connect to Host...**를 입력하고 선택합니다.
- **Configure SSH Hosts...**를 선택한 후, 경로를 C:\Users\admin\.ssh\config로 지정합니다.
- 아래 내용을 추가합니다.
Host GCP
HostName [GCP 외부 IP]
IdentityFile [RSA KEY 파일경로\RSA KEY 파일명 ]
User [GCP id]
Host: 자유롭게 지정할 수 있는 호스트 이름입니다.
HostName: GCP VM의 외부 IP 주소를 입력합니다.
IdentityFile: 로컬에서 생성한 Private Key의 경로를 지정합니다.
User: GCP 인스턴스의 사용자 ID를 입력합니다.
4. 접속
VS Code에서 Remote Explorer 확장을 통해 위에서 설정한 GCP 인스턴스로 바로 접속할 수 있습니다. 연결되면 로컬 환경에서 원격 서버의 파일을 열어 작업할 수 있습니다.