공부하는 블로그

AWS | 토이프로젝트 운영서버 구축기 (5) - ELB에 SSL 인증서 적용 본문

AWS

AWS | 토이프로젝트 운영서버 구축기 (5) - ELB에 SSL 인증서 적용

치킨닮은닭 2023. 8. 20. 18:34

* 토이 프로젝트를 진행하면서 AWS를 이용하여 Spring 기반의 운영 서버를 구축한 내용을 정리했습니다.

 

 이번 포스팅에서는 ELB에 https 접속을 위한 SSL 인증서를 연결하는 방법에 대해 알아보겠습니다. 선행 내용들은 이전 포스팅을 참고해주세요!

 

0. SSL?

 Secure Sockets Layer(SSL)은 웹사이트와 브라우저 사이에 전송되는 데이터를 암호화하여 인터넷 연결을 보호하기 위한 표준 기술입니다.

 웹서비스에서 사용되는 프로토콜인 HTTP에 보안을 위한 SSL 인증서를 적용하면 HTTPS 프로토콜이 됩니다. 보안이 중요해진 요즘 웹서비스를 안전하게 운영하기 위해서는 HTTPS 적용은 필수적이라 할 수 있습니다.

 

1. AWS Certification Manager(ACM)

  SSL/TLS 인증서를 관리하는 AWS 서비스입니다. 해당 서비스를 이용하면 SSL 인증서를 생성하고 로드 밸런서에 적용을 손쉽게 할 수 있습니다. 

 

1-1. 인증서 생성하기

AWS 콘솔에 접속하여 "ACM 서비스 > 인증서 요청"메뉴에서 인증서 생성이 가능합니다. 인증서를 연결할 도메인은 원하는 플랫폼에서 구매하여 준비해주세요.

 

 서브 도메인도 모두 허용해주기 위해 *.도메인명 으로 인증서를 생성합니다. 인증 방법은 DNS를 이용한 검증 방법을 선택하였습니다.

 

1-2. 인증서 검증 (DNS 검증)

도메인의 CNAME을 이용하여 검증합니다.

도메인 관리에서 발급된 CNAME 이름과 CNAME 값을 설정해주어 도메인으로 들어오는 트래픽을 AWS 검증 서버로 연결해줍니다. 

CNAME 이름은 "xxxxxx.도메인명" , CNAME 값은 "xxxxxx.acm-validations.aws" 포멧으로 발급됩니다.

 

검증이 제대로 완료되면 상태가 몇분 이내로 "검증 대기중"에서 "발급됨"으로 변경됩니다.

 

2. 로드 밸런서에 연결

발급된 인증서를 로드밸런서에 적용합니다. 로드밸런서의 상세 정보 페이지에서 리스너를 추가합니다.

로드밸런서 HTTPS 리스너 설정

HTTPS 프로토콜로의 요청은 이전에 생성한 타겟 그룹으로 보내도록 리스너를 설정하고, ACM에서 인증서 가져오도록 설정합니다.

 

3. HTTPS 요청하기

인증서를 발급 받은 도메인의 서브도메인에 로드밸런서를 연결하고 HTTPS 요청한 결과입니다.

정상 요청 확인!

 

다음 포스팅에는 RDS 서비스를 생성하고 어플리케이션에 연결하는 방법에 대해 알아보겠습니다.

Comments