本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
高级配置
本节介绍了 Inspector VM 扫描仪的高级配置选项。
配置本地输出
Inspector 虚拟机扫描器提供以下选项来配置本地输出的写入方式:
-
--send-results必须设置为telemetry或disabled。如果你通过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