

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# Application Load Balancer용 HTTPS 리스너 생성
<a name="create-https-listener"></a>

리스너는 연결 요청을 확인합니다. 로드 밸런서를 생성할 때 리스너를 정의하면 언제라도 로드 밸런서에 리스너를 추가할 수 있습니다.

HTTPS 리스너를 생성하려면 로드 밸런서에 한 개 이상의 [SSL 서버 인증서](https-listener-certificates.md)를 반드시 배포해야 합니다. 로드 밸런서는 서버 인증서를 사용해 프런트 엔드 연결을 종료한 다음, 대상으로 전송하기 전에 클라이언트의 요청을 해독합니다. 클라이언트와 로드 밸런서 간의 보안 연결을 협상하는 데 사용되는 [보안 정책](describe-ssl-policies.md)도 지정해야 합니다.

암호화된 트래픽을 로드 밸런서의 해독 없이 대상으로 전달해야 하는 경우, 포트 443을 수신하는 TCP 리스너가 있는 Network Load Balancer 또는 Classic Load Balancer를 생성할 수 있습니다. TCP 리스너를 사용하여 로드 밸런서는 암호화된 트래픽을 해독하지 않고 대상으로 전달합니다.

이 페이지의 정보는 로드 밸런서용 HTTPS 리스너를 생성하는 데 도움이 됩니다. 로드 밸런서에 HTTP 리스너를 추가하려면 [Application Load Balancer용 HTTP 리스너 생성](create-listener.md) 섹션을 참조하세요.

## 사전 조건
<a name="https-listener-prereqs"></a>
+ 기본 리스너 규칙에 전달 작업을 추가하려면 사용 가능한 대상 그룹을 지정해야 합니다. 자세한 내용은 [Application Load Balancer 대상 그룹 생성](create-target-group.md) 단원을 참조하십시오.
+ 여러 리스너에서 동일한 대상 그룹을 지정할 수 있지만, 이러한 리스너는 동일한 로드 밸런서에 속해야 합니다. 대상 그룹을 로드 밸런서와 함께 사용하려면 대상 그룹이 다른 로드 밸런서용으로 리스너에서 사용되고 있지 않은지 확인해야 합니다.
+ Application Load Balanca는 ED25519 키를 지원하지 않습니다.

## HTTPS 리스너 추가
<a name="add-https-listener"></a>

