Systems Manager(SSM) 新統合の「診断および是正」機能を使いながら、EC2インスタンスをSSM管理下にしてみた

Systems Manager(SSM) 新統合の「診断および是正」機能を使いながら、EC2インスタンスをSSM管理下にしてみた

Clock Icon2025.01.17

2024/11 に Systems Manager(SSM) に新しい統合機能が登場しています。 この統合機能により AWSアカウント横断で SSMマネージドノードの把握が容易になりました。

https://dev.classmethod.jp/articles/aws-ssm-new-experience-is-very-good/

そして、新しい統合機能の1要素に [診断および是正 (Diagnose and remediate)] があります。

image

「SSM管理になっていないノード」についての情報が確認でき、 管理になっていない理由の確認や是正が可能です。

今回はこの「診断および是正」機能を実際に試してみます。

はじめにまとめ(やったこと)

現時点(2025/01) では以下是正が可能です。

是正項目 利用するランブック 公式ドキュメント
VPC DNS設定の不備を修正する AWS-RemediateSSMAgentVPCAttributes Problem category: DNS or DNS host name configuration
VPCエンドポイントを作成する AWS-RemediateSSMAgentVPCEndpoints Problem category: VPC endpoint configuration
セキュリティグループの不備を修正する AWS-RemediateSSMAgentHTTPSAccess Problem category: Security group configuration and HTTPS communications

これらのランブックを試すために、 以下のような「EC2インスタンスがSSM管理下になっていない環境」から是正を開始しました。

sc_2025-01-17_07-32-31_32036
EC2インスタンスがSSM管理下になっていない環境

具体的には以下ステップを実施して、 EC2インスタンスをSSM管理下としました。

  • #1: VPC DNS設定の更新 by SSM新統合の是正機能
  • #2: VPCエンドポイントの作成 by SSM新統合の是正機能
  • #3: セキュリティグループの設定 by SSM新統合の是正機能
  • #4: IAMロールの付与 by 手動

以降で各ステップの実施内容を説明します。

#1: VPC DNS設定の更新(AWS-RemediateSSMAgentVPCAttributes)

SSMコンソールの [Diagnose and remediate] にて [新しい診断を実行] を選択することで、 SSM管理下になっていないEC2インスタンスの診断が走ります。

sc_2025-01-17_07-39-17_21591

はじめの診断では「無効にされたVPC DNSサポート」 および「VPCエンドポイントがありません」の 2つの問題が検出されました。 「無効にされたVPC DNSサポート」のレコメンデーションを選択します。

sc_2025-01-15_09-19-21_28686

レコメンデーションではランブック(AWS-RemediateSSMAgentVPCAttributes)と公式ドキュメントへのリンクが案内されます。 公式ドキュメントは以下ページです。

[ランブックを表示] を選択すると、ランブック実行の設定/確認画面が表示されます。 是正を適用するターゲット(AWSアカウント)とリージョンを選択できます。 今回はすべてのアカウント、すべてのリージョンで [実行] しました。

sc_2025-01-15_09-20-07_12272

実行に成功すると以下のようなマネジメントコンソール通知が表示されます。

sc_2025-01-15_09-38-45_29710

対象のVPC設定を確認すると、無効化していたDNS設定が更新されていました。

sc_2025-01-15_09-23-32_28603

sc_2025-01-17_08-11-39_22604
ここまでの是正まとめ

#2: VPCエンドポイントの作成(AWS-RemediateSSMAgentVPCEndpoints)

もう一度 [新しい診断を実行] します。 「VPCエンドポイントがありません」問題のみになりました。

sc_2025-01-15_09-26-11_30138

公式ドキュメントへのリンクは以下になります。

ランブック(AWS-RemediateSSMAgentVPCEndpoints)の詳細画面を表示し、 同様に [実行] していきます。

sc_2025-01-15_09-27-25_29589
実行プレビューでエラーが出ていますが気にせずに...

実行後にVPCエンドポイントを確認すると、 3つのVPCエンドポイントが作成されていました。

sc_2025-01-15_09-31-58_7796

  • com.amazonaws.ap-northeast-1.ssm
  • com.amazonaws.ap-northeast-1.ec2messages
  • com.amazonaws.ap-northeast-1.ssmmessages

sc_2025-01-17_08-19-44_19813
ここまでの是正まとめ

#3: セキュリティグループの設定(AWS-RemediateSSMAgentHTTPSAccess)

もう一度 [新しい診断を実行] します。 今度は「誤って設定されたセキュリティグループ」問題が新たに出てきました。

sc_2025-01-15_09-35-23_24807

公式ドキュメントへのリンクは以下になります。

ランブック(AWS-RemediateSSMAgentHTTPSAccess)の詳細画面を表示し、 同様に [実行] していきます。

sc_2025-01-15_09-35-46_29606

実行後にEC2のセキュリティグループを確認します。 もともとアウトバウントルールをすべて削除していたのですが、 「VPCエンドポイント セキュリティグループへのHTTPSを許可」ルールが付与されていました。

sc_2025-01-15_09-41-45_3459

sc_2025-01-17_08-32-38_7021
ここまでの是正まとめ

#4: IAMロールの付与(手動)

もう一度 [新しい診断を実行] します。 次は「未診断のエラー」となり、 Troubleshooting SSM Agent の案内のみとなりました。

sc_2025-01-15_09-42-26_18548

SSM管理下にするには EC2インスタンスに適切な許可を与える必要があります。 対象のEC2インスタンスに「AmazonSSMManagedInstanceCore 権限を持つIAMロール」 を手動で付与しました。

sc_2025-01-15_09-45-23_29797

その後、再度診断を実行します。 以下のように無事、マネージドインスタンスになりました。

sc_2025-01-15_09-51-16_27907

sc_2025-01-17_08-47-35_4953
ここまでの是正まとめ

おわりに

SSM新統合の「診断および是正」機能を使ってみました。

VPCネットワーク周りの問題は一括で修正まで実施できるため便利です。 マルチアカウント環境で、管理しているVPC数が多い場合は恩恵が大きいです。

以上、参考になれば幸いです。

参考

https://docs.aws.amazon.com/systems-manager/latest/userguide/diagnose-and-remediate.html

https://dev.classmethod.jp/articles/aws-systems-manager-supports-default-host-management-configuration/

Share this article

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.