AWS Systems Manager(SSM)の SSM エージェントを Windows にインストールおよびその他 Systems Manager から認識されるようにする設定手順を解説します。
先日は Linux への SSM エージェントのインストールを解説しましたが、今回は Windows の解説となります。
【AWS】【SSM】Systems Manager の SSM エージェントインストールおよびその他 Systems Manager から認識されるようにする設定手順【Linux】
以下、Systems Manager 関連の記事です。
【AWS】Systems Manager の基本(システム運用)
【AWS】Systems Manager で EC2 インスタンスを自動起動・自動停止する(オートメーション)
SSM(Systems Manager)で EC2 インスタンスが利用できるようにする手順【Windows】
SSM(Systems Manager)で EC2 インスタンスを利用するためには環境設定(SSM エージェントのインストールやその他権限の設定)が必要になります。
Linux の場合と、Windows の場合で環境の設定方法が異なります。
実は Windows にはデフォルトで SSM エージェントがインストールされている
実は SSM エージェント は、次の Amazon マシンイメージ (AMI) にデフォルトで事前インストールされています。
- Windows Server 2016 年 11 月以降に公開された 2003-2012 R2 AMI
- Windows Server 2013 および 2016
- Amazon Linux
- Amazon Linux 2
- Ubuntu Server 16.04
- Ubuntu Server 18.04
https://docs.aws.amazon.com/ja_jp/systems-manager/latest/userguide/ssm-agent.html
Windows 2012 の場合
Windows 2012 でも 2016年11月以降に公開された AMI にはすでにインストールがされています。
(意外と早くから対応しています)
「スタート」をクリックします。
「コントロールパネル」をクリックします。
「プログラムと機能」をクリックします。
すでに「Amazon SSM Agent」がインストールされています。
SSM エージェントが起動しているか確認
SSM エージェントが起動しているか確認します。
「コントロールパネル」より「管理ツール」をクリックします。
「サービス」をクリックします。
下図のように自動起動しています。
SSM エージェントが起動していても権限がなければ使用できない
上記で Windows 2012 上で SSM エージェントが起動していることが確認できました。
しかし SSM(Systems Manager)上からは表示されません。
理由は、SSM エージェントがインストールされていても SSM がインスタンスにアクセスする権限が割り当てられていないためとなります。
デフォルトでは SSM(Systems Manager)にはインスタンスでアクションを実行する権限がありません。
そのため、別途 IAM ロールを割り当ててアクセスを許可する必要があります。
Systems Manager 用 IAM ロールの作成
次に Systems Manager から EC2 インスタンスにアクセスしてコントロールするためのロールを作成します。
Systems Manager 用の IAM ロールの作成
Systems Manager 用のロールを作成します。
AWS 管理コンソールより「サービス」–「セキュリティ、ID、およびコンプライアンス」–「IAM」をクリックします。
IAM ダッシュボードに移動したら左側ペインより「ロール」をクリックします。
「ロールの作成」ボタンをクリックします。
「信頼されたエンティティの種類を選択」で「AWS サービス」を選択し、「このロールを使用するサービスを選択」で「EC2」を選択し、「次にステップ:アクセス権限」ボタンをクリックします。
「ポリシーのフィルタ」に「SSM」と入力し検索をして「AmazonEC2RoleforSSM」にチェックを入れて「次のステップ:タグ」ボタンをクリックします。
「タグの追加」で必要な場合はタグを作成して「次のステップ:確認」ボタンをクリックします。
確認画面で「ロール名(SSMAgentRoleforEC2)」を入力し「ロールの作成」ボタンをクリックします。
下図のようにロールが作成されていることを確認します。
【補足】Systems Manager で IAM ロールにアタッチできるポリシー一覧
Systems Manager で管理する EC2 インスタンス用の IAM ロールを作成しますが、IAM ロールにアタッチできる Systems Manager 関連のポリシー一覧を以下に記載します。
- AmazonEC2RoleforSSM ← Systems Manager 用のロールで Amazon EC2 のデフォルトポリシーです。(Default policy for Amazon EC2 Role for Simple Systems Manager service role.)
- AmazonSSMAutomationApproverAccess ← オートメーション(自動化)実行を表示し、承認を待っているオートメーションに承認決定を送信するためのアクセスを提供します。(Provides access to view automation executions and send approval decisions to automation waiting for approval.)
- AmazonSSMAutomationRole ← オートメーション(自動化)文書内で定義されたアクティビティーを実行するための EC2 オートメーション(自動化)サービスに対する許可を提供します。(Provides permissions for EC2 Automation service to execute activities defined within Automation documents)
- AmazonSSMDirectoryServiceAccess ← このポリシーにより、SSM エージェントは、管理対象インスタンスをドメインに参加させるために、ユーザーに代わってディレクトリサービスにアクセスできます。(This policy allows SSM Agent to access Directory Service on behalf of the customer for domain-join the managed instance.)
- AmazonSSMFullAccess ← Amazon SSMへのフルアクセスを提供します。(Provides full access to Amazon SSM.)
- AmazonSSMMaintenanceWindowRole ← EC2 メンテナンスウィンドウで使用されるサービスロールです。(Service Role to be used for EC2 Maintenance Window)
- AmazonSSMManagedInstanceCore ← AWS Systems Manager サービスコア機能を有効にするための Amazon EC2 ロールのポリシーです。(The policy for Amazon EC2 Role to enable AWS Systems Manager service core functionality.)
- AmazonSSMReadOnlyAccess ← Amazon SSMへの読み取り専用アクセスを提供します。(Provides read only access to Amazon SSM.)
- AmazonSSMServiceRolePolicy ← Amazon SSMによって管理または使用されているAWSリソースへのアクセスを提供します。(Provides access to AWS Resources managed or used by Amazon SSM)
- AWSResourceAccessManagerFullAccess ← AWS Resource Access Managerへのフルアクセスを提供します。(
Provides full access to AWS Resource Access Manager)
- AWSResourceAccessManagerServiceRolePolicy ← 顧客の組織構造への読み取り専用 AWS Resource Access Managerアクセスを含むポリシーです。 ロールを自己削除するための IAM 権限も含まれています。(Policy containing Read-only AWS Resource Access Manager access to customers’ Organizations structure. It also contains IAM permissions to self-delete the role.)
EC2 インスタンスへの IAM ロールの割り当て
IAM ロールを作成したら、ロールを EC2 インスタンスへ割り当てます。
AWS 管理コンソールより「サービス」–「コンピューティング」–「EC2」をクリックします。
対象の EC2 インスタンスを選択し、「アクション」–「インスタンスの設定」–「IAM ロールの割り当て/置換」をクリックします。
「IAM ロールの割り当て/置換」画面で先ほど作成した IAM ロールを選択します。
IAM ロール(SSMFullAccessRole)を選択したら「適用」ボタンをクリックします。
以下のように「IAM ロールオペレーションに成功しました」のメッセージが表示されることを確認します。
マネージドインスタンスの確認
EC2 インスタンスが Systems Manager の管理下に入っていることを確認します。
AWS 管理コンソールより「サービス」–「管理とガバナンス」–「Systems Manager」をクリックします。
「Systems Manager」のダッシュボードより、左側ペインの「マネージドインスタンス」をクリックします。
下図のようにマネージドインスタンス一覧に目的のインスタンスが表示されていることを確認します。
コメント