클라이언트와 로드 밸런서 간의 연결을 위한 프로토콜 및 포트로 리스너를 구성합니다. 자세한 내용은 [리스너 구성](load-balancer-listeners.md#listener-configuration) 단원을 참조하십시오.

보안 리스너를 생성할 때는 보안 정책과 인증서를 지정해야 합니다. 인증서 목록에 인증서 추가하려면 [인증서 목록에 인증서 추가](listener-update-certificates.md#add-certificates) 섹션을 참조하세요.

리스너에 대한 기본 규칙을 구성해야 합니다. 리스너를 생성한 후 다른 리스너 규칙을 추가할 수 있습니다. 자세한 내용은 [리스너 규칙](listener-rules.md) 단원을 참조하십시오.

------
#### [ Console ]

**HTTPS 리스너를 추가하려면**

1. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)에서 Amazon EC2 콘솔을 엽니다.

1. 탐색 창에서 **로드 밸런서**를 선택합니다.

1. 로드 밸런서를 선택합니다.

1. **리스너 및 규칙** 탭에서 **리스너 추가**를 선택합니다.

1. **프로토콜**에서 **HTTPS**를 선택합니다. 기본 포트를 그대로 두거나 다른 포트를 입력합니다.

1. (선택 사항) **사전 라우팅 작업**에서 다음 작업 중 하나를 선택합니다.
   + **사용자 인증** - 자격 증명 공급자를 선택하고 필요한 정보를 제공합니다. 자세한 내용은 [Application Load Balancer를 사용하여 사용자 인증](listener-authenticate-users.md) 단원을 참조하십시오.
   + **토큰 검증** - JWKS 엔드포인트, 문제 및 추가 클레임을 입력합니다. 자세한 내용은 [Application Load Balancer를 사용하여 JWTs 확인](listener-verify-jwt.md) 단원을 참조하십시오.

1. **라우팅 작업**에서 다음 작업 중 하나를 선택합니다.
   + **대상 그룹에 전달** – 대상 그룹을 선택합니다. 다른 대상 그룹을 추가하려면 **대상 그룹 추가**를 선택하고, 대상 그룹을 선택하고, 상대 가중치를 검토하고, 필요에 따라 가중치를 업데이트합니다. 대상 그룹 중 하나에서 고정을 활성화한 경우 그룹 수준 고정을 활성화해야 합니다.

     요구에 맞는 대상 그룹이 없는 경우 **대상 그룹 생성**을 선택하여 새로 생성합니다. 자세한 내용은 [대상 그룹 생성](create-target-group.md) 단원을 참조하십시오.
   + **URL로 리디렉션** – **URI 파트** 탭에서 각 파트를 개별적으로 입력하거나 **전체 URL** 탭에서 전체 주소를 입력합니다. **상태 코드**의 경우 요구 사항에 따라 임시(HTTP 302) 또는 영구(HTTP 301) 중 하나를 선택합니다.
   + **고정 응답 반환** – 폐기된 클라이언트 요청에 대해 반환할 **응답 코드**를 입력합니다. 선택적으로 **콘텐츠 유형**과 **응답 본문**을 지정할 수 있습니다.

1. **보안 정책**에서는 권장 보안 정책을 선택합니다. 필요에 따라 다른 보안 정책을 선택할 수 있습니다.

1. **기본 SSL/TLS 인증서**에서는 기본 인증서를 선택합니다. 또한 SNI 목록에 기본 인증서를 추가합니다. 인증서는 다음 옵션 중 하나를 사용해 선택할 수 있습니다.
   + **ACM에서** – AWS Certificate Manager에서 사용할 수 있는 인증서를 표시하는 **인증서(ACM에서)**에서 인증서를 선택합니다.
   + **IAM에서 **- 가져온 인증서를 표시하는 **인증서(IAM에서)**에서 인증서를 선택합니다 AWS Identity and Access Management.
   + **인증서 가져오기** – **ACM으로 가져오기** 또는 **IAM으로 가져오기** 중 인증서를 가져올 대상을 선택합니다. **인증서 프라이빗 키**에서 프라이빗 키 파일(PEM 인코딩)의 콘텐츠를 복사해 붙여 넣습니다. **인증서 본문**에서 퍼블릭 키 인증서 파일(PEM 인코딩)의 콘텐츠를 복사해 붙여 넣습니다. 자체 서명 인증서를 사용하고 있고 브라우저가 인증서를 묵시적으로 수락하는 것이 중요하지 않은 경우를 제외하고, **인증서 체인(Certificate Chain)**에 인증서 체인 파일(PEM 인코딩)의 콘텐츠를 복사해 붙여 넣습니다.

1. (선택 사항) 상호 인증을 활성화하려면 **클라이언트 인증서 처리**에서 **상호 인증(mTLS)**을 활성화합니다.

   기본 모드는 **패스스루**입니다. **트러스트 스토어로 확인**을 선택한 경우:
   + 기본적으로 만료된 클라이언트 인증서와의 연결은 거부됩니다. 이 동작을 변경하려면 **고급 mTLS 설정 **을 확장한 다음 **클라이언트 인증서 만료**에서 **만료된 클라이언트 인증서 허용**을 선택합니다.
   + **트러스트 스토어**에서 기존 트러스트 스토어를 선택하거나 **새 트러스트 스토어**를 선택하고 필요한 정보를 입력합니다.

1. (선택 사항) 태그를 추가하려면 **리스너 태그**를 확장합니다. **새 태그 추가**를 선택하고 태그 키와 태그 값을 입력합니다.

1. **리스너 추가**를 선택합니다.

------
#### [ AWS CLI ]

**HTTPS 리스너를 생성하려면**  
[create-listener](https://docs.aws.amazon.com/cli/latest/reference/elbv2/create-listener.html) 명령을 사용합니다. 다음 예시에서는 트래픽을 지정된 대상 그룹에 전달하는 기본 규칙을 사용하여 HTTPS 리스너를 생성합니다.

```
aws elbv2 create-listener \
    --load-balancer-arn load-balancer-arn \
    --protocol HTTPS \
    --port 443 \
    --default-actions Type=forward,TargetGroupArn=target-group-arn \
    --ssl-policy ELBSecurityPolicy-TLS13-1-2-2021-06 \
    --certificates certificate-arn
```

------
#### [ CloudFormation ]

**HTTPS 리스너를 생성하려면**  
[AWS::ElasticLoadBalancingV2::Listener](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-elasticloadbalancingv2-listener.html) 유형의 리소스를 정의합니다. 다음 예시에서는 트래픽을 지정된 대상 그룹에 전달하는 기본 규칙을 사용하여 HTTPS 리스너를 생성합니다.

```
Resources:
  myHTTPSListener:
    Type: 'AWS::ElasticLoadBalancingV2::Listener'
    Properties: 
      LoadBalancerArn: !Ref myLoadBalancer
      Protocol: HTTPS
      Port: 443
      DefaultActions:
        - Type: "forward"
          TargetGroupArn: !Ref myTargetGroup
      SslPolicy: ELBSecurityPolicy-TLS13-1-2-2021-06
      Certificates: 
        - CertificateArn: certificate-arn
```

------