Amazon Inspector 对基于 Linux 的亚马逊实例进行深入检查 EC2 - Amazon Inspector

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

Amazon Inspector 对基于 Linux 的亚马逊实例进行深入检查 EC2

Amazon Inspector 扩大了亚马逊EC2扫描的覆盖范围,将深度检查包括在内。通过深度检查,Amazon Inspector 可以检测基于 Linux 的亚马逊EC2实例中应用程序编程语言包的软件包漏洞。Amazon Inspector 会扫描编程语言包库的默认路径。但是,除了 Amazon Inspector 默认扫描的路径外,您还可以配置自定义路径。

注意

您可以将深度检查与 “默认主机管理配置” 设置结合使用。但是,您必须创建实例配置文件并附加ssm:PutInventoryssm:GetParameter权限。

为了对基于 Linux 的亚马逊EC2实例进行深度检查扫描,Amazon Inspector 使用通过 Amazon Inspector SSM 插件收集的数据。为了管理 Amazon Ins SSM pector 插件并对 Linux 进行深入检查,Amazon Inspector 会自动InvokeInspectorLinuxSsmPlugin-do-not-delete在你的账户中创建SSM关联。Amazon Inspector 每 6 小时从您的基于 Linux 的亚马逊EC2实例收集更新的应用程序库存。

注意

不支持深度检查 Windows 或 Mac 实例。

本节介绍如何管理 Amazon Inspector 对亚马逊EC2实例的深度检查,包括如何为亚马逊 Inspector 设置自定义扫描路径。

访问或停用深度检查

注意

对于在 2023 年 4 月 17 日之后激活 Amazon Inspector 的账户,深度检查会作为亚马逊EC2扫描的一部分自动激活。

管理深度检查
  1. 使用您的凭证登录,然后在 https://console.aws.amazon.com/inspector/v 2/home 中打开 Amazon Inspector 控制台

  2. 从导航窗格中选择 “常规设置”,然后选择 Amazon EC2 扫描设置。

  3. Amazon EC2 实例的深度检查下,您可以为您的组织或自己的账户设置自定义路径

您可以通过编程方式检查单个帐户的激活状态 GetEc2 DeepInspectionConfigurationAPI. 您可以通过编程方式检查多个账户的激活状态 BatchGetMemberEc2DeepInspectionStatus API.

如果你在 2023 年 4 月 17 日之前激活了 Amazon Inspector,则可以通过控制台横幅或 UpdateEc2DeepInspectionConfigurationAPI。如果您是 Amazon Inspector 中某个组织的委托管理员,则可以使用 BatchUpdateMemberEc2DeepInspectionStatusAPI激活对您自己和您的会员账户的深度检查。

您可以通过以下方式停用深度检查 UpdateEc2DeepInspectionConfigurationAPI。组织中的成员账户无法停用深度检查。相反,成员账户必须由其委托的管理员使用以下命令停用 BatchUpdateMemberEc2DeepInspectionStatus API.

关于适用于 Linux 的亚马逊 In SSM spector 插件

Amazon Inspector 使用亚马逊 In SSM spector 插件对你的 Linux 实例进行深入检查。Amazon Ins SSM pector 插件会自动安装在你的 Linux 实例的/opt/aws/inspector/bin目录中。可执行文件的名称是 inspectorssmplugin

Amazon Inspector 使用 Systems Manager Distributor 在你的实例上部署插件。要执行深度检查扫描,Systems Manager Distributor 和 Amazon Inspector 必须支持您的亚马逊EC2实例操作系统。有关 Systems Manager Distributor 支持的操作系统的信息,请参阅《AWS Systems Manager 用户指南》中支持的软件包平台和架构

Amazon Inspector 创建以下文件目录来管理亚马逊 Inspector SSM 插件为深度检查而收集的数据:

  • /opt/aws/inspector/var/input

  • /opt/aws/inspector/var/output— 此目录中的packages.txt文件存储了深度检查发现的软件包的完整路径。如果 Amazon Inspector 在您的实例上多次检测到同一个包裹,则该packages.txt文件会列出找到该包裹的每个位置。

