ssh 키의 경우 rsa 방식으로 공개키/개인키를 만들어준다.
GitHub이나 서버 접속할 때, 개인의 공개키를 해당 서버에 등록해 둔 후, 개인키로 복호화하여 접근할 수 있는 방식이다.
이번에는 GCP 에 ssh 키를 생성하여 등록한 후, 맥북 터미널에서도 GCP에서 생성한 VM 인스턴스에 접근하는 방법에 대하여 포스팅해보겠다.
다음과 같이 퍼블릭 키와 프라이빗 키를 생성한다.
ssh-keygen -t rsa -f ~/.ssh/ssh_key -C "이메일 계정"
//간단하게는 단순히
ssh-keygen 후 키가 생성될 때까지 enter 치면 된다. (비밀번호x, 그 외 등등 생성 무시하기)
위 경로를 통해 새로 만들었거나, 기존에 있었다면 다음의 명령어로 확인이 가능하다.
ls -al ~/.ssh (ssh 폴더안에 .pub 파일 있는지 확인)
cat [키이름].pub
gcp에 접속하여 Compute Engine > 메타데이터 > SSH 키에다가 복사한 키를 등록해주자.
1. 물리서버 접속!
2. cd ~/.ssh 경로에 authorzied_keys 파일 생성
1) .ssh 폴더가 없을 경우 폴더 생성 ( 권한 없을 경우 root 계정으로 전환하기 sudo su )
2) 생성 후 chmod 700 .ssh 명령으로 권한 부여
2. chmod 600 authorzied_keys 명령으로 권한 부여
3. authorzied_keys 파일 안에 복사한 키 입력해주기
ssh로 인스턴스에 접근하려면 다음 명령어를 입력해주면 된다.
ssh -i <파일명> <계정명>@<인스턴스 주소(IP 주소)>
ssh -i ~/.ssh/[ssh key이름] [key생성할때 입력했던 이메일 계정 아이디]@11.111.111.111 <--예시
접속 전! IP 주소를 고정하지 않으면 계속 변경되기 때문에, 아래 메뉴에서 변경이 가능하다~!
~/.ssh 폴더 경로에 들어와 config 파일을 하나 만들어 다음과 같이 작성해주자
Host 프로젝트명
HostName <ip주소>
IdentityFile ~/.ssh/[ssh 키명]
User <아이디 or root>
위 config 에 등록을 했을 경우, 간단하게 ssh 프로젝트명 으로 접속 할 수 있다.