Private Subnet にある Windows Server を SSM パッチマネージャーを使ってアップデートする①

update

SSM パッチマネージャー

EC2 の運用保守を行っていると避けてはとおれないアップデート作業。手順書を書いて1台、1台ログインして、Windows Update なり、 Yum update をたたいて回る…。終わったらエビデンスをまとめ報告。Windows は WSUS があれば、まとめて自動でできたりしますね。Linux はどうでしょう。パッチを管理するソリューションってありましたっけ?あったら教えてください。

EC2 に WSUS をインストールして管理もいいですが、 AWS でサーバを展開しているのでしたら、SSM パッチマネージャーがお勧めです。 SSM パッチマネージャーは Winows / Linux に対応したパッチマネージャーサービスです。簡単に導入できるのでご紹介したいと思います。

この記事に書かれている事を実現するとどうなるか

Windows Server / Linux のパッチ管理が AWS を使ってできるようになります。

今回の構成

要件

おおよその組織では Windows Server は閉じたネットワーク ( Private Subnet ) に展開されていると思います。今回もそのような要件の下で構成してみました。ただ、完全に閉じた環境ですと、Microsoft Windows Update サイトにアクセスできずパッチをダウンロードできないので、パッチをプールする目的で WSUS サーバは Public Subnet に用意します。

  • Private Subnet にある Windows Server をアップデートする
  • Private Subnet からインターネットに出れない
  • Public Subnet に設置した WSUS サーバが存在する
  • AD には参加していない

構成図

前提条件

Private Subnet で SSM パッチマネージャーを実行するためにいくつか前提条件があります。

  • SSM にアクセスできる必要がある
  • S3 にアクセスできる必要がある
  • SSM エージェントがインストールされ実行中

2022年5月現在、Windows Server 2019 を起動するとデフォルトで SSM エージェントはインストールされています。それ以外の SSM と S3 にアクセスできるためのネットワークと権限はあらかじめ設定する必要があります。

VPC エンドポイントを用意する

用意するエンドポイントは SSM 用と S3 用になります。具体的には以下のエンドポイントを作成し、Private Subnet に関連付けして、パッチ適用対象の Windows Server 2019 からアクセスできるようにします。

  • com.amazonaws.${AWS::Region}.ssm
  • com.amazonaws.${AWS::Region}.ec2messages
  • com.amazonaws.${AWS::Region}.s3

S3 はゲートウェイ型でも良いです。SSM 関連のエンドポイントはネットワークインターフェースになりますので、Security Group も用意します。 Security Group はパッチ適用対象の Windows Server 2019 からアクセスできるように設定します。

Windows Server 2019 に割り当てる IAM ロールを用意する

SSM と S3 にアクセスできるポリシーを IAM ロールに付与します。S3 はフルアクセス権限まで必要ありませんが、検証のためマネージドポリシーを選択しています。本番環境で利用す場合は必ず権限を絞ったポリシーを作成してください。

  • AmazonSSMManagedInstanceCore
  • AmazonS3FullAccess

S3 へのアクセス権限については下記の公式サイト参照ください。
SSM Agent と AWS マネージド S3 バケットとの通信

構築は省略

前項の前提条件を踏まえて、構築を行います。ただ、難しい構成ではないため構築の説明は省いて次回、SSM パッチマネージャーの使い方から紹介したいと思います。

コメントを残す

メールアドレスが公開されることはありません。

CAPTCHA