第 6 章 教程: 使用 AWS WAF 和 Amazon CloudFront 来保护 ROSA 工作负载
AWS WAF 是一个 web 应用程序防火墙,可让您监控转发到受保护的 web 应用程序资源的 HTTP 和 HTTPS 请求。
您可以使用 Amazon CloudFront 将 Web 应用程序防火墙(WAF)添加到 Red Hat OpenShift Service on AWS (ROSA)工作负载中。使用外部解决方案可防止 ROSA 资源因为处理 WAF 而导致拒绝服务。
6.1. 前提条件
- ROSA (HCP 或 Classic)集群。
-
您可以访问 OpenShift CLI(
oc
)。 -
您可以访问 AWS CLI (
aws
)。
6.1.1. 环境设置
准备环境变量:
$ export DOMAIN=apps.example.com 1 $ 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
的自定义域替换。
注意上一命令中的"Cluster"输出可以是集群名称、集群的内部 ID 或集群的域前缀。如果要使用另一个标识符,您可以通过运行以下命令来手动设置这个值:
$ export CLUSTER=my-custom-value