Skip to content

Latest commit

 

History

History
48 lines (30 loc) · 2.79 KB

기타. ALB, SSL(TLS).md

File metadata and controls

48 lines (30 loc) · 2.79 KB

AWS에서 Nginx를 사용하여 EC2 인스턴스에 배포한 웹사이트를 ALB(Application Load Balancer)를 통해 HTTPS로 서비스하려면 다음 단계를 따라야 합니다:

  1. SSL/TLS 인증서 준비:

    • AWS Certificate Manager(ACM)를 사용하여 SSL/TLS 인증서를 가져오거나 생성합니다.
    • ACM에서 인증서를 요청하고 도메인의 DNS를 통해 소유권을 검증합니다.
  2. 로드 밸런서 생성:

    • AWS 관리 콘솔에서 EC2 서비스로 이동한 후 '로드 밸런서' 섹션으로 이동합니다.
    • '로드 밸런서 생성'을 클릭하고 '애플리케이션 로드 밸런서' 옵션을 선택합니다.
    • 로드 밸런서 이름을 지정하고, 인터넷 대면 여부를 선택합니다.
    • 적어도 두 개의 가용 영역을 선택합니다.
  3. 리스너 및 보안 그룹 설정:

    • 로드 밸런서에 리스너를 추가합니다. 통상적으로 HTTP(80) 및 HTTPS(443) 포트에 리스너를 설정합니다.
    • HTTPS 리스너를 생성할 때 앞서 생성한 SSL/TLS 인증서를 선택합니다.
    • 보안 그룹을 설정하여 HTTP 및 HTTPS 트래픽을 허용합니다.
  4. 대상 그룹 생성 및 등록:

    • 로드 밸런서에 연결할 대상 그룹을 생성합니다.
    • 대상 그룹에 EC2 인스턴스를 등록합니다. 이때 Nginx를 실행 중인 인스턴스를 선택합니다.
  5. 로드 밸런서 구성 완료:

    • 리스너 및 라우팅 설정을 완료합니다.
    • 생성을 클릭하여 로드 밸런서를 생성합니다.
  6. Nginx 구성 변경:

    • EC2 인스턴스에서 Nginx 구성을 업데이트하여 ALB에서 전달된 X-Forwarded-For 헤더를 신뢰하도록 설정합니다.
    • 필요한 경우 HTTP 요청을 HTTPS로 리디렉션하도록 서버 블록을 설정할 수 있습니다.
  7. DNS 설정:

    • 도메인의 DNS 설정에서 로드 밸런서의 DNS 이름을 가리키도록 A 레코드(또는 CNAME 레코드)를 설정합니다.
  8. 보안 및 유지 관리:

    • 로드 밸런서 및 EC2 인스턴스에 대한 모니터링 및 로깅을 설정하여 트래픽 패턴과 성능을 모니터링합니다.
    • SSL/TLS 인증서가 만료되지 않도록 주기적으로 갱신합니다.

이러한 단계를 완료하면 사용자는 HTTPS를 통해 ALB로 트래픽을 안전하게 라우팅하고 Nginx가 설치된 EC2 인스턴스에서 웹사이트에 접근할 수 있습니다. 보안, 성능 및 비용 효율성을 최적화하기 위해 추가적인 구성과 최적화가 필요할 수 있습니다. AWS의 공식 문서와 사용자 가이드는 이 과정에서 중요한 참조 자료가 될 것입니다.

추가 설명 자료

https://velog.io/@wijoonwu/AWS-EC2%EC%97%90-SSL-%EC%A0%81%EC%9A%A9%ED%95%98%EA%B8%B0-Feat.-ACM-Route53-ALB-Nginx