Amazon Inspector 将该插件的日志存储在 /var/log/amazon/inspector 目录中。

卸载 Amazon Inspect SSM or 插件

如果inspectorssmplugin文件无意中被删除,则该SSM协会InspectorLinuxDistributor-do-not-delete将在下次扫描间隔尝试重新安装该inspectorssmplugin文件。

如果您停用亚马逊EC2扫描,则该插件将自动从所有 Linux 主机上卸载。

Amazon Inspector 深度检查的自定义路径

您可以设置自定义路径,让 Amazon Inspector 在深入检查您的 Linux 亚马逊EC2实例时进行扫描。当您设置自定义路径时,Amazon Inspector 会扫描该目录及其中的所有子目录中的软件包。

所有账户最多可以定义 5 个自定义路径。组织的委托管理员可以定义 10 个自定义路径。

除了以下默认路径外,Amazon Inspector 还会扫描所有自定义路径,Amazon Inspector 会扫描所有账户的默认路径:

  • /usr/lib

  • /usr/lib64

  • /usr/local/lib

  • /usr/local/lib64

注意

自定义路径必须是本地路径。Amazon Inspector 不扫描映射的网络路径,例如网络文件系统挂载或 Amazon S3 文件系统挂载。

格式化自定义路径

自定义路径不能超过 256 个字符。以下是自定义路径的外观示例:

路径示例

/home/usr1/project01

注意

每个实例的套餐限制为 5,000。最长包裹库存收集时间为 15 分钟。Amazon Inspector 建议您选择自定义路径以避免这些限制。

在 Amazon Inspector 控制台和亚马逊 Inspector 中设置自定义路径 API

以下过程描述了如何在亚马逊 Inspector 控制台中和使用亚马逊 Inspector 为亚马逊 Inspector 深度检查设置自定义路径API。在您设置自定义路径后,Amazon Inspector 会在下一次深度检查中包含该路径。

Console
  1. 以授权管理员身份登录, AWS Management Console 然后在 https://console.aws.amazon.com/inspector/v 2/home 上打开 Amazon Inspector 控制台

  2. 使用 AWS 区域 选择器选择要激活 Lambda 标准扫描的区域。

  3. 在导航窗格中,选择常规设置,然后选择EC2扫描设置

  4. 您自己账户的自定义路径下,选择编辑

  5. 在路径文本框中,输入您的自定义路径。

  6. 选择保存

API

运行UpdateEc2DeepInspectionConfiguration命令。对于 packagePaths,指定要扫描的路径数组。

Amazon Inspector 深度检查的自定义时间表

默认情况下,Amazon Inspector 每 6 小时从亚马逊EC2实例收集一次应用程序库存。但是,您可以运行以下命令来控制 Amazon Inspector 执行此操作的频率。

命令示例 1:列出关联以查看关联 ID 和当前间隔

以下命令显示关联的关联 ID InvokeInspectorLinuxSsmPlugin-do-not-delete

aws ssm list-associations \ --association-filter-list "key=AssociationName,value=InvokeInspectorLinuxSsmPlugin-do-not-delete" \ --region your-Region

命令示例 2:更新关联以包括新的间隔

以下命令使用关联的关联 ID InvokeInspectorLinuxSsmPlugin-do-not-delete。您可以将费率schedule-expression从 6 小时设置为新的间隔,例如 12 小时。

aws ssm update-association \ --association-id "your-association-ID" \ --association-name "InvokeInspectorLinuxSsmPlugin-do-not-delete" \ --schedule-expression "rate(6 hours)" \ --region your-Region
注意

根据您的用例,如果您将费率设置为 6 小时schedule-expression到间隔(例如 30 分钟),则可能会超过每日 ssm 库存限制。这会导致结果延迟,并且您可能会遇到处于部分错误状态的 Amazon EC2 实例。

支持的编程语言

对于 Linux 实例,Amazon Inspector 深度检查可以生成应用程序编程语言包和操作系统包的调查结果。

对于 Mac 和 Windows 实例,Amazon Inspector 深度检查只能对操作系统包生成结果。

有关支持的编程语言的更多信息,请参阅支持的编程语言:Amazon EC2 深度检查