

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

# Amazon GameLift Servers 的安全最佳實務
<a name="security-best-practices"></a>

如果您使用Amazon GameLift Servers FleetIQ作為 Amazon EC2 的獨立功能，請參閱《[Amazon EC2 使用者指南》中的 Amazon EC2 中的安全性](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-security.html)。 *Amazon EC2 *

在您開發和實作自己的安全政策時，可考慮使用 Amazon GameLift Servers 提供的多種安全功能。以下最佳實務為一般準則，並不代表完整的安全解決方案。這些最佳實務可能不適用或無法滿足您的環境需求，因此請將其視為實用建議就好，而不要當作是指示。

## 讓機群執行期環境保持在最新狀態
<a name="security-best-practices-fleetupdates"></a>

Amazon GameLift Servers 強烈建議您定期取代受管機群 （包括受管 EC2 和受管容器機群），以維護遊戲伺服器的安全執行期環境。在沒有執行時間更新的情況下長時間執行的機群可能包含過時的相依性和可能危害您遊戲伺服器的安全漏洞。如需如何為部署到機Amazon GameLift Servers群的軟體分擔責任的詳細資訊，請參閱 [Amazon GameLift Servers 中的組態與漏洞分析](vulnerability-analysis-management.md)。

受管機群的執行期環境取決於其 Amazon Machine Image (AMI) 版本。建立新機群時， 會將最新的可用 AMI 版本Amazon GameLift Servers指派給機群，且該機群中的所有運算執行個體都會以該版本部署。若要更新 AMI 版本，您必須建立新的機群。如需目前 AMI 版本的詳細資訊，請參閱 [Amazon GameLift Servers AMI 版本](reference-ec2-ami-version-history.md)。

建議的實務：
+ **監控機群存留期並取代超過 30 天的機群** – 您可以在 Amazon GameLift Servers主控台中追蹤機群的建立日期，或使用 CLI 擷取機群屬性。 會在 主控台中針對超過 90 天的機群Amazon GameLift Servers顯示警告，並針對超過一年的機群透過電子郵件通知帳戶持有人。
**注意**  
更新機群 （例如使用 [UpdateFleetAttributes](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_UpdateFleetAttributes.html) 或 [UpdateContainerFleet](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_UpdateContainerFleet.html)) 不會變更 AMI 版本。您必須建立新的機群。
+ **根據安全運作狀態定期取代機群** – 設定定期排程以建立新機群並淘汰舊機群。請考慮使用 [Amazon Q](https://docs.aws.amazon.com/amazonq/latest/qdeveloper-ug/code-reviews.html) 之類的服務，以目前 AMI 版本檢閱您的遊戲程式碼、偵測安全問題，並建議修復步驟。
+ 在**部署之前使用最新的 AMI 版本測試伺服器建置** – 您可能需要修改伺服器建置並將其上傳到 ，Amazon GameLift Servers才能建立新的機群。
+ **管理 AWS 帳戶的機群配額** – 如果需要建立替代機群，您可以請求提高限制。如需詳細資訊，請參閱[Amazon GameLift Servers 端點和配額](limits-regions.md)。
+ **考慮自動化機群替換** – 您可以自動化程序來建立新的機群，並從較舊的機群遷移玩家流量。例如：
  + 使用 AWS CloudFormation 將機群建立和管理自動化。將機群組態維護為 CloudFormation 範本，並使用它們來啟動資源堆疊。
  + 利用Amazon GameLift Servers別名功能來抽象化特定機群 IDs。機群別名可讓您輕鬆地將玩家流量從現有機群切換到新的機群，而不會中斷進行中的遊戲工作階段。如需詳細資訊，請參閱[使用別名抽象機Amazon GameLift Servers群指定](aliases-intro.md)。
  + 使用藍/綠部署策略來降低遷移風險並維持零停機時間。使用兩個相同的生產環境，您可以利用完整的類似生產的測試環境，對遷移程序進行更大的控制，並確保即時復原。

## 保護您的連接埠組態
<a name="security-best-practices-ports"></a>

我們強烈建議不要開啟網際網路的連接埠，因為這樣做會造成安全風險。例如，下列組態會開啟遠端桌面連接埠，允許網際網路上的任何人存取執行個體：

```
{
  "FleetId": "{{<fleet identifier>}}",
  "InboundPermissionAuthorizations": [ 
      { 
        "FromPort": 3389,
        "IpRange": "0.0.0.0/0",
        "Protocol": "RDP",
        "ToPort": 3389
      }
  ]
}
```

 反之，請使用 [UpdateFleetPortSettings](https://docs.aws.amazon.com/gameliftservers/latest/apireference/API_UpdateFleetPortSettings.html) 來開啟具有特定 IP 地址或地址範圍的連接埠，如本範例所示：

```
{
  "FleetId": "{{<fleet identifier>}}",
  "InboundPermissionAuthorizations": [ 
      { 
        "FromPort": 3389,
        "IpRange": "54.186.139.221/32",
        "Protocol": "TCP",
        "ToPort": 3389
      }
  ]
}
```

## 其他安全資源
<a name="security-best-practices-resources"></a>

如需如何更Amazon GameLift Servers安全地使用 的詳細資訊，請參閱 [AWS Well-Architected Tool 安全支柱。](https://wa.aws.amazon.com/wat.pillar.security.en.html)