Infra/AWS

[aws] ACM을 이용한 https(ssl) 적용하기

하우아유두잉 2019. 12. 11. 13:56

 

 

ACM을 이용한 인증서 생성

 

1. Certificates Manager -> Request a certificate 버튼 Click

 

2. Request a public certificate 선택

 

3. 도메인 네임 임력(Route54에 등록 되어 있어야 함)

5. 도메인 인증방법 선택을 DNS 인증으로 한다.(선택 가능)

6. Route53 -> 레코드가 생성된 것을 확인

 

7. 인증 성공 확인

 

 

 


 

인증서를 통해 서버에 https(ssl) 적용

 

 

 

 

1. EC2 시큐리티 그룹에서 80(http)포트, 433(https)포트, 9001(api용)포트를 연다.

2. ELB 시큐리티 그룹에서 80,443와 9001,9002 포트를 연다. (포트 포워딩을 위해)

      

 

3. ELB 포트포워딩 설정에서 80과 443으로 들어오는 요청은 내부서버의 80(nginx) 포트로 포워딩한다.

                                        9001과 9002로 들어오는 요청은 내부서버의 9001(node.js) 포트로 포워딩한다.

 

 


 

 

NGINX 서버 설정

 

1. nginx conf 파일에 아래 소스를 추가한다. 

이제 도메인으로 접속을 시도하면로 자동 접속된다.

 

 


 

 

[참고자료]

aws

https://aws.amazon.com/ko/blogs/korea/new-aws-certificate-manager-deploy-ssltls-based-apps-on-aws/

https://docs.aws.amazon.com/ko_kr/elasticloadbalancing/latest/classic/elb-create-https-ssl-load-balancer.html

https://medium.com/tfogo/how-to-serve-your-website-on-port-80-or-443-using-aws-load-balancers-a3b84781d730

http://blog.naver.com/PostView.nhn?blogId=oksk0302&logNo=221255875419&parentCategoryNo=&categoryNo=90&viewDate=&isShowPopularPosts=true&from=search

 

nginx

https://blog.perfectacle.com/2017/10/05/https-with-elb/

https://www.uvd.co.uk/blog/using-aws-certificate-manager-nginx

http://www.mihaiz.me/aws-elb-certificate-manager-nginx-django.html