SSM連携スキャン

SSM連携スキャンについて

AWS連携を利用することで、FutureVulsの画面上からEC2インスタンスを選択し、オンデマンドでスキャンを行うことができます。これにより、通常はEC2インスタンスにSSH接続などをしてからスキャンを行う必要がありますが、その手順を簡略化できます。

対象環境

  • Vulsスキャン」でFutureVulsに登録されたサーバのみ対象です。
  • 対象OSは「対応環境」をご参照ください。
  • スキャナのバージョンがvuls v0.7.0以降のでのみSSMスキャンが可能です。もし古い場合は「スキャナのアップデート」を行ってください。

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インスタンスをスキャンするために、まず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

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

スキャン結果は SSMコマンド履歴グループ設定 > スキャン履歴 で確認できます。

SSMスキャンが失敗した場合

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

failed-ssm

  • SSMコマンドの結果(成否)が知りたい場合
    • 対象のAWSアカウントにログインして AWS Systems Manager > Run Command > コマンド履歴 へと移動する
    • コマンド履歴画面で コマンドID を検索する
  • コマンド実行の詳細なログを確認したい場合