5장. 튜토리얼: AWS WAF 및 Amazon CloudFront를 사용하여 AWS 워크로드에서 Red Hat OpenShift Service 보호
AWS WAF는 보호된 웹 애플리케이션 리소스로 전달되는 HTTP 및 HTTPS 요청을 모니터링할 수 있는 웹 애플리케이션 방화벽입니다.
Amazon CloudFront를 사용하여 AWS 워크로드의 Red Hat OpenShift Service에WAF(Web Application Firewall)를 추가할 수 있습니다. 외부 솔루션을 사용하면 WAF 처리로 인해 AWS 리소스의 Red Hat OpenShift Service가 서비스 거부를 발생하지 않도록 보호합니다.
참고
WAFv1, WAF 클래식은 더 이상 지원되지 않습니다. WAFv2를 사용합니다.
5.1. 사전 요구 사항 링크 복사링크가 클립보드에 복사되었습니다!
링크 복사링크가 클립보드에 복사되었습니다!
- AWS 클러스터의 Red Hat OpenShift Service.
-
OpenShift CLI(
oc)에 액세스할 수 있습니다. -
AWS CLI(
aws)에 액세스할 수 있습니다.
5.1.1. 환경 설정 링크 복사링크가 클립보드에 복사되었습니다!
링크 복사링크가 클립보드에 복사되었습니다!
환경 변수를 준비합니다.
$ export DOMAIN=apps.example.com1 $ export AWS_PAGER="" $ export CLUSTER_NAME=$(oc get infrastructure cluster -o=jsonpath="{.status.infrastructureName}" | sed 's/-[a-z0-9]\{5\}$//') $ export REGION=$(oc get infrastructure cluster -o=jsonpath="{.status.platformStatus.aws.region}") $ export AWS_ACCOUNT_ID=$(aws sts get-caller-identity --query Account --output text) $ export SCRATCH="/tmp/${CLUSTER}/cloudfront-waf" $ mkdir -p ${SCRATCH} $ echo "Cluster: ${CLUSTER}, Region: ${REGION}, AWS Account ID: ${AWS_ACCOUNT_ID}"- 1
IngressController에 사용할 사용자 정의 도메인으로 바꿉니다.
참고이전 명령의 "클러스터" 출력은 클러스터의 이름, 클러스터의 내부 ID 또는 클러스터의 도메인 접두사가 될 수 있습니다. 다른 식별자를 사용하려는 경우 다음 명령을 실행하여 이 값을 수동으로 설정할 수 있습니다.
$ export CLUSTER=my-custom-value