Amazon ECS 的 Fargate 安全最佳實踐 - Amazon Elastic Container Service

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

Amazon ECS 的 Fargate 安全最佳實踐

建議您在使用 AWS Fargate時考量下列最佳實務。如需其他指引,請參閱的安全性概觀 AWS Fargate

用 AWS KMS 於加密 Fargate 的臨時存儲

您應該使用加密的臨時存儲。 AWS KMS對於使用平台版本1.4.0或更高版本在 Fargate 上託管的任務,每個任務都會收到 20 GiB 的臨時存儲。您可以增加暫時性儲存的總量,最多可達 200 GiB,方法是在任務定義中指定 ephemeralStorage 參數。對於 2020 年 5 月 28 日或之後啟動的此類任務,臨時存儲使用由 Fargate 管理的加密密鑰使用 AES-256 加密算法進行加密。

如需詳細資訊,請參閱在任務中使用資料磁碟區

示例:使用臨時存儲加密在 Fargate 平台 1.4.0 版上啟動任務

下面的命令將啟動 Fargate 平台 1.4 版本的任務。由於此工作是作為叢集的一部分啟動,因此它會使用自動加密的臨時儲存體的 20 GiB。

aws ecs run-task --cluster clustername \ --task-definition taskdefinition:version \ --count 1 --launch-type "FARGATE" \ --platform-version 1.4.0 \ --network-configuration "awsvpcConfiguration={subnets=[subnetid],securityGroups=[securitygroupid]}" \ --region region

SYS_PSTRACE 功能,用於使用 Fargate 進行內核系統調用跟踪

由 Docker 提供從容器中新增或刪除的 Linux 功能預設組態。如需可用功能的詳細資訊,請參閱 Docker run 文件中的執行期權限和 Linux 功能

在 Fargate 上啟動的任務僅支援新增 SYS_PTRACE 核心功能。

下面的教程視頻展示瞭如何通過 Sysdig 法爾科項目使用此功能。

在上一個視頻中討論的代碼可以在 GitHub 這裡找到。

使用 Amazon GuardDuty 與 Fargate 運行時監控

Amazon GuardDuty 是一種威脅偵測服務,可協助保護您的帳戶、容器、工作負載和 AWS 環境中的資料。使用機器學習 (ML) 模型,以及異常和威脅偵測功能, GuardDuty持續監控不同的記錄檔來源和執行階段活動,以識別環境中潛在的安全風險和惡意活動並排定優先順序。

運行時監控通過持續監控 AWS 日誌和網絡活動以識別惡意或未經授權的行為來 GuardDuty 保護在 Fargate 上運行的工作負載。執行階段監控使用輕量型、完全受控的 GuardDuty 安全代理程式來分析主機上的行為,例如檔案存取、程序執行和網路連線。這涵蓋的問題包括權限提升、使用暴露的登入資料,或與惡意 IP 地址、網域通訊,以及 Amazon EC2 執行個體和容器工作負載上存在惡意軟體的情況。如需詳細資訊,請參閱GuardDuty 使用指南中的GuardDuty 執行階段監視