2024-06-10 14:24:56

오늘은 gitlab-ci로 ec2에 jar를 배포하기 위해 필요한 절차인 SSH 키를 생성하고 gitlab과 ec2에 세팅하는 방법에 대해 알아보겠습니다.

 

1. SSH 키 생성

ssh 키를 생성하기 위해서는 다음과 같은 명령어를 ~/.ssh 디렉터리 안에서 실행하면 됩니다.

 

ssh-keygen -t rsa -b 4096 -C "여러분의이메일주소"

 

이 명령을 실행하고 나면 ~/.ssh 안에 두 개의 파일이 생성되었을 것입니다.

 

id_rsa

id_rsa.pub

 

2. SSH private 키 git lab 등록

이 중 id_rsa를 내용을 복사하여 깃랩의 환경변수에 등록합니다. id_rsa의 내용을 cat id_rsa, vi id_rsa 등의 방식으로 읽어보면 -----BEGIN OPENSSH PRIVATE KEY-----로 부터 시작하여 -----END OPENSSH PRIVATE KEY-----로 끝나는 암호같은 내용이 있을 텐데, 해당 내용을 포함하여 전체 복사합니다.

 

레포지토리에서 Settings > CI/CD > Variables를 들어가시면 Add variable 버튼이 있습니다. 여기에 SSH_PRIVATE_KEY 변수를 만들어서 위에서 복사한 OPENSSH PRIVATE KEY를 담아주면 됩니다. 

 

 

3. SSH public 키 EC2 등록

이번에는 id_rsa.pub의 내용을 전체 복사합니다. 그 다음에 ec2에 접속하여 ~/.ssh/authorized_keys 맨 아래 줄에 복사한 내용을 붙여줍니다. 다음과 같은 명령을 수행하시면 됩니다.

 

echo "여러분이복사한id_rsa.pub내용" >> ~/.ssh/authorized_keys

 

이것으로 gitlab 서버가 ec2 서버에 ssh 접속할 수 있는 준비가 되었습니다.

 

끝.