1 분 소요

서론

Doore 프로젝트에서 인프라를 담당하고 있습니다. AWS 도메인 발급을 이용하면 정말 간단하지만, 기본 16,000원이고 지속해서 돈을 지출해야 합니다. 학생들 입장에서는 16,000원은 정말로 큰돈이라고 생각해 최대한 무료로 도메인을 발급 받고 HTTPS를 적용하고 싶었습니다. 최근 KEEPER 동아리도 인프라 유지비에 부담을 느끼고 있어 무료 도메인으로의 이전을 생각하고 있습니다. 금전적인 지원을 많이 받아 여러 가지 AWS 서비스를 사용하는 것도 좋지만, 한정된 자원으로 최대한의 효율을 뽑아내는 것도 좋은 경험이라고 생각합니다.

아래에서는 내 도메인 한국을 이용한 무료 도메인 발급 방법과 Certbot을 이용한 HTTPS 적용 방법에 대해서 알아보도록 하겠습니다.

무료 도메인 발급

내 도메인 한국이란 사이트에서 무료로 도메인을 발급 받을 수 있습니다. 로그인 과정을 거치고 도메인을 발급 받을 수 있습니다. 제가 참고한 사이트는 [Domain] 무료 도메인 만들기(내도메인.한국)입니다. 블로그 내용처럼 IP연결(A)에 www.doore.kro.kr로 설정을 하고 퍼블릭 IP를 입력하면 “doore.kro.kr”로 접속할 수 있습니다.

RestDocs 이미지

HTTPS 인증서 발급

Certbot이라는 툴을 이용해서 HTTPS 인증서를 쉽게 발급 받을 수 있습니다. 과거에는 인증서 발급이 굉장히 어려웠지만 Certbot이 나오고 무료로 쉽게 인증서를 발급 받을 수 있게 되었습니다. Docker(Nginx + Certbot) 조합으로 HTTPS 인증서를 발급 받을 수 있고, Docker(Nginx) + EC2(Certbot) 조합으로 인증서를 발급 받을 수 있습니다.

두레는 Docker(Nginx) + EC2(Certbot) 조합으로 인증서를 발급 받았습니다. 이유는 2번째 조합이 1번째 조합보다 상대적으로 인증서 발급이 쉬웠기 때문입니다. 제가 참고한 사이트는 Let’s Encrypt로 HTTPS 를 적용해보자입니다. 아래의 코드를 입력해 EC2에 certbot을 설치할 수 있습니다. 중간에 핑크색 화면이 떠도 당황하지 말고, 엔터를 누르면 됩니다.

sudo apt-get update -y
sudo apt-get install software-properties-common -y
sudo apt-get install certbot -y

그 후 아래의 코드를 입력하고 발급받은 TXT 값을 내 도메인 한국 사이트에 가서 입력합니다.

// STEP1
sudo certbot certonly -d www.doore.kro.kr --manual --preferred-challenges dns

// STEP2
_acme-challenge.doore.kro.kr

RestDocs 이미지

“Successfully received certificate”가 뜨고 sudo cat /etc/letsencrypt/live/doore.kro.kr/fullchain.pem 명령어를 친 후 정상적으로 인증서가 발급되었는지 확인합니다.

Nginx HTTPS 인증서 적용

Docker Volumn 설정과 Nginx의 default.conf 설정을 통해서 발급받은 인증서를 적용하면 됩니다. Docker-compose 볼륨 설정과 default.conf 설정은 제 깃허브 레포인 01-doo-re-infrastructure에서 확인하실 수 있습니다.

결론

내도메인 한국에서 무료로 도메인을 발급받을 수 있습니다. 또한 Certbot을 사용해 HTTPS 인증서를 발급받고 Nginx 설정을 통해 HTTPS 인증서를 적용할 수 있습니다.

카테고리:

업데이트: