

 **協助改進此頁面** 

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

若要為本使用者指南貢獻內容，請點選每個頁面右側面板中的**在 GitHub 上編輯此頁面**連結。

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 檢視叢集的 Amazon EKS 安全群組要求
<a name="sec-group-reqs"></a>

本主題說明 Amazon EKS 叢集的安全群組要求。

## 預設的叢集安全群組
<a name="security-group-default-rules"></a>

當您建立叢集時，Amazon EKS 會建立名稱為 `eks-cluster-sg-my-cluster-uniqueID ` 的安全群組。安全性群組具有以下預設規則：


| 規則類型 | 通訊協定 | 連接埠 | 來源 | 目標 | 
| --- | --- | --- | --- | --- | 
|  傳入  |  全部  |  全部  |  Self  |  | 
|  傳出  |  全部  |  全部  |  |  0.0.0.0/0(`IPv4`) 或 ::/0 (`IPv6`)  | 
|  傳出  |  全部  |  全部  |  |  自我 (適用於 EFA 流量)  | 

預設的安全群組包括傳出規則，該規則允許具有相同安全群組目的地的 Elastic Fabric Adapter (EFA) 流量。這樣一來，叢集內的 EFA 流量可從 AI/ML 與高效能運算 (HPC) 工作負載中受益。如需詳細資訊，請參閱 *Amazon Elastic Compute Cloud 使用者指南*中的 [Amazon EC2 上適用於 AI/ML 與 HPC 工作負載的 Elastic Fabric Adapter](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/efa.html)。

**重要**  
如果您的叢集不需要傳出規則到 `0.0.0.0/0`(IPv4)、 `::/0`(IPv6)，您可以將其移除。如果將其移除，您仍必須具有[限制叢集流量](#security-group-restricting-cluster-traffic)中列出的最低規則。如果您移除允許流量進出叢集安全群組本身的傳入或傳出規則，Amazon EKS 會在叢集更新時重新建立。

Amazon EKS 會將下列標籤新增至安全群組。如果您移除標籤，則 Amazon EKS 會在叢集更新時將其新增回安全群組。


| 金鑰 | 值 | 
| --- | --- | 
|   `kubernetes.io/cluster/my-cluster `   |   `owned`   | 
|   `aws:eks:cluster-name`   |   *my-cluster*   | 
|   `Name`   |   `eks-cluster-sg-my-cluster-uniqueid `   | 

Amazon EKS 會自動將此安全群組與以下資源關聯，其資源也會建立：
+ 2—4 個彈性網路界面（本文件的其餘部分稱為*網路界面*），網路界面於叢集建立時建立。
+ 您建立的任何受管節點群組中節點的網路界面。

此安全群組的設計目的是允許來自控制平面和 受管節點群組的所有流量彼此之間可以自由流動，以及允許所有的輸出流量流往任何目的地。當您建立叢集時，您可以（選用）指定自己的安全群組。如果您指定自己的安全群組，則 Amazon EKS 還會將您指定的安全群組與為叢集建立的網路界面建立關聯。但是，其不會與您建立的任何節點群組相關聯。

您可以在叢集**的聯網**區段 AWS 管理主控台 下的 中，判斷叢集安全群組的 ID。或者，您可以執行下列 CLI AWS 命令來執行此操作。

```
aws eks describe-cluster --name my-cluster --query cluster.resourcesVpcConfig.clusterSecurityGroupId
```

## 限制叢集流量
<a name="security-group-restricting-cluster-traffic"></a>

如果您需要限制 EKS 控制平面和節點之間的開放連接埠，您可以將[預設傳出規則](#security-group-default-rules)移除為 `0.0.0.0/0`(IPv4)/`::/0` (IPv6)，並新增叢集所需的下列最低規則。

如果您移除允許來源本身 （來自叢集安全群組的流量） 的所有流量[的預設傳入規則](#security-group-default-rules)，Amazon EKS 會在叢集更新時重新建立該規則。

如果您移除允許目的地本身 （叢集安全群組的流量） 的所有流量[的預設傳出規則](#security-group-default-rules)，Amazon EKS 會在叢集更新時重新建立該規則。


| 規則類型 | 通訊協定 | 站點 | 目標 | 
| --- | --- | --- | --- | 
|  傳出  |  TCP  |  443  |  叢集安全群組  | 
|  傳出  |  TCP  |  10250  |  叢集安全群組  | 
|  傳出 (DNS)  |  TCP 和 UDP  |  53  |  叢集安全群組  | 

您還必須為以下流量新增規則：
+ 您預期節點用於節點間通訊的任何通訊協定和連接埠。
+ 需要對外網際網路存取，以便叢集在啟動時存取 Amazon EKS API，進行叢集自我檢查和節點註冊。若節點不可接入網際網路，則檢閱[部署網際網路存取受到限制的私有叢集](private-clusters.md)，了解其他考量。
+ 需要虛擬節點存取以從 Amazon ECR 或是從提取映像所需的其他容器登錄檔 API 提取映像，例如 DockerHub。如需詳細資訊，請參閱《 AWS 一般參考》中的 [AWS IP 地址範圍](https://docs.aws.amazon.com/general/latest/gr/aws-ip-ranges.html)。
+ 節點對 Amazon S3 進行存取。
+ 需要 `IPv4` 和 `IPv6` 地址的個別規則。
+ 若您使用混合式節點，則必須新增其他安全群組至叢集，以便允許與內部部署節點及 Pod 通訊。如需詳細資訊，請參閱[準備混合節點的聯網](hybrid-nodes-networking.md)。

如果您正在考慮限制規則，建議您先徹底測試 Pod，之後再將變更的規則套用到生產叢集。

如果您最初使用 Kubernetes `1.14` 和 `eks.3` 平台版本或更舊版本部署叢集，則請考慮下列事項：
+ 您可能還擁有控制平面和節點安全群組。建立這些群組時，群組包括之前的表格中列出的受限制的規則。不再需要這些安全群組，可以進行移除。但是，您需要確定您的叢集安全群組包含那些群組包含的規則。
+ 如果您直接使用 API 部署叢集，或使用 CLI AWS 或 AWS CloudFormation 等工具來建立叢集，而且未在叢集建立時指定安全群組，則 VPC 的預設安全群組會套用至 Amazon EKS 建立的叢集網路介面。

## 共用安全群組
<a name="_shared_security_groups"></a>

Amazon EKS 支援共用安全群組。
+  **安全群組 VPC 關聯**可關聯相同帳戶及區域中的安全群組與 VPC。
  + 了解 [Amazon VPC 使用者指南](https://docs.aws.amazon.com/vpc/latest/userguide/security-group-assoc.html)中的如何*關聯安全群組與多個 VPC*。
+  **共用安全群組**可讓您與其他 AWS 帳戶共用安全群組。帳戶必須位於相同的 AWS 組織中。
  + 了解 *Amazon VPC 使用者指南*中的如何[與組織共用安全群組](https://docs.aws.amazon.com/vpc/latest/userguide/security-group-sharing.html)。
+ 安全群組一律僅限於單一 AWS 區域。

### Amazon EKS 的考量事項
<a name="_considerations_for_amazon_eks"></a>
+ EKS 對共用或多個 VPC 安全群組的要求與標準安全群組相同。