로드 밸런서에 SSL 인증서 발급하여 EC2 인스턴스 각각에 인증서 발급하기(Route 53)

728x90

구성도

Route 53 에 도메인 등록

  1. Route 53 호스팅 영역을 클릭
  2. 호스팅 영역 생성 버튼 클릭
  3. 도메인 판매 사이트(가비아 등..)에서 도메인 구매 후 도메인 이름을 작성한다. 나는 seongwoo.shop 도메인을 구매하였다.

  1. 아래 그림처럼 호스팅 영역이 생성된다. 참고로 버플릭 호스팅 영역과 프라이빗 호스팅 영역의 차이는 쉽게 말해서 인터넷과 통신을 할 수 있냐 없냐의 차이(VPC 망 내부인지 외부인지 차이 정도..?) 로 생각하면 된다.

  1. 가비아에 도메인 관리 들어가서 생성된 NS 레코드 타입의 value 들을 적어준다. 원래라면 NS, SOA 유형의 레코드 이름만 보일 것이다. 여기서 CNAME 유형의 레코드들은 안보이는 것이 정상이다.

AWS Certificated Manager 에서 SSL 인증서 발급

  1. 인증서 요청 클릭
  2. 인증서 유형으로는 퍼블릭 인증서 요청을 클릭한다.

  1. 어떤 도메인에 해당 SSL 인증서를 적용할 것인지 알려주기 위해 도메인 이름을 작성해야 하는데 * 와일드 카드를 이용해서 www.seongwoo.shop, dev.seongwoo.shop, api.seongwoo.shop.... 등 seongwoo.shop 앞에 오는 모든 값들에 대해 인증서를 주겠다는 것이고 seongwoo.shop 에도 인증서를 적용해야 하기 때문에 seongwoo.shop 도 추가 해준 것이다.

  1. DNS 검증 방식을 사용하고 태그는 선택 사항이다.

  1. 그럼 아래처럼 인증서가 만들어지는데 해당 인증서는 사용할 수 없는 상태이다. 그래서 해당 인증서를 활성화시켜야 하는데 엄청 간단하다.

  1. 인증서 ID 를 클릭하고 도메인 영역에 있는 Route 53에서 레코드 생성 버튼을 클릭하면 최대 30분 내로 인증서가 활성화가 된다.

로드 밸런서 생성 및 Route 53 레코드 등록

기본적인 ALB 를 만들어주면 된다.

다만 수정할 부분이 있는데 바로 리스너 부분이다.

일단 HTTPS 443 포트에 리스너가 필요로 한다.

Route 53 서비스로 넘어가서 아래처럼 레코드를 등록해준다. dev.seongwoo.shop 이라는 도메인에 CNAME 레코드 타입을 사용해서 로드 밸런서 DNS 이름으로 라우팅 되게 해준다.

이제 dev.seongwoo.shop 에 접속을 하면 https 로 연결이 되고 로드 밸런서에 타겟 그룹으로 라우팅이 되는 것을 확인할 수 있다.

728x90