Application Load Balancer 리스너 규칙을 사용하여 HTTP 요청을 HTTPS로 리디렉션하려고 합니다.
해결 방법
참고: 이 해결 방법은 Application Load Balancer에만 적용됩니다. Classic Load Balancer를 사용하는 경우 ELB Classic Load Balancer에서 HTTP 트래픽을 HTTPS로 리디렉션하려면 어떻게 해야 합니까?를 참조하십시오.
로드 밸런서 유형 확인
다음 단계를 완료하십시오.
- Amazon Elastic Compute Cloud(Amazon EC2) 콘솔을 엽니다.
- 탐색 창의 로드 밸런싱 아래에서 로드 밸런서를 선택합니다.
- 리스너 규칙을 만들 로드 밸런서를 찾습니다. 유형 열에서 로드 밸런서가 애플리케이션, 클래식, 네트워크 또는 게이트웨이로 나열되어 있는지 확인합니다.
참고: 다음 단계를 완료하기 전에 먼저 대상 그룹을 만들어야 합니다.
HTTP 요청을 HTTPS로 리디렉션하는 HTTP 리스너 규칙 만들기
HTTP 리스너 규칙을 만들고 요청을 HTTPS로 리디렉션하려면 다음 단계를 완료하십시오.
참고: 이미 HTTP 리스너가 있는 경우 다음 단계로 진행하십시오.
- Amazon EC2 콘솔을 엽니다.
- 탐색 창의 로드 밸런싱 아래에서 로드 밸런서를 선택합니다.
- 로드 밸런서를 선택한 다음, 리스너, 리스너 추가를 선택합니다.
- 프로토콜: 포트의 경우 HTTP를 선택합니다. 기본 포트를 유지하거나 사용자 지정 포트를 지정할 수 있습니다.
- 기본 작업에서 작업 추가, 리디렉션 대상을 선택한 다음, 포트 443을 입력합니다. 기본 포트를 사용하지 않는 경우 다른 포트를 선택합니다. 자세한 내용은 규칙 작업 유형을 참조하십시오.
- Create an HTTPS listener(HTTPS 리스너 만들기) 섹션의 단계를 완료합니다.
이미 HTTP 리스너가 있는 경우 다음 단계를 완료하여 HTTP 요청을 HTTPS로 리디렉션하십시오.
- 로드 밸런서를 선택한 다음, HTTP 리스너를 선택합니다.
- 규칙에서 규칙 보기/편집을 선택합니다.
- 규칙 편집을 선택하여 모든 HTTP 요청을 HTTPS로 리디렉션하도록 기본 규칙을 수정합니다. 또는 기존 규칙 사이에 규칙을 삽입할 수 있습니다.
- 그런 다음 아래에서 기존 조건을 삭제한 다음, 리디렉션 대상 작업을 사용하여 새 조건을 추가합니다.
- HTTPS에 443 포트를 입력합니다.
- 나머지 옵션은 기본값을 유지합니다.
참고: URL 또는 반환 코드를 변경하려면 나머지 옵션을 수정합니다.
- 저장하려면 체크 표시 아이콘을 선택합니다.
HTTPS 리스너 만들기
참고: 요청을 대상 그룹에 전달하는 규칙이 있는 HTTPS 리스너가 이미 있는 경우 Application Load Balancer의 보안 그룹이 443에서 트래픽을 허용하는지 확인으로 진행하십시오.
다음 단계를 완료하십시오.
- 리스너, 리스너 추가를 선택합니다.
- 프로토콜: 포트의 경우 HTTPS를 선택합니다. 기본 포트를 유지하거나 사용자 지정 포트를 지정합니다.
- 기본 작업에서 작업 추가, 전달 대상을 선택합니다.
- 애플리케이션 인스턴스를 호스팅하는 대상 그룹을 선택합니다.
- 구성에 맞게 미리 정의된 보안 정책을 선택합니다.
- 기본 보안 인증서를 선택합니다. 보안 인증서가 없는 경우 보안 인증서를 요청합니다.
- 저장을 선택합니다.
Application Load Balancer의 보안 그룹이 443에서 트래픽을 허용하는지 확인
다음 단계를 완료하십시오.
- 로드 밸런서의 설명을 선택합니다.
- 보안에서 보안 그룹 ID를 선택합니다.
- 인바운드 규칙을 확인합니다. 보안 그룹에는 HTTP 및 HTTPS의 트래픽을 허용하는 인바운드 규칙이 있어야 합니다.
인바운드 규칙이 없는 경우, 다음 단계를 완료하여 규칙을 추가합니다.
- 작업, 인바운드 규칙 편집을 선택합니다.
- 규칙 추가를 선택합니다.
- 유형에서 HTTPS를 선택합니다.
- 소스에서 사용자 지정(0.0.0.0/0 또는 소스 CIDR)을 선택합니다.
- 저장을 선택합니다.