[Mac OS] SSH 접속 방법 (로컬 > 원격) GCP 활용

Hyeri Park·2022년 10월 28일
1

OS

목록 보기
1/1
post-thumbnail

개요

Cloud Virtual Machine 을 사용하게 되면 기본적으로 쉘 접속은 클라우드에 로그인 한 후 브라우저에 연결된 쉘로 접속하게 된다. (AWS, GCP)
따라서 클라우드 로그인 없이 로컬 PC의 터미널을 활용해 접속하는 방법 정리했다.

ex) Google Cloud Platform 활용

1. SSH Key 생성

SSH 란 Secure Shell, 원격지 호스트 컴퓨터에 접속하기 위해 사용되는 보안 쉘 이다.

로컬 PC에서는 ssh-keygen 을 사용해서 키 를 생성 할 수 있다.
ip_rsa.pub 디폴트 키로 적용해도 되나 나는 VM용으로 따로 만들었다. (계속 오류가 났음..🥲)

# 키 생성 명령어 

ssh-keygen -t rsa -f ~/.ssh/[키 파일 이름] -C [username = GCP계정]
  1. ssh-keygen -t rsa -f ~/.ssh/gcp_key -C hyerihello@gmail.com

# 생성된 키 열어서 확인 명령어 

cat ~/.ssh/[키 파일 이름]
  1. cat ~/.ssh/gcp_key.pub

여기서 잠깐!

.ssh 폴더를 열어서 확인 하면 이름이 비슷한 2개의 파일을 볼 수 있는데
gcp_key.pub = public key (공개키)
gcp_key = private key (비밀키) 이다.

# 숨겨져 있는 폴더 보는 명령어

cd ~/.[폴더명]

cd ~/.ssh
ls -al

원격 연결을 위해서는 public key가 필요하기 때문에 gcp_key.pub 를 사용한다!

2. GCP 원격 서버에 Public Key 등록

로컬 PC에서 생성했던 ~/.ssh/gcp_key.pub 내용을 복사 후
GCP 서버의 ~/.ssh/authorized_keys 에 추가해야 한다.

GCP shell 에서

  1. vi ~/.ssh/authorized_keys
    i 를 입력하면 insert 모드로 수정이 가능하며, 로컬 에서 복사했던 gcp_key.pub 내용을 붙여넣고
    esc 를 누르면 읽기 모드로 다시 변환 된다.
    :wq 를 누르면 수정사항이 저장되고 빠져나온다. (참고, 저장하지 않고 빠져나오려면 :q 사용)

잘 저장되었는지 확인한다.

  1. cat ~/.ssh/authorized_keys

3. GCP 인스턴스 SSH key 등록

클라우드 브라우저로 돌아가서 Key를 추가로 등록해줘야한다.
Compute Engine > 메타데이터 > SSH키 > 수정 또는 항목추가 > gcp_key.pub 입력 > 저장

참고, 나는 등록한 키가 두 개여서 아래와 같이 나오지만 한 개만 등록 할 시 하나만 나온다.

https://console.cloud.google.com/compute/metadata?project=solar-semiotics-366106&tab=sshkeys

4. 원격접속

VM인스턴스로 돌아가서 외부 IP 확인한다.

로컬 PC로 돌아와 shell 에 접속 명령어를 입력한다.

ssh -i {로컬pc의 키파일 경로} {VM의 user계정이름}@{VM의 외부 ip}
ssh -i /Users/ila/.ssh/gcp_key hyerihello@34.64.***.***

연결 성공 ~!
수고하셨습니다 👍

profile
Backend Developer

0개의 댓글