[AWS HTTPS 적용방법]

G·2021년 6월 26일
0
post-thumbnail

하루죙일~~ 헤맨 작업끝에 HTTPS적용에 성공했다!

내가 했던 방식 순서대로 정리시작.

1. 도메인 등록

나같은 경우 AWS route53을 이용해 도메인을 구입하였다.
5달러에 1년이면 낼만하다.

이런식으로 가장싼걸로 골랐다. 가장 위에 있는 내가 선택한 5불짜리 장바구니에 추가!
도메인 이름은 보여주려고 걍 아무거나 친 상태입니다...

정보입력하고 주문완료 버튼을 누르면 도메인 등록이 완료된다.

도메인 등록 성공까지는 시간이 좀 걸린다. 좀 기다리다보면 등록 성공으로 상태가 바뀐다. 이후 호스팅 영역으로 가보면 등록된 도메인을 확인할 수가 있다!

도메인과 AWS route53연결 완료!

2. SSL Certificate 발급

이 과정에서는 AWS ACM(AWS Certificate Manager)을 사용해서
SSL 등록을 해야한다.

인증서 프로비저닝으로 시작하기


공인 인증서 요청으로 인증서 요청

*.을 붙여주자. 나중에 인증서 이름이랑 레코드에서 만드는 이름이랑 다르면 인증서가 유효하지가 않다면서 HTTPS 접속 오류가 뜬다.

이메일검증과 dns검증이 있는데 이메일의 경우 아마존에 가입할때 그 이메일
로 인증메일을 발송해준다. 나같은 경우 처음에 이메일 인증으로 했는데
오래걸리는건지 아니면 이메일을 못받아오는건지 그래서 그냥 dns검증으로 진행했다.

검토 및 요청까지 진행을 하였으면, 마지막 단계인 5단계 검증 단계에서
잠시 기다리면,


저런식으로 Route 53에서 레코드를 자동으로 생성해주는 버튼이 뜬다.
저걸 눌러주자.

좀 기다려주면 발급완료로 상태가 변한다.

이러면 도메인에 SSL등록이 완료된것이다!

3. ELB 및 최종 SSL적용하기

AWS에서 SSL을 등록한 도메인사용을 위해서는 로드밸런서를 사용!
ec2의 로드밸런서로 가자

유형을 선택하고

이름은 마음대로 지어주자. 프로젝트를 진행하면 프로젝트명으로 하는게 좋겠다.
그리고 리스너를 추가해주자.
http통신에 필요한 포트 한개
https통신에 필요한 포트 한개(443필수) 추가!
http + 인증서확인 ==> https
최소 이렇게 2개는 연결해줘야한다.

가용영역은 기본값에 두개 체크!

보안설정은 이런식으로 인증서 이름은 자동으로 딸려온다.

기존껄로 진행해도되는데 나는 그냥 새 보안그룹생성으로 다시 만들어줬다.

대상유형은 인스턴스로 설정!
인스턴스 재부팅시 ip가 바뀔수도 있어서 인스턴스단위로 걸어주는게
좋다고 한다.
프로토콜은 HTTP로 진행!

포트 80과 433으로 하나씩 추가해주면 된다.

마지막으로 검토버튼 누르고 생성버튼 누르면 로드밸런서가 생성된다!
이제 우리가 만들어준 도메인에 로드밸런서를 연결해주자.

Route53으로 이동하자.

호스팅영역으로 이동!

도메인 이름을 클릭해준다!

레코드 생성 클릭!

이런식으로 레코드를 생성해주면 된다.

대상 상태 평가를 '예'로 할 경우 주기적으로 서버상태를 체크해준다고한다.

이렇게되면!

https가 잘 적용된걸 볼수 있다!!

추가적으로 http로 접속을해도 https로 리디렉션 하려면
따로 규칙을 설정해줘야한다.
로드밸런서로 가서 리스너탭에서 규칙편집이 가능하다.
나는 이미 편집을 한 상태이기때문에 http 규칙에 이미 https로의 리디렉션이 설정되있다.

규칙 편집을 들어가서 기존꺼를 삭제하고 새로 만들어주고 업데이트를 해주자.

그러면 http로 접속을 시도하려해도 https로 리디렉션이 된다. 끝!

주의할점??

그냥 https접속을 시도해보면서 내가 한 생각인데
1. 진행하면서 route53은 상관없는데 ec2, 로드밸런서, ACM 모두 다 리전이 똑같아야 하는것 같다.
나는 걍 서울로 다 해줬다.
2. 위에서도 언급했듯이 인증서의 도메인이름이랑 route53의 호스팅영역에서의 도메인이름이 일치해야하는것

이 두개를 주의해야할것같다.

profile
Drarreg

0개의 댓글