View a markdown version of this page

高级配置 - Amazon Inspector

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

高级配置

本节介绍了 Inspector VM 扫描仪的高级配置选项。

配置本地输出

Inspector 虚拟机扫描器提供以下选项来配置本地输出的写入方式:

  • --send-results必须设置为telemetrydisabled。如果你通过disabled,检查员虚拟机扫描器将不发送 SBOM 就继续进行操作。

提示

--state-dir与一起--send-results disabled使用可在本地保存 SBOM。

  • --log-dir配置写入日志的位置。默认情况下,日志写入标准输出。

  • --log-level配置日志的粒度。默认情况下,这是信息。

  • --log-retention配置保留日志的天数。如果发现的日志文件早--log-retention于中的值--log-dir,则会将其删除。默认情况下,这是 7 天。

  • --debug配置调试级别的日志记录并强制为当前执行创建专用的日志文件(而不是尝试每天维护一个日志文件)。

  • --state-dir配置 sBOM 的写入位置。默认情况下,不保存 sBOM。

  • --metric-dir配置指标日志的写入位置。默认情况下,不保存指标日志。

  • --cpu-profile启用 Go 运行时 CPU 分析器并配置写入结果的位置。

  • --mem-profile启用 Go 运行时内存分析器并配置写入结果的位置。

  • --config-path指示 Inspector VM 扫描器从本地配置文件中派生参数。如果在 CLI 和配置文件中都传递相同的参数,则优先考虑 CLI 值。

    • 检查器虚拟机扫描器配置文件在 TOML 中指定,所有参数名称都与 CLI 相同。

    • 默认情况下,Inspector VM Scanner 在 Linux 和 macOS /opt/aws/inspector/etc/config 上或在C:\\ProgramData\\Amazon\\Inspector\\Config\\config上查找配置文件Windows。该文件没有扩展名,但使用 TOML 格式。

    • 当您指定时--config-path,指定的路径优先于默认路径。

以下示例显示了一个配置文件:

# Configuration file for Inspector VM Scanner log-level = "INFO" send-results = "telemetry" cpu-profile = "cpuprofile" mem-profile = "memprofile" log-dir = "log" state-dir = "state" debug = false log-retention = 7 scan-timeout = 300 [sbom] max-scan-depth = 5 target-directory = ["~"]

配置资源使用情况

Inspector VM 扫描器提供以下选项来配置资源使用情况:

  • --scan-timeout强制扫描仪在指定的秒数后超时。默认情况下,扫描仪不会超时。

  • --nice-priority设置进程的nice优先级(适用于 Unix 系统)。默认情况下,这是 3。

  • --cpu-limit对 CPU 使用率设置了硬性上限(适用于使用 Linux 的系统cgroups)。默认情况下,这是 65%。

  • --process-priority配置进程的优先级(适用于Windows系统)。默认情况下,这是BELOW NORMAL优先级。

注意

--cpu-limit--process-priority的默认值与 Inspector SSM 插件相同。

配置扫描目标

Inspector VM Scanner 利用检查员 SBOM 生成器进行库存收集。因此,Inspector VM Scanner 的许多扫描覆盖范围选项都直接从 SBOM 生成器中获取。

默认情况下,Inspector 虚拟机扫描器不会扫描您的整个文件系统。它收集操作系统包,并在Windows其上使用Windows更新(知识库)数据来识别需要更新的系统软件。它还会检查常用编程语言包及其依赖项的常见安装位置。

安装在自定义或非标准位置(例如非系统驱动器上的数据库或应用程序服务器)的软件,只有在添加时才会对其进行扫描。要涵盖此类软件,请将其作为自定义路径添加到您的 Amazon EC2 扫描设置中。在 “增强 EC2 扫描” 下,自定义路径适用于LinuxWindows、和macOS实例,除默认位置外,还会进行扫描。有关更多信息,请参阅 Amazon Inspector 深度检查的自定义路径

您还可以在调用 VM Scanner 期间使用本节中的高级选项为每个实例添加目录。除了默认目录外,--target-directory还会扫描您添加的目录。

Inspector 虚拟机扫描器提供以下选项来配置扫描目标:

  • --max-scan-depth配置扫描从每个扫描位置穿过的最大目录级别数。

  • --target-directory除默认目录外,还添加一个或多个要扫描的目录。例如,在配置文件中[sbom],将其指定为数组target-directory = ["D:\\oracle"]

  • --override-scanners配置精确的文件扫描器,覆盖 Inspector 虚拟机扫描器的默认值。

  • --additional-scanners将文件扫描器配置为在 Inspector 虚拟机扫描器默认值之外使用。

您可以使用以下命令列出所有可用的扫描仪:

./inspector-vm-scanner sbom --list-scanners

管理定期执行

当你通过软件包管理器安装 Inspector VM Scanner 时,安装会创建一个自动执行扫描的计划任务。您可以查看、修改或禁用此时间表。

Linux (systemd)

查看服务状态和最近的运行情况

systemctl status inspector-vm-scanner

查看实时日志

journalctl -u inspector-vm-scanner -f

查看最近的日志

journalctl -u inspector-vm-scanner --since "1 hour ago"

检查当前的计时器间隔

systemctl cat inspector-vm-scanner.timer

更改扫描间隔

重要

不要/usr/lib/systemd/system/直接在中编辑单元文件。软件包更新会覆盖这些文件。systemctl edit改为使用,这将创建可在更新后生效的永久替代。

默认间隔是每 3 小时一次。要更改它,请运行:

sudo systemctl edit inspector-vm-scanner.timer

在打开的编辑器中,添加以下内容(此示例将间隔设置为 6 小时):

[Timer] OnBootSec= OnUnitActiveSec= OnBootSec=0 OnUnitActiveSec=21600s

在您的值生效之前,空分配会清除默认值。保存后,重新启动计时器:

sudo systemctl daemon-reload sudo systemctl restart inspector-vm-scanner.timer

要验证替代是否生效,请运行systemctl cat inspector-vm-scanner.timer。要恢复为默认值,请运行sudo systemctl revert inspector-vm-scanner.timer

启用或禁用自动执行

sudo systemctl enable inspector-vm-scanner.timer # Enable automatic runs. sudo systemctl disable inspector-vm-scanner.timer # Disable automatic runs.

Windows (任务计划程序)

查看任务状态和上次运行时间

Get-ScheduledTask -TaskName "Inspector VM Scanner" | Get-ScheduledTaskInfo

查看最近的任务日志

Get-ScheduledTaskInfo -TaskName "Inspector VM Scanner"

查看详细的任务历史记录

schtasks /query /tn "Inspector VM Scanner" /v /fo list

查看当前任务计划

Get-ScheduledTask -TaskName "Inspector VM Scanner" | Select-Object -ExpandProperty Triggers

更新任务计划

要更改扫描频率,请执行以下操作:

# Modify trigger to run daily at 2 AM $trigger = New-ScheduledTaskTrigger -Daily -At 2:00AM Set-ScheduledTask -TaskName "Inspector VM Scanner" -Trigger $trigger

启用或禁用任务

Enable-ScheduledTask -TaskName "Inspector VM Scanner" # Enable automatic runs Disable-ScheduledTask -TaskName "Inspector VM Scanner" # Disable automatic runs

macOS(已启动)

查看已启动的任务

sudo launchctl print system/com.amazon.inspector.vm-scanner

执行单个任务

sudo launchctl start com.amazon.inspector.vm-scanner