AWS에서 SSL 인증서 받고 적용하기

철준·2022년 12월 21일
0

https

목록 보기
2/2

aws에서 ssl인증서를 받고 elb를 통한 https 적용 (2/2)

  1. http, https의 차이, SSL, TLS의 차이
  2. https 동작과정
  3. aws에서 인증서 발급 받기
  4. aws에서 로드밸런서 만들고, 대상그룹(target group) 만들고 ec2 인스턴스에 적용하기
  5. Health Check 설정

3. 인증서

인증서를 발급 받는 방법은 여러가지가 있는데 대표적으로 CERTBOT Let's Encripto를 사용하거나 AWS에서 인증서를 발급 받는 방법이 있는데, 나는 후자를 선택했다. route 53도 사용하기 때문에 더 편리 할것이라고 판단했다. 하지만 비용이 아주 조금 발생한다는 단점이 있다(Let's Encripto는 무료로 알고있음)
aws 서비스에서 Certificate Manager에서 인증서를 만든다.
진짜 간단함 그냥 도메인 이름쓰고 나머지는 기본 값으로 요청하면 끝
(RSA 2048 공개키 암호화시스템중 하나다 RSA중 가장 높은 bit 수를 쓴다. 나중에 정리해야겠다.)

4. 로드밸런서, 대상그룹(target group)

로드밸런서는 로드밸런싱을 해주는 역할을 하는 것이다. 지속적으로 IP주속 바뀌기 때문에 도메인 기반으로 사용해야한다.
로드밸런싱은 서버에 들어오는 트래픽을 여러대의 서버에게 균등하게 분산시켜주는 역할을 한다.
서버 인스턴스의 성능을 높힐 수 있는 2가지 방법이있다.
서버의 성능을 올리는 스케일업, 서버를 여러대로 나눠 트래픽을 처리하는 스케일아웃이 있다.

aws에서는 ELB(elastic load balancer)라는 로드 밸런서가 있고
Classic Load Balancer, Network Load balancer, Application Load Balancer, GateWay Load Balancer 4가지 종류가 있다.

ALB를 사용했고, 통신 7계층의 7층에서 작동하고, HTTP, HTTPS 트래픽 로드밸런싱에 최적화 되어있다.
로드 밸런서에 대한 고정 IP 주소를 지원한다.

먼저 aws의 EC2로 들어간 후 로드밸런서를 선택하고 생성한다.
말했듯이 ALB를 선택하고 load balancer 이름을 생성하고, Mapping에서 본인 EC2에 맞는 지역을 선택하면 된다.(다 선택해도 됨)

시큐리티 그룹은 EC2의 시큐리티 그룹을 선택해준다.

그리고 리스너 설정을 해야하는데 대상그룹이 없기 때문에 대상 그룹을 만들어준다.
마찬가지로 이름만 설정하고, 80번 포트를 펜딩해주면 끝

다시 돌아와서 리스너 설정에서 Foward to 방금 만든 대상 그룹을 선택한다.

마지막으로 route 53 에서 해당 도메인에 a 유형의 트래픽 라우팅 대상을 ALB로 바꿔주면 끝!

5. healthcheck

대상 그룹에서 Health Check failed 가 떴었는데 나는 백엔드 서버에 아무것도 없어서 success code에 200뿐 아니라 404도 포함 시켰다.

0개의 댓글