如何指定备用补丁源存储库 (Linux) - AWS Systems Manager

如何指定备用补丁源存储库 (Linux)

当您使用托管式节点上配置的默认存储库执行修补操作时,AWS Systems Manager 的功能 Patch Manager 会扫描或安装与安全性相关的补丁。这是 Patch Manager 的默认行为。有关 Patch Manager 如何选择和安装安全性补丁的完整信息,请参阅 如何选择安全性补丁

不过,在 Linux 系统中,您还可以使用 Patch Manager 安装与安全性无关的补丁,或安装与托管式节点上配置的默认源存储库不同的源存储库中的补丁。您可以在创建自定义补丁基准时指定备用补丁源存储库。在每个自定义补丁基准中,您可以为多达 20 个版本的受支持的 Linux 操作系统指定补丁源配置。

例如,假设您的 Ubuntu Server 机群同时包括 Ubuntu Server 14.04 和 Ubuntu Server 16.04 托管式节点。在这种情况下,您可以在相同的自定义补丁基准中为每个版本指定备用存储库。对于每个版本,您提供名称,指定操作系统版本类型 (产品),并提供存储库配置。您也可以指定适用于所有版本的受支持的操作系统的单个备用源存储库。

注意

运行为托管式节点指定备用补丁存储库的自定义补丁基准,不会使这些存储库成为操作系统中的新默认存储库。修补操作完成后,以前配置为节点操作系统的默认存储库的存储库仍为默认存储库。

有关使用此选项的示例场景的列表,请参阅本主题后面的备用补丁源存储库的示例用法

有关默认和自定义补丁基准的信息,请参阅 关于预定义和自定义补丁基准

示例:使用控制台

要在 Systems Manager 控制台中指定备用补丁源存储库,请使用创建补丁基准上的补丁来源部分。有关使用 Patch sources (补丁源) 选项的信息,请参阅创建自定义补丁基准 (Linux)

示例:使用 AWS CLI

有关将 --sources 选项与 AWS Command Line Interface (AWS CLI) 结合使用的示例,请参阅 创建对不同操作系统版本使用自定义存储库的补丁基准

备用存储库的重要注意事项

使用备用补丁存储库计划修补策略时,请注意以下几点:

只指定用于修补的存储库

指定备用存储库并不意味着指定额外 存储库。您可以选择指定除托管式节点上配置为默认存储库以外的存储库。但是,如果需要应用默认存储库更新,还必须在备用补丁源配置中指定默认存储库。

例如,在 Amazon Linux 2 托管式节点上,默认存储库为 amzn2-coreamzn2extra-docker。如果需要在修补操作中包括 Extra Packages for Enterprise Linux (EPEL) 存储库,您必须将所有三个存储库都指定为备用存储库。

注意

运行为托管式节点指定备用补丁存储库的自定义补丁基准,不会使这些存储库成为操作系统中的新默认存储库。修补操作完成后,以前配置为节点操作系统的默认存储库的存储库仍为默认存储库。

基于 YUM 的分发版本的修补行为取决于 updateinfo.xml 清单

为基于 YUM 的分发版本(如 Amazon Linux 1 或 Amazon Linux 2、Red Hat Enterprise Linux 或 CentOS)指定备用补丁存储库时,修补行为取决于存储库是否包含一个采用正确格式的完整 updateinfo.xml 文件形式的更新清单。此文件指定各软件包的发行日期、分类和严重性。以下任一项都会影响修补行为:

  • 如果筛选分类严重性,但并未在 updateinfo.xml 中指定它们,筛选器将不会包含此软件包。这也意味着没有 updateinfo.xml 文件的软件包不会包含在修补中。

  • 如果按 ApprovalAfterDays 筛选,但软件包的发行日期不是 Unix Epoch 格式(或未指定发行日期),筛选器将不会包含此软件包。

  • 如果您在创建补丁基准页面中选择了包括非安全性更新复选框,则存在例外。在这种情况下,没有 updateinfo.xml 文件(或包含此文件但 Classification(分类)、Severity(严重性)和 Date(日期)值格式不正确)的软件包包含在补丁的预筛选列表中。(它们仍必须满足其他补丁基准规则要求才能安装。)

备用补丁源存储库的示例用法

示例 1 – Ubuntu Server 的非安全性更新

在使用 AWS 提供的预定义补丁基准 AWS-UbuntuDefaultPatchBaseline 的 Ubuntu Server 托管式节点机群上,您已经在使用 Patch Manager 安装安全性补丁。您可以创建基于此默认补丁基准的新补丁基准,但在批准规则中指定您也希望安装属于默认分配的与安全性无关的更新。当对节点运行此补丁基准时,将应用针对安全性和非安全性问题的补丁。您还可以选择在为基准指定的补丁异常中批准非安全性补丁。

示例 2 – Ubuntu Server 的个人软件包存档 (PPA)

Ubuntu Server 托管式节点正在运行通过 Ubuntu 个人软件包归档 (PPA) 分发的软件。在这种情况下,需创建补丁基准,用于指定已在托管式节点上配置为修补操作源存储库的 PPA 存储库。然后使用 Run Command 在节点上运行补丁基准文档。

示例 3:Amazon Linux 上的企业内部应用程序

您需要在 Amazon Linux 托管式节点上运行满足行业监管合规性要求所需的一些应用程序。您可以在节点上为这些应用程序配置存储库,使用 YUM 对这些应用程序进行初始安装,然后更新或创建新的补丁基准以包括此新企业存储库。此后,您可以使用 Run Command 运行 AWS-RunPatchBaseline 文档,并通过 Scan 选项查看企业软件包是否列在已安装软件包中以及在托管式节点上是否为最新。如果它不是最新的,可以使用 Install 选项再次运行该文档来更新应用程序。