이번에는 AWS에서 HTTPS 연결을 설정하는 방법에 대해 알아 볼 것이다.
HTTPS는 웹사이트와 사용자 간에 데이터가 암호화된 상태로 전송되게 해주어 보안을 강화하는 역할을 한다.
1단계: SSL/TLS 인증서 구하기
먼저, HTTPS 연결을 설정하기 위해선 SSL/TLS 인증서가 필요하며, AWS의 Certificate Manager 서비스를 사용하면, 무료로 인증서를 발급받을 수 있다.
AWS Management Console에 로그인 한 후, “AWS Certificate Manager”를 찾아 클릭한다.
그리고 지역을 “미국 동부(버지니아 북부) us-east-1″을 선택한다.(CloudFront 설정 시 us-east-1에 인증서가 있어야 한다.)
그리고 “인증서 요청”을 선택하고, 도메인 이름을 입력한 후 인증서 요청을 완료한다.
인증서 요청 후 생성된 “인증서 ID”를 클릭하여 인증서 세부정보에 들어가면 “도메인” 항목에 검증하고자 하는 “CNAME”이 있다. 여기서 “Route 53에서 레코드 생성”을 클릭하여 레코드를 생성한다.
생성 된 뒤 Route 53으로 돌아가 확인해보면 레코드가 하나 더 생성된 것을 확인할 수 있다.
이제 인증서 발급을 기다리면 된다. 인증서 발급까지는 일정시간이 소요 될 수 있다.
잠시 후 다시 확인해 봤더니 발급 완료 되었다.
2단계: AWS CloudFront 설정
AWS S3 버킷을 HTTPS로 제공하려면, AWS CloudFront를 사용해야 한다. CloudFront는 AWS의 CDN(Content Delivery Network) 서비스로, S3 버킷의 컨텐츠를 전 세계에 빠르고 안전하게 배포해준다.
CloudFront 대시보드로 이동하여 “CloudFront 배포 생성”을 클릭한다.
원본 도메인 이름에 S3 버킷의 주소를 선택한다.
“대체 도메인 이름(CNAME) – 선택사항”에 도메인 주소를 입력한다.
그리고 SSL 인증서에 생성한 인증서를 선택한다.
“기본값 루트 객체”에 홈페이지 접속 시 사용할 “index.html”을 입력해주고 “배포 생성”을 클릭해준다.
그럼 아래와 같이 활성화가 된다.
생성된 ID를 클릭하여 세부 정보 들어간 뒤 “배포 도메인 이름”을 복사 해 둔다.
3단계: AWS Route 53 설정
마지막으로, Route 53에서 도메인 설정을 수정해야 한다.
Route 53 대시보드에 보면 호스팅 영역에 하나가 돌아가고 있다는 것을 볼 수 있다.
“호스팅 영역”을 클릭한 뒤 호스팅 영역에서 호스팅 되고 있는 “호스팅 영역 이름”을 클릭해 준다.
호스팅 세부 정보에서 “레코드 생성”을 클릭한다.
레코드 세트의 유형은 “A – IPv4 주소 및 일부 AWS 리소스로 트래픽 라우팅”를 선택하고,
“별칭”를 “사용”으로 설정한다.
그리고 “트래픽 라우팅 대상”을 “CloudFront 배포에 대한 별칭”을 선택한 뒤
“배포 선택” 칸에 방금 생성한 CloudFront의 “배포 도메인 이름”을 붙여넣기 한다.
이렇게 설정한 후 저장하면, 도메인이 HTTPS를 통해 접속할 수 있게 설정이 완료되었다
이제 AWS를 통해 HTTPS 연결이 설정되었다.
이로써 웹사이트의 보안을 강화하고, 사용자들에게 더 안전한 접속 환경을 제공할 수 있게 되었다.
도메인을 통해 홈페이지에 접속해보면 잘 연결되는 것을 확인할 수 있다.