为什么 Amazon Inspector 不扫描我的 Amazon EC2 实例?

2 分钟阅读
0

我启用了 Amazon Inspector,但它没有扫描我的 Elastic Compute Cloud(Amazon EC2)实例。Amazon Inspector 控制面板状态为“非托管 EC2 实例”、“不支持的操作系统”、“内部错误”、“等待初始扫描”或“无清单”。

简短描述

Amazon Inspector 使用 AWS Systems Manager 和 AWS Systems Manager Agent(SSM Agent)来扫描安装在您的 Amazon EC2 实例上的软件应用程序。然后,Amazon Inspector 会扫描 SSM Agent 收集的遥测数据以查找软件漏洞。您可以使用 Amazon Inspector 控制面板来监控 Amazon EC2 实例的状态。有关详细信息,请参阅使用 Amazon Inspector 扫描 Amazon EC2 实例

如果 Amazon Inspector 没有扫描您的 Amazon EC2 实例,请确保:

  • SSM Agent 是最新的。
  • Amazon EC2 实例正在运行。
  • 操作系统是支持的操作系统。
  • 已配置与 Systems Manager 的连接。
  • Systems Manager 关联和软件应用程序已配置。

解决方法

检查 SSM Agent 版本

Amazon Inspector 必须运行 SSM Agent 来扫描 Amazon EC2 实例。如果您使用的是早期版本的 SSM Agent,则可能需要对其进行更新才能成功扫描 Amazon EC2 实例。最佳实践是自动执行 SSM Agent 更新流程。有关说明,请参阅自动更新 SSM Agent

要手动更新 SSM Agent,请订阅 SSM Agent 通知。然后,使用 Run Command 更新 SSM Agent。您也可以在 GitHub 网站上订阅 SSM Agent 发行说明

检查 Amazon EC2 实例是否正在运行

如果状态为“EC2 实例已停止”,则意味着 Amazon Inspector 暂停了对实例的扫描,因为该实例处于停止状态。在实例终止之前,任何现有发现都会持续存在。如果实例重启,Amazon Inspector 会自动恢复对该实例的扫描。要重启 Amazon EC2 实例,请参阅停止和启动实例

检查操作系统是否受支持

如果状态为“不支持的操作系统”,则意味着 Amazon EC2 实例使用了 Amazon Inspector 不支持的操作系统或架构。有关列出用于扫描 EC2 实例的受支持操作系统的表,请参阅支持的操作系统: Amazon EC2 扫描

要检查您的操作系统版本,请在 Linux 或 Windows 上按照以下步骤操作:

Linux 操作系统

运行以下命令:

cat /etc/os-release
lsb_release -a
hostnamectl

Windows 操作系统

选择 Windows 徽标键 + R,在打开框中输入 msinfo32,然后选择确定

检查与 Systems Manager 的连接

**注意:**如果您的 Amazon EC2 实例未出现在 Systems Manager 控制台中,则可能需要进行其他配置。有关详细信息,请参阅为什么我的 EC2 实例未显示为托管节点,或在 Systems Manager 中显示“连接丢失”状态?

  1. 在 Amazon Inspector 和您的 Amazon EC2 实例所在的区域中,打开 Systems Manager 控制台
  2. 在导航窗格中,选择 Fleet Manager
  3. 托管节点中,检查 SSM Agent Ping 状态。如果状态为在线,这意味着您的 Amazon EC2 实例已连接到 SSM Agent。

如果 SSM Agent ping 状态连接丢失,请确保您的 Amazon EC2 实例满足了 Systems Manager 的先决条件。如果您使用的是 SSM Agent 3.1.501.0 或更高版本,则可以使用 ssm-cli 命令行工具进行进一步诊断和故障排除。有关说明,请参阅使用 ssm-cli 对 Amazon EC2 托管实例的可用性进行故障排除

您也可以运行 Systems Manager Automation 文档 AWSSupport-TroubleshootManagedInstance,确认该实例是否已满足列为托管实例的先决条件。有关详细信息,请参阅 AWSSupport-TroubleshootManagedInstance

检查 Systems Manager 关联和软件应用程序

Amazon Inspector 需要在您的账户中有一个 Systems Manager 状态管理器关联,才能收集软件应用程序清单。Amazon Inspector 会自动创建一个名为 InspectorInventoryCollection-do-not-delete 的关联。如果状态为“无清单”,则意味着 Amazon Inspector 找不到要扫描的 Amazon EC2 实例的软件应用程序清单。

检查关联状态

  1. 在 Amazon Inspector 和您的 Amazon EC2 实例所在的区域中,打开 Systems Manager 控制台
  2. 在导航窗格中,选择状态管理器
  3. 关联中,确保 InspectorInventoryCollection-do-not-delete 关联存在且状态成功
  4. 如果 InspectorInventoryCollection-do-not-delete 关联不存在,请在所有 Amazon EC2 实例上运行 AWS-GatherSoftwareInventory 文档。选择未扫描的 Amazon EC2 实例的关联 ID,然后选择执行历史记录选项卡,以了解更多详细信息。
  5. 如果 InspectorInventoryCollection-do-not-delete 关联状态失败,请选择关联 ID,然后选择立即应用关联
  6. 再次检查 InspectorInventoryCollection-do-not-delete 关联的状态,确认它已从失败更改为成功

注意:对于 Windows,需要 Amazon Inspector SSM 插件才能扫描 Windows EC2 实例。激活 EC2 扫描后,Amazon Inspector 会为您的 Windows 资源创建新的 SSM 关联 InspectorDistributor-do-not-deleteInspectorInventoryCollection-do-not-deleteInvokeInspectorSsmPlugin-do-not-delete。如果其中任何关联的状态失败,请尝试重新应用关联。如果 InspectorSsmPlugin.exe 文件被删除,则 InspectorDistributor-do-not-delete SSM 关联将在下次 Windows 扫描时重新安装该插件。有关详细信息,请参阅使用 Amazon Inspector 扫描 Windows EC2 实例

验证节点中是否存在相关软件应用程序

确保您的 Amazon EC2 实例的清单中有软件包。

  1. 在 Amazon Inspector 和您的 Amazon EC2 实例所在的区域中,打开 Systems Manager 控制台
  2. 在导航窗格中,选择 Fleet Manager
  3. 托管节点中,选择您的节点 ID,然后选择清单选项卡,以检查软件应用程序。

检查软件应用程序清单收集频率

最佳实践是将清单收集频率设置为每 30 分钟收集一次。编辑 InspectorInventoryCollection-do-not-delete 关联,将相关 cron 表达式设置为 30 分钟一次

相关信息

评估您的 AWS 环境的 Amazon Inspector 覆盖范围

如何设置 Amazon Inspector Classic 以对 Amazon EC2 实例运行安全评估?

AWS 官方
AWS 官方已更新 1 年前