AWS Systems Manager
用户指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 Amazon AWS 入门

演练:修补服务器环境 (控制台)

以下演练介绍如何在 Systems Manager 控制台中使用默认补丁基准、补丁组和 Maintenance Window 修补服务器环境。要详细了解此演练介绍的过程,请参阅 使用 Patch Manager

在您开始之前

在您的实例上安装或更新 SSM 代理。要修补 Linux 实例,您的实例必须运行 SSM 代理 2.0.834.0 版或更高版本。有关更新此代理的信息,请参阅 从控制台运行命令 中标题为示例:更新 SSM 代理的部分。

此外,以下演练在 Maintenance Window 期间执行修补。您必须先为Maintenance Window配置角色和权限,然后才能开始使用。有关更多信息,请参阅 控制对 Maintenance Window 的访问权限

创建默认补丁基准

Patch Manager 包含用于 Patch Manager 支持的每个操作系统的默认补丁基准。您可以利用这些默认补丁基准 (您不能对其进行自定义),也可创建自己的补丁基准。以下程序介绍了如何查看默认补丁基准,以查看它们是否满足需求。该程序还介绍了如何创建自己的默认补丁基准。要了解有关补丁基准的更多信息,请参阅 验证默认补丁基准或创建自定义补丁基准

创建默认补丁基准 ()

  1. https://console.amazonaws.cn/systems-manager/ 上打开 AWS Systems Manager 控制台。

  2. 在导航窗格中,选择 Patch Manager

    -或者-

    如果 AWS Systems Manager 主页首先打开,请选择菜单图标 ( ) 以打开导航窗格,然后选择 Patch Manager

  3. 在补丁基准列表中,选择要修补的操作系统的补丁基准的名称。

  4. 选择批准规则选项卡。

    如果实例接受自动批准规则,可跳至下一过程将实例添加到补丁组

    -或者-

    要创建自己的默认补丁基准,请在导航窗格中,选择 Patch Manager,然后选择创建补丁基准

  5. 名称字段中,键入新补丁基准的名称,例如 RHEL-Default

  6. (可选) 键入此补丁基准的描述。

  7. 操作系统列表中,选择操作系统,例如 Red Hat Enterprise Linux

  8. 批准规则部分,使用字段创建一个或多个自动批准规则。

    • 产品:批准规则适用于的操作系统的版本,例如 RedhatEnterpriseLinux7.4。默认选择为全部

    • 分类:批准规则适用于的补丁的类型,例如安全性。默认选择为全部

    • 严重性:规则适用于的补丁的严重性值,例如重大。默认选择为全部

    • 自动批准延迟:发布补丁后到自动批准补丁前等待的天数。可以输入零 (0) 到 100 的任何整数。

    • (可选) 合规性级别:要分配给基准批准的补丁的严重性级别,例如

      注意

      如果有已批准的补丁报告为缺失,则在合规性级别中选择的选项 (如 CriticalMedium) 将确定违反合规性的严重性。

    • (仅限 Linux) 包括除安全性之外的更新:选中此复选框,除了可以安装与安全性相关的补丁外,还可以安装源存储库中提供的非安全性补丁。

      注意

      对于 SUSE Linux Enterprise Server,无需选中此复选框,因为 SLES 实例上默认安装针对安全性和非安全性问题的补丁。有关更多信息,请参阅如何选择安全性补丁中的 SLES 的内容。

    有关在自定义补丁基准中使用批准规则的更多信息,请参阅自定义基准

  9. 补丁异常部分中,输入要为基准明确批准和拒绝的补丁列表 (使用逗号分隔)。对于已批准的补丁,选择相应的合规性严重性级别。

    注意

    有关批准的修补程序和拒绝的修补程序列表的接受格式的信息,请参阅 已批准补丁和已拒绝补丁列表的程序包名称格式

    如果您指定的任何已批准的补丁与安全性无关,请选中已批准的补丁包括除安全性之外的更新框以也安装这些补丁。仅适用于 Linux 实例。

  10. (可选) 仅对于 Linux 实例:如果您要为不同版本的操作系统 (如 AmazonLinux2016.03AmazonLinux2017.09) 指定备用补丁存储库,请为补丁来源部分中的每个产品执行以下操作:

    • 名称中,键入名称以帮助您识别源配置。

    • 产品中,选择补丁源存储库适用于的操作系统的版本,如 RedhatEnterpriseLinux7.4

    • 配置中,输入要使用的 yum 存储库配置的值。例如:

      cachedir=/var/cache/yum/$basesearch $releasever keepcache=0 debualevel=2

      选择添加其他来源来为每个其他操作系统版本指定源存储库,最多 20 个。

      有关备用源补丁存储库的更多信息,请参阅如何指定备用补丁源存储库 (Linux)

  11. 选择创建补丁基准

  12. 在补丁基准列表中,选择要设置为默认的基准。

  13. 选择操作,然后选择设置默认补丁基准

  14. 验证设置默认补丁基准确认对话框中的详细信息,然后选择设置为默认

将实例添加到补丁组

为了帮助您组织修补工作,我们建议您使用 Amazon EC2 标签将实例添加到补丁组。补丁组需要使用标签键 Patch Group。您可以指定任何值,但标签键必须为补丁组。有关补丁组的更多信息,请参阅 将实例组织到补丁组中

