AWS Fargate (ECS仅限 Amazon)支持的先决条件 - Amazon GuardDuty

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

AWS Fargate (ECS仅限 Amazon)支持的先决条件

本节包括监控 Fargate-ECS Amazon 资源运行时行为的先决条件。满足这些先决条件后,请参阅启用 GuardDuty 运行时监控

验证架构要求

您使用的平台可能会影响 GuardDuty 安全代理支持 GuardDuty 从您的 Amazon ECS 集群接收运行时事件的方式。您必须验证自己使用的是其中一个经过验证的平台。

初步注意事项:

您的亚马逊ECS集群的 AWS Fargate 平台必须是 Linux。相应的平台版本必须至少为 1.4.0LATEST。有关平台版本的更多信息,请参阅《Amazon Elastic Container Service 开发人员指南》中的 Linux 平台版本

尚不支持 Windows 平台版本。

经过验证的平台

操作系统的分布和CPU架构会影响 GuardDuty安全代理提供的支持。下表显示了用于部署 GuardDuty安全代理和配置运行时监控的经过验证的配置。

操作系统发行版1 内核支持 CPU 架构
x64 () AMD64 Graviton () ARM64
Linux e BPF、Tracepoints、Kpro 支持 支持

1 Support 对各种操作系统的支持- GuardDuty 已验证支持在上表中列出的操作系统上使用运行时监控。如果您使用不同的操作系统并且能够成功安装安全代理,则可能会获得所列操作系统发行版中 GuardDuty 已通过验证提供的所有预期安全值。

提供ECR权限和子网详细信息

在启用运行时监控之前,您必须提供以下详细信息:

为任务执行角色提供权限

任务执行角色要求您拥有某些亚马逊弹性容器注册表 (AmazonECR) 权限。您可以使用 A mazonECSTask ExecutionRolePolicy 托管策略,也可以在TaskExecutionRole策略中添加以下权限:

... "ecr:GetAuthorizationToken", "ecr:BatchCheckLayerAvailability", "ecr:GetDownloadUrlForLayer", "ecr:BatchGetImage", ...

要进一步限制亚马逊ECR权限,您可以添加托管其 GuardDuty 安全代理URI的亚马逊ECR存储库 AWS Fargate (ECS仅限亚马逊)。有关更多信息,请参阅 GuardDuty 代理存储库 AWS Fargate (ECS仅限 Amazon)

在任务定义中提供子网详细信息

您可以在任务定义中提供公有子网作为输入,也可以创建 Amazon ECR VPC 终端节点。

验证组织服务控制策略

此步骤是支持运行时监控和评估不同资源类型的覆盖范围所必需的。 GuardDuty

如果您已设置服务控制策略 (SCP) 来管理组织中的权限,请验证您TaskExecutionRole及其策略guardduty:SendSecurityTelemetry中的权限边界是否没有限制。

以下示例策略会允许 guardduty:SendSecurityTelemetry 策略:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ ..., ..., "guardduty:SendSecurityTelemetry" ], "Resource": "*" } ] }
  1. 使用以下步骤验证权限边界未限制 guardduty:SendSecurityTelemetry

    1. 登录 AWS Management Console 并打开IAM控制台,网址为https://console.aws.amazon.com/iam/

    2. 在导航窗格中的访问权限管理下,选择角色

    3. 选择角色名称以打开详细信息页面。

    4. 展开权限边界部分。确保未拒绝或限制 guardduty:SendSecurityTelemetry

  2. 使用以下步骤验证 TaskExecutionRole 策略的权限边界未限制 guardduty:SendSecurityTelemetry

    1. 登录 AWS Management Console 并打开IAM控制台,网址为https://console.aws.amazon.com/iam/

    2. 在导航窗格中的访问权限管理下,选择策略

    3. 选择策略名称以打开详细信息页面。

    4. 附加的实体选项卡下,查看附加为权限边界部分。确保未拒绝或限制 guardduty:SendSecurityTelemetry

有关策略和权限的信息,请参阅《IAM用户指南》中的权限边界

如果您是成员账户,则连接到关联的委派管理员。有关为您的组织SCPs进行管理的信息,请参阅服务控制策略 (SCPs)

CPU和内存限制

在 Fargate 任务定义中,必须在任务级别指定CPU和内存值。下表显示了任务级别CPU和内存值的有效组合,以及相应 GuardDuty 的安全代理对容器的最大内存限制。 GuardDuty

CPU 值 内存值 GuardDuty 代理最大内存限制

256 (.25 vCPU)

512 MiB、1 GB、2 GB

128MB

512 (.5 vCPU)

1GB、2GB、3GB、4GB

1024 (1 vCPU)

2 GB、3 GB、4 GB

5 GB、6 GB、7 GB、8 GB

2048 (2 vCPU)

4GB 到 16GB 之间 (以 1GB 为增量)

4096 (4 vCPU)

8 GB 至 20 GB(以 1 GB 为单位增加)

8192 (8 vCPU)

16 GB 至 28 GB(以 4 GB 为单位增加)

256 MB

32 GB 至 60 GB(以 4 GB 为单位增加)

512MB

16384 (16 v) CPU

32 GB 到 120 GB 之间(以 8 GB 为增量)

1 GB

启用运行时监控并评估集群的覆盖率状态是否正常后,您可以设置和查看 Container Insights 指标。有关更多信息,请参阅 在 Amazon ECS 集群上设置监控

下一步是配置运行时监控和安全代理。