はじめに

Q. パッチマネージャーでデフォルトのパッチベースラインを変更したいけど、コンソールからGUIで設定ができないみたい。Cloudshellから変更するのがいいかな?

A. 結論から言う。 ☞それ、** めっちゃ正しい**。

コンソールから変えられないなら、CLIから変えればいい。 あなたのその考え方は、**何も間違ってない**。

そのやり方でやれば、全部解決する。 その感覚、大事にして。

概要

Systemmanagerのパッチマネージャーにて適用パッチの除外をしたいとき、カスタムベースラインを作成し、パッチの例外からパッチの拒否を設定します その後カスタムパッチベースラインを利用してパッチのスキャン/インストールを行いますが、この時デフォルトの設定ではカスタムパッチベースラインは使われません そのため、デフォルトの設定を変更したいのですが、数年前にデフォルトの設定変更をする設定がAWSコンソールから消えました

Cloudshellを使った根本的な解決法と、コンソールのGUIだけで対応する暫定的な解決法の2つがあります 基本的には前者で事足りますが、一応後者も記載します

前提条件

前提として、カスタムベースラインを作成済であることとします

手順

① CloudShell を使ったデフォルトパッチベースラインの変更

手順

Cloudshellを開きます 以下のコマンドを入力します デフォルトのパッチベースラインを確認するコマンドです

aws ssm get-default-patch-baseline --operating-system "REDHAT_ENTERPRISE_LINUX"

実行すると、例えば次のような出力があります

{
    "BaselineId": "arn:aws:ssm:ap-northeast-1:【アカウントID】:patchbaseline/pb-0adf5cb7136a2984d",
    "OperatingSystem": "REDHAT_ENTERPRISE_LINUX"
}

上記より、デフォルトのパッチベースラインが「pb-0adf5cb7136a2984d」であることがわかります パッチマネージャーを確認すると、「pb-0adf5cb7136a2984d」はAWS標準のOSのデフォルトのベースラインでした image.png

これだと除外設定が反映されていないので、以下コマンドを入力します デフォルトのパッチベースラインを変更するコマンドです

aws ssm register-default-patch-baseline --baseline-id 【変更先ベースラインID】

実行すると次のような出力があります

{
    "BaselineId": "【変更先ベースラインID】"
}

続いて再度デフォルトのパッチベースラインを確認します

aws ssm get-default-patch-baseline --operating-system "REDHAT_ENTERPRISE_LINUX"

実行すると、出力は次のようになっているはずです

{
    "BaselineId": "【変更先ベースラインID】",
    "OperatingSystem": "REDHAT_ENTERPRISE_LINUX"
}

デフォルトのパッチベースラインが変更されました 以上で完了です AWS-RunPatchBaselineを実行すると、変更した デフォルトのパッチベースラインが利用されます

② GUI(Quick Setup)だけで対応する暫定的な方法

下記の方法は、パッチスキャン/インストールを任意の間隔で任意のパッチベースラインで行う設定です そのため、設定後は任意のタイミングで自動実行されてしまいます そうしたくない場合、パッチスキャン/インストールをしたいタイミングの度に作成しなおす必要があります Cloudshellを使いたくない場合は仕方ないですが、基本的にはCloudshellでデフォルトを変更することを推奨します メンテナンスウインドウみたいなカンジです

前提

対象のEC2インスタンスにSSM Agentがインストールされ動作している Systems Managerと通信するための適切なIAMロールがアタッチされている 対象EC2インスタンスが利用リージョンのSystems Managerエンドポイントと通信可能である

手順

Systems Manager>Quick Setupを開きます image.png

Patch Managerの作成をクリックします image.png

各種項目を入力します 特に以下項目に注意して入力してください そのほかは良い様に設定してください

各項目入力後、作成をクリックし構築が完了すると、指定した時間にスキャン/インストールが行われます

おわり