SSMアップデート

SSMパッケージアップデート

FutureVulsと連携設定するとSSM(AWS Systems Manager)経由でEC2のパッケージアップデートができるようになります。 タスク単位でFutureVulsの画面からアップデート可能です。

対象環境

  • Vulsスキャン」でFutureVulsに登録されたサーバのみ対象です。
  • 対象OSは「対応環境」をご参照ください。

SSM連携パッケージアップデートの設定

事前に「AWS認証設定」を完了させてください。

AWS EC2インスタンスに対する設定

SSM連携したい各EC2インスタンスに対してこの操作をする必要があります。

ロールの作成と付与

  • AmazonSSMManagedInstanceCore のポリシーが付与されたIAMロールを作成します。(参考
  • 作成したIAMロールを対象のEC2インスタンスに付与します

SSMエージェントの設定と登録

  • 対象のAWS環境に合わせてSSMエージェントをインストールします。(参考
    例(AmazonLinuxの場合):sudo yum -y install amazon-ssm-agent

SSMの登録確認

  • AWSの Systems Manager > フリートマネージャー > マネージドノード に上記のインスタンスが登録されていることを確認します。

AWSアカウントに対する設定

SSM連携したいEC2があるAWSアカウントに対して行う必要がある設定です。

FutureVuls連携設定が完了しているか確認する

既に他のグループのSSM連携等で設定済みの場合は、簡単に連携できます。

  • FutureVulsコンソールで グループ設定 > 外部連携 > AWS に移動し、SSM経由パッケージアップデートの「設定」ボタンをクリックします image
  • 表示されるコマンドを無視して「次へ」ボタンを押します

SSM経由パッケージアップデートが「設定済」になっていれば設定は完了です。エラーが表示される場合は、以下の手順に従って設定してください。

SSMドキュメントを作成する環境を準備

FutureVulsがSSMを使ってEC2インスタンスのOSパッケージをアップデートするために、まずSSMドキュメントを作成する環境を準備します。

  • ヘルプ」を参考に、任意の環境でAWS CLIをインストールします。
  • 上記環境で createDocumentdeleteDocument アクションを実行できるようにします。
    • 対象のAWSアカウントで上記アクションの権限をもつユーザで認証して操作する。(参考
    • もしくは、対象のAWSアカウント内のEC2インスタンスにこれらのポリシーを付与する。

SSMドキュメントを作成

  • FutureVulsコンソールで グループ設定 > 外部連携 > AWS に移動し、SSM経由パッケージアップデートの「設定」ボタンをクリックします。 image

  • 表示されたコマンドを上記の準備した環境で実行します。 image

  • 実行後、「次へ」ボタンを押します。SSM経由パッケージアップデートが「設定済」になっていれば設定は完了です。 image

SSMとの自動連携

上記のSSM連携の設定後に、対象のサーバでスキャナが実行されると、各サーバがSSM連携可能かどうかの情報がFutureVulsに取り込まれます。
サーバリストの SSM連携 カラムが以下のように になっていれば設定完了です。 image

AWS連携の設定後にSSMで管理するサーバを追加した場合は、スキャンのタイミングでFutureVulsに自動連携されます。

SSMパッケージアップデートの実行

  • タスクタブ、または サーバタブ > 脆弱性×タスクタブ から、パッケージアップデートをしたいタスクを選択し、「SSMアップデート」ボタンをクリックします。 image

  • 対象のサーバ、パッケージと実行されるコマンドを確認します。 image

  • DRY RUN モードで「OK」ボタンを押すとテストアップデートが実行される。結果は AWSタブ > SSMコマンド履歴 から確認できます。

  • SSMコマンドの実行履歴や実行ステータスは AWSタブ > SSMコマンド履歴 から確認できます。

  • SSMパッケージアップデート実行に関するステータスの種類は以下の通りです。

    • RUNNING : テストアップデートの実行中です。
    • READY : 依存関係の解消が確認でき、実際のアップデートが実行可能です。
    • SUCCESS :実際にアップデートが完了しました。
    • ERROR : テストアップデートなどに失敗しました。
      image
  • テストアップデート完了後にステータスが READY になっているタスクは、テスト実行結果の画面から実際にアップデートが可能です。
    実行時に新たなSSMコマンドが発行され、アップデートに成功した場合はステータスが SUCCESS になります。 image

SSMパッケージアップデートが失敗した場合

SSMコマンド詳細履歴に、次のような ERROR MESSAGE が表示された場合は、以下の手順に従って結果を確認してください。

failed-ssm

  • エラー原因詳細の確認方法
    • 対象のAWSアカウントにログインして AWS Systems Manager > Run Command > コマンド履歴 へと移動する
    • コマンド履歴画面で コマンドID を検索する