如何在我的 Amazon EKS 集群中将 API 访问权限锁定到特定 IP 地址?
上次更新时间:2022 年 8 月 5 日
我想要在我的 Amazon Elastic Kubernetes Service (Amazon EKS) 集群中将 API 访问权限锁定到特定 IP 地址。
简短描述
您可以锁定两种类型的 Amazon EKS API 服务器访问端点的访问权限:
- 公共访问端点:默认情况下,API 服务器访问权限对公众开放。您可以将访问权限锁定到特定的 CIDR 块和 IP 地址。
- 公共访问端点:API 服务器只能从 Amazon Virtual Private Cloud (Amazon VPC) 内部访问。您可以通过集群安全组进一步将访问权限锁定到特定 VPC CIDR 块。
解决方法
锁定 API 公开访问终端节点
- 打开 Amazon EKS 控制台。
- 在导航窗格中选择集群,然后选择您的集群。
- 在联网部分中,选择更新。
- 展开高级设置。
注意:高级设置选项仅在您激活公开访问后才会显示。 - 输入您希望允许从其进行访问的 CIDR 块。
注意:例如,您可以将从 54.240.193.129 到 54.240.193.190 的 IP 地址范围汇总为 54.240.193.129/26。您可以使用 /32 表示法形成一个 IP 地址(例如,54.240.193.130/32)。这些 CIDR 块不能包括预留地址。 - (可选)要输入其他块,请选择添加源。
- 选择更新。
请记住以下几点:
- 如果您未指定任何 CIDR 块,则公开 API 服务器端点将接收来自所有 (0.0.0.0/0) IP 地址的请求。
- 最佳实践是激活私有端点访问权限,以便 Worker 节点和 AWS Fargate 容器组(pod)(如果使用)可以通过私有端点与集群通信。
- 如果未激活私有端点,则公开访问端点 CIDR 源必须包括来自 Amazon VPC 的出口源。例如,如果在私有子网中有一个 Worker 节点,该工作节点通过 NAT 网关与 Internet 通信,则必须将 NAT 网关的出站 IP 地址添加到公开端点允许的 CIDR 块中。
锁定 API 私有访问终端节点
- 打开 Amazon EKS 控制台。
- 在导航窗格中选择集群,然后选择您的集群。
- 在联网部分中,记下您的集群的安全组和其他安全组。
- 将入口规则添加到您在步骤 3 中记下的任何一个安全组。
注意:对于您的入口规则,请设置 TCP 作为协议,并设置 443 作为允许访问的端口和源 IP。