使用补丁将操作系统补丁程序应用于一组 Compute Engine 虚拟机实例 (VM)。长时间运行的虚拟机需要定期更新系统,以防出现缺陷和漏洞。
补丁功能有两个主要组件:
- 补丁程序合规报告;该组件提供运行各种 Windows 和 Linux 发行版的虚拟机实例修补状态的分析结果。除了分析结果之外,您还可以查看该组件针对虚拟机实例提供的建议。
- 补丁程序部署;该组件自动执行操作系统和软件补丁程序更新过程。补丁程序部署组件会安排修补作业。修补作业跨虚拟机实例运行,并会应用补丁程序。
优势
借助补丁服务,您可以灵活地完成以下过程:
- 创建补丁程序审批。您可以从特定操作系统的所有可用更新中选择要应用于系统的补丁程序。
- 设置灵活的时间安排。您可以选择何时运行补丁程序更新(一次性还是周期性)。
- 应用高级补丁程序配置设置。您可以通过添加修补前和修补后脚本等配置来自定义补丁程序。
- 在一个地方集中管理这些修补作业或更新。您可以使用补丁信息中心来监控和报告修补作业及合规状态。
价格
如需了解价格,请参阅虚拟机管理器价格。
补丁的工作方式
要使用补丁功能,您必须设置 OS Config API 并安装 OS Config 代理。如需了解详细说明,请参阅设置虚拟机管理器。OS Config 服务可在您的环境中实现补丁程序管理,而 OS Config 代理则会利用更新机制来让各个操作系统应用补丁程序。更新是从操作系统的软件包代码库(也称为分发源软件包)或本地代码库中拉取的。
以下更新工具用于应用补丁程序:
- Red Hat Enterprise Linux (RHEL)、Rocky Linux 和 CentOS
yum upgrade
- Debian 和 Ubuntu -
apt upgrade
- SUSE Linux Enterprise Server (SLES) -
zypper update
- Windows - Windows 更新代理
补丁程序和包源代码
如需在虚拟机管理器中使用补丁功能,虚拟机必须能够访问软件包更新或补丁。补丁服务不托管或维护软件包更新或补丁。在某些情况下,您的虚拟机可能无法访问更新。例如,如果您的虚拟机不使用公共 IP,或者您使用的是专用 VPC 网络。在这些情况下,您必须完成其他步骤才能访问更新或补丁程序。请考虑以下选择:
- Google 建议您托管自己的本地代码库或 Windows Server Update Service,以便全面控制补丁程序基准。
- 或者,您可以使用 Cloud NAT 或其他代理服务将外部更新来源用于虚拟机。
补丁程序管理包含两项服务:补丁程序部署和补丁程序合规性。以下部分对每项服务进行了介绍。
补丁部署概览
补丁部署是通过调用 VM Manager API(也称为 OS Config API)启动的。为此,您可以使用 Google Cloud 控制台、Google Cloud CLI 或直接 API 调用。然后,VM Manager API 会通知在目标虚拟机上运行的 OS Config 代理开始修补。
OS Config 代理使用各发行版可用的补丁程序管理工具在每个虚拟机上运行修补。例如,Ubuntu 虚拟机使用 apt
实用程序工具。该实用程序工具会从操作系统的分发源中检索更新(补丁程序)。在修补过程中,OS Config 代理会向 VM Manager API 报告进度。
补丁合规性概览
在虚拟机上设置虚拟机管理器后,虚拟机将发生以下情况:
- OS Config 代理定期(大约每 10 分钟)报告操作系统清点数据。
- 补丁合规性后端定期读取此数据,将其与从操作系统发行版获取的软件包元数据交叉对比并保存。
- 然后,Google Cloud 控制台获取补丁合规性数据,并在控制台中显示此信息。
如何生成补丁程序合规性数据
补丁程序合规性后端会定期完成以下任务:
- 读取从虚拟机上的操作系统清点数据中收集的报告。
从每个操作系统的漏洞源扫描分类数据,并根据严重程度(从最高到最低)对此数据排序。
下表总结了用于每种操作系统的漏洞源。
操作系统 漏洞源软件包 RHEL 和 CentOS https://access.redhat.com/security/data RHEL 的漏洞扫描结果基于发布的每个主要版本的最新次要版本。对于较旧的 RHEL 次要版本,扫描结果可能不准确。
Debian https://security-tracker.debian.org/tracker Ubuntu https://launchpad.net/ubuntu-cve-tracker SLES 不适用 SLES 不支持补丁程序合规性报告
Rocky Linux 不适用 Rocky Linux 支持补丁合规性报告但是,无法按严重级别对漏洞数据进行分类。
Windows 补丁程序合规性后端会从 Windows Update Agent API 获取分类数据。 将这些分类(由漏洞源提供)映射到 Google 的补丁程序合规性状态。
下表总结了用于生成 Google 的补丁程序合规性状态的映射系统。
分发源类别 Google 的补丁程序合规性状态 - 严重
- 紧急
- WINDOWS_CRITICAL_UPDATE
严重(红色) - 重要提示
- 高
- WINDOWS_SECURITY_UPDATE
重要/安全(橙色) - 所有其他类别
其他(黄色) - 没有可用的更新
最新(绿色) 为每个可用更新选择严重程度最高的数据,并将其显示在 Google Cloud 控制台信息中心页面上。您还可以在虚拟机详情页面上查看虚拟机的所有可用更新的完整报告。
例如,如果 RHEL 7 虚拟机的操作系统清点数据包含以下软件包数据:
- 软件包名称:package1
- 已安装的版本:1.4
- 更新版本:2.0
补丁程序合规性后端会从源分发扫描分类数据,并检索以下信息:
- 1.5 版 => 严重,修正 CVE-001
- 1.8 版 => 低,修正 CVE-002
- 1.9 版 => 低,修正 CVE-003
然后,在 Google Cloud 控制台信息中心中,此 RHEL 7 虚拟机会添加到具有可用的 Critical
更新的虚拟机列表中。如果查看此虚拟机的详细信息,您会看到 1 个可用 Critical
更新(2.0 版)以及 3 个 CVE:CVE-001、CVE-002 和 CVE-003。
同时修补
启动修补作业时,服务会使用您提供的实例过滤条件来确定要修补的特定实例。您可以通过实例过滤条件同时修补多个实例。当已安排好的修补作业开始考虑您环境中的变化时,便会执行此过滤。
计划性修补
补丁程序可按需执行、提前安排或按周期性时间表来配置。如果您需要立即停止正在进行的修补作业,也可以将其取消。
通过创建具有指定频率和时长的补丁程序部署,您可以设置修补维护期。安排具有指定时长的修补作业可确保修补任务不会在指定的维护窗口之外发生。
此外,通过创建要在特定时间完成的补丁程序部署,您可以实施补丁程序安装截止期限。如果目标虚拟机未在此日期之前进行修补,那么安排好的部署会在此日期开始安装补丁程序。如果虚拟机已完成修补,则系统不会对这些虚拟机执行任何操作,除非指定了修补前或修补后脚本或者需要重新启动。
修补作业包含哪些内容?
在虚拟机上运行修补作业时,系统会根据操作系统运用一系列更新。您可以选择要应用的特定更新和软件包,对于 Windows 操作系统,还可以指定要更新的 KB ID。
您还可以使用修补作业来更新针对该特定发行版标准软件包安装的任何 Google 代理。使用该发行版的更新工具来查询可用的软件包。例如,如需查看 Ubuntu 操作系统的可用 Google 代理,请运行 apt list --installed | grep -P 'google'
。
Windows
对于 Windows 操作系统,您可以应用下面的所有更新,或从中进行选择:
- 定义更新
- 驱动程序更新
- 功能包更新
- 安全更新
- 工具更新
RHEL/Rocky/CentOS
对于 Red Hat Enterprise Linux、Rocky Linux 和 Centos 操作系统,您可以应用下面的所有更新,或从中进行选择:
- 系统更新
- 安全更新
Debian/Ubuntu
对于 Debian 和 Ubuntu 系统,您可以应用下面的所有更新,或从中进行选择:
- 分发包更新
- 软件包管理系统更新
SUSE
对于 SUSE Enterprise Linux Server (SLES) 和 openSUSE 操作系统,您可以应用下面的所有更新,或从中进行选择:
- 系统软件包更新
- Zypper 补丁程序(特定的 Bug 修复和安全修复)
访问虚拟机的补丁状态摘要
如需查看虚拟机的补丁摘要,您有以下选择:
如需查看组织或文件夹中所有虚拟机的补丁摘要信息,请使用 Google Cloud 控制台上的补丁信息中心。请参阅查看虚拟机的补丁摘要。
如需查看修补作业的状态,请使用 Google Cloud 控制台上的修补作业页面。您还可以使用 Google Cloud CLI 或 OS Config API。如需了解详情,请参阅管理修补作业。
如需查看其他信息(例如操作系统软件包更新和漏洞报告),请参阅查看操作系统详细信息。
补丁信息中心
Google Cloud 控制台提供了一个信息中心,您可以通过该信息中心监控虚拟机实例的补丁程序合规状态。
了解补丁信息中心
操作系统概览
本部分按操作系统显示虚拟机总数。要使某一虚拟机显示在此列表中,该虚拟机必须安装 OS Config 代理并启用 OS Inventory Management。
如果某个虚拟机的操作系统显示为 No data
,则可能存在下面的一种或多种情况:
- 虚拟机无响应。
- 未安装 OS Config 代理。
- 未启用 OS Inventory Management。
操作系统不受支持。如需查看受支持操作系统的列表,请参阅支持的操作系统。
补丁程序合规状态
本部分按操作系统介绍每个虚拟机的合规状态。
合规状态分为四个主要类别:
- 关键:这意味着虚拟机有可用的关键更新。
- 重要或安全:这意味着虚拟机有可用的重要更新或安全更新。
- 其他:这意味着虚拟机有可用的更新,但这些更新均未归类为关键更新或安全更新。
- Up-to-date::这意味着虚拟机没有可用的更新。