지금까지 GCP에서 제공하는 콘솔창에서 SSH로 접근하는 방식을 사용하였다. 하지만 이제 RKE2 을 사용하기로 방향이 잡혀졌고, 서비스를 구축하는데 콘솔창에 접근해야 하는 경우가 많아지기 시작했다. 매번 콘솔창에 접근하여 접속하는 방법이 귀찮아지고, 추후 접근을 더 용이하게 하기 위해 SSH 키를 등록하여 외부터미널에서 접근하고자 한다.
1. 새로운 PEM 키 준비
기존에 저는 라즈베리파이에 접근하기 위해 PEM 키를 다운받은 경험이 있습니다. 해당 키를 이용하여 접근해도 괜찮지만, GCP 용 PEM 키를 하나 더 생성하여 사용하기로 하였습니다.
클라이언트에서 새로운 PEM 키를 생성하기위해 다음 명령어를 실행한다.
$ ssh-keygen -t rsa -b 2048 -f ~/.ssh/gcp -C "your_email@example.com"
- -t rsa : RSA 알고리즘 사용
- -b 2048 : 키 길이를 2048비트로 설정
- -f ~/.ssh/gcp : 생성된 키를 ~/.ssh/gcp 파일에 저장
- -C "your_email@example.com" : 주석으로 이메일을 추가 (해당 이메일의 your_email 이 아이디가 될 예정)
개인키에 관한 권한이 너무 공개 되어 있어도 경고 문구가 뜨면서 permission denied 를 초래할 수 있기 때문에 미리 권한을 축소시킨다.
$ chmod 400 ~/.ssh/gcp
- chmod : change mode 의 축약어 명령어로써 파일들이나 디렉터리의 파일 시스템 모드를 바꾼다.
- 400 : User/Group/All 을 의미한다. 여기서 숫자는 각 권한에 대응하는 숫자의 합이고 4는 읽기, 2는 쓰기, 1은 실행에 해당한다.
만약 6이면 읽기 + 쓰기, 7이면 읽기 + 쓰기 + 실행 권한이라고 보면 된다. 따라서 400은 User 만 읽기 권한이 있고, 나머지는 권한이 없는 상태이다.
2. GCP에 SSH 키 등록
먼저 다음 명령어를 통해 SSH 파일에 gcp.pub 키 값을 확인한다.
$ cat ~/.ssh/gcp.pub
해당 키를 복사한 후에 GCP 콘솔로 이동 → VM 인스턴스 페이지 → 대상 VM 인스턴스 선택 → 메타데이터 → SSH 키 로 접근하여 붙여넣기 한다.
정상적으로 등록이 되었다면 다음 명령어를 통해 외부터미널에서 GCP 에 접근이 가능할 것이다. VM_EXTERNEL_IP 에는 GCP 의 공인 네트워크 주소를 기입하면 된다.
$ ssh -i ~/.ssh/gcp jeenuk.chung@VM_EXTERNAL_IP
'Project > ST00CK' 카테고리의 다른 글
Github 연동 및 Swagger 설치 (2) | 2024.12.16 |
---|---|
RKE2 Rancher 설치 실패 및 GCP 무료 크레딧 만료 ... 추후 계획 (2) | 2024.12.16 |
Socket.IO, Kafka, Kafka Connect, ScyllaDB 사용 이유 (0) | 2024.12.05 |
express + Socket.IO 사용하기 (0) | 2024.12.03 |
GCP VM 설정 및 리소스 설치하기 (0) | 2024.11.28 |