将实例添加到补丁组

  1. 打开 Amazon EC2 控制台,然后在左侧导航窗格中选择实例

  2. 从实例列表中选择您要配置用于修补的实例。

  3. Actions 菜单中,选择 Instance SettingsAdd/Edit Tags

  4. 如果实例已应用一个或多个标签,请选择创建标签

  5. 字段中,键入 Patch Group

  6. Value 字段中,键入可帮助您了解要修补的实例的值。

  7. 选择 Save

  8. 重复此过程,向同一补丁组中添加其他实例。

创建Maintenance Window用于修补

为了最大程度减少对服务器可用性的影响,我们建议您将Maintenance Window配置为在不中断业务运营的时间执行修补。有关Maintenance Window的更多信息,请参阅 AWS Systems Manager Maintenance Window

创建 Maintenance Window 用于修补 ()

  1. https://console.amazonaws.cn/systems-manager/ 上打开 AWS Systems Manager 控制台。

  2. 在导航窗格中,选择 Maintenance Window

    -或者-

    如果 AWS Systems Manager 主页首先打开,请选择菜单图标 ( ) 以打开导航窗格,然后选择 Maintenance Windows

  3. 选择 Create maintenance window

  4. Name 字段中,键入一个将此项指定为用于修补关键更新和重要更新的Maintenance Window的名称。

  5. 计划部分顶部,选择所需的计划选项。

  6. Duration 字段中,键入您希望Maintenance Window处于活动状态的小时数。

  7. Stop initiating tasks 字段中,键入您希望系统在Maintenance Window周期结束前几小时停止启动新任务。

  8. 选择 Create maintenance window

  9. 在 Maintenance Window 列表中,选择刚才创建的 Maintenance Window,然后选择操作注册目标

  10. (可选) 在 Maintenance window target details 部分中,为此目标提供名称、描述和所有者信息 (您的姓名或别名)。

  11. 目标部分中,选择指定标签

  12. 标签下,输入标签键和标签值来指定要注册 Maintenance Window 的实例。

  13. 选择注册目标。系统将创建Maintenance Window目标。

  14. 在创建的 Maintenance Window 的详细信息页面中,选择操作注册运行命令任务

  15. (可选) 在 Maintenance window task details 部分中,为此任务提供名称和描述。

  16. 命令文档列表中,选择 AWS-RunPatchBaseline

  17. 任务优先级列表中,选择优先级。1 表示最高优先级。

  18. 目标部分中定位方式的下方,选择在此过程中先前创建的 Maintenance Window 目标。

  19. (可选) 在 Rate control 中:

    • Concurrency 中,指定要同时对其运行此命令的实例的数量或百分比。

      注意

      如果通过选择 Amazon EC2 标签选择了目标,但不确定有多少个实例使用所选标签,则可以通过指定百分比来限制可同时运行此文档的实例的数量。

    • Error threshold 中,指定此命令在一定数量或百分比的实例上失败后何时停止在其他实例上运行它。例如,如果您指定 3 个错误,Systems Manager 将在收到第 4 个错误时停止发送命令。仍在处理命令的实例也可能发送错误。

  20. 角色部分中,输入附加 AmazonSSMMaintenanceWindowRole 的 IAM 角色的 ARN。有关更多信息,请参阅 控制对 Maintenance Window 的访问权限

  21. Output options 部分中,如果您要将命令输出保存到文件,请选择 Write command output to an Amazon S3 bucket。在框中键入存储桶和前缀 (文件夹) 名称。

    注意

    授予将数据写入 S3 存储桶的能力的 S3 权限是分配给实例的实例配置文件的权限,而不是执行此任务的 IAM 用户的权限。有关更多信息,请参阅 配置对 Systems Manager 的访问权限

  22. SNS Notifications 部分中,如果您希望发送有关命令执行状态的通知,请选中 Enable SNS notifications 复选框。

    有关为 Run Command 配置 Amazon SNS 通知的更多信息,请参阅为 Run Command 配置 Amazon SNS 通知

  23. 参数部分中:

    • Operation 列表中,选择 Scan 以扫描缺失的补丁,或选择 Install 以扫描并安装缺失的补丁。

      注意

      Install 操作将使实例重启 (如果已安装补丁)。Scan 操作不会导致重启。

    • 您不需要在 Snapshot Id 字段中指定任何值。此系统将自动生成并提供此参数。

    • (可选) 在注释框中,输入有关此命令的跟踪备注或提醒。

    • 在“超时 (秒)”框中,输入系统在认为操作失败前等待操作完成的秒数。

  24. 选择注册运行命令任务

Maintenance Window任务完成后,您可以在 Managed Instances 页面上的 Amazon EC2 控制台中查看补丁合规性详细信息。在筛选栏中,使用 AWS:PatchSummaryAWS:ComplianceItem 筛选器。

注意

指定筛选器后,您可以通过为 URL 添加书签来保存您的查询。

您还可以通过在 Managed Instances 页面中选择实例来向下钻取到特定实例,然后选择 Patch 选项卡。您也可以使用 DescribePatchGroupStateDescribeInstancePatchStatesForPatchGroup API 来查看合规性详细信息。有关补丁合规性数据的信息,请参阅关于补丁合规性