5.3. Amazon CloudFront 구성
새로 생성된 사용자 정의 수신 컨트롤러의 NLB 호스트 이름을 검색합니다.
NLB=$(oc -n openshift-ingress get service router-cloudfront-waf \ -o jsonpath='{.status.loadBalancer.ingress[0].hostname}')$ NLB=$(oc -n openshift-ingress get service router-cloudfront-waf \ -o jsonpath='{.status.loadBalancer.ingress[0].hostname}')Copy to Clipboard Copied! Toggle word wrap Toggle overflow 인증서를 Amazon Certificate Manager로 가져옵니다. 여기서
cert.pem은 와일드카드 인증서인fullchain.pem은 와일드카드 인증서의 체인이고privkey.pem은 와일드카드 인증서의 개인 키입니다.참고클러스터가 배포된 리전에 관계없이 Amazon CloudFront가 글로벌 AWS 서비스이므로 이 인증서를
us-east-1로 가져와야 합니다.예
aws acm import-certificate --certificate file://cert.pem \ --certificate-chain file://fullchain.pem \ --private-key file://privkey.pem \ --region us-east-1
$ aws acm import-certificate --certificate file://cert.pem \ --certificate-chain file://fullchain.pem \ --private-key file://privkey.pem \ --region us-east-1Copy to Clipboard Copied! Toggle word wrap Toggle overflow - AWS 콘솔에 로그인하여 CloudFront 배포를 생성합니다.
다음 정보를 사용하여 CloudFront 배포를 구성합니다.
참고아래 표에 옵션을 지정하지 않으면 기본값(빈일 수 있음)을 그대로 둡니다.
Expand 옵션 현재의 원본 도메인
이전 명령의 출력 [1]
이름
rosa-waf-ingress [2]
뷰어 프로토콜 정책
HTTP를 HTTPS로 리디렉션
허용되는 HTTP 메서드
GET, HEAD, OPTIONS, PUT, POST, PATCH, DELETE
캐시 정책
캐싱Disabled
원본 요청 정책
AllViewer
웹 애플리케이션 방화벽(WAF)
보안 보호 활성화
기존 WAF 구성 사용
true
웹 ACL 선택
cloudfront-waf대체 도메인 이름(CNAME)
*.apps.example.com [3]
사용자 정의 SSL 인증서
위 단계에서 가져온 인증서를 선택합니다 [4]
-
echo ${NLB}를 실행하여 원본 도메인을 가져옵니다. - 클러스터가 여러 개인 경우 원본 이름이 고유해야 합니다.
- 사용자 정의 수신 컨트롤러를 생성하는 데 사용한 와일드카드 도메인과 일치해야 합니다.
- 이는 위에서 입력한 대체 도메인 이름과 일치해야 합니다.
-
Amazon CloudFront 배포 끝점을 검색합니다.
aws cloudfront list-distributions --query "DistributionList.Items[?Origins.Items[?DomainName=='${NLB}']].DomainName" --output text$ aws cloudfront list-distributions --query "DistributionList.Items[?Origins.Items[?DomainName=='${NLB}']].DomainName" --output textCopy to Clipboard Copied! Toggle word wrap Toggle overflow 위의 단계에서 CNAME을 사용하여 사용자 지정 와일드카드 도메인의 DNS를 Amazon CloudFront 배포 엔드포인트로 업데이트합니다.
예
*.apps.example.com CNAME d1b2c3d4e5f6g7.cloudfront.net
*.apps.example.com CNAME d1b2c3d4e5f6g7.cloudfront.netCopy to Clipboard Copied! Toggle word wrap Toggle overflow