Auto Scaling環境にCloud One Workload Securityのエージェントを導入してみた(DSAを有効化した状態でAMIを作成する編)

Auto Scalingによって作成したインスタンスをC1WSのDSAで自動的に保護するにはいくつかの方法があります。本記事では、DSAをインストールし有効化した状態のAMIからエージェントを有効化する方法をご紹介します。
2023.11.02

こんにちは!AWS事業本部のおつまみです。

みなさん、AWS Auto Scalingによって作成したインスタンスにCloud One Workload Security(以降C1WS)のエージェントを導入したいと思ったことはありますか?私はあります。

AWS Auto Scaling環境にエージェントを導入する方法は下記の公式Q&Aページで紹介されている以下の3通りの方法があります。

  1. インストールスクリプトでDSAをインストール/有効化する
  2. DSAをインストールし無効化した状態のAMIを作成する
  3. DSAをインストールし有効化した状態のAMIを作成する

今回は3の方法でエージェントを導入したので、その設定方法をご紹介します。

なぜ3を選択したか?

AMIの作成元になるマスターインスタンスでも、エージェントを有効にする必要があったためです。

今回以下のような環境にエージェントを導入する必要がありました。

このような環境の場合、AMIにもエージェントが有効化された状態で設定されています。
そのため、他の方法だと以下の理由から選択できませんでした。

  • 1. インストールスクリプトでDSAをインストール/有効化する
    • 既にエージェントがインストールされているためスクリプトでエラーが発生し、起動失敗扱いになる。
  • 2. DSAをインストールし無効化した状態のAMIを作成する
    • マスターインスタンス側でエージェントを無効化する必要があり、監視対象外になってしまう。

よって、今回は3の方法を選択しました。

やってみた

前提条件

C1WSのアカウントを作成、AWSアカウントとの連携、ポリシー作成方法は割愛します。
設定方法はこちらをご参考ください。

今回は以降の作成手順をご紹介します。

設定内容

以下の手順で設定を行います。

1.マスターインスタンスへのエージェント導入

C1WSコンソールより、[サポート情報]→[インストールスクリプト] を選択します。

プラットフォーム、適用するセキュリティポリシーを選択し、[クリップボードにコピー]選択します。

マスターインスタンスで直接スクリプトを実行、もしくはSSMのRunCommandからスクリプトを実行し、エージェントを導入します。

2.エージェント有効化時の自動的アップグレードを適用する

Auto Scalingで作成されたインスタンス内のエージェントが有効化された際に、DSAを自動的にバージョンにアップグレードするように設定します。
設定理由としては、AMIに導入されたエージェントが古いバージョンであることが原因で通信の失敗を防ぐためです。

C1WSコンソールで[管理]→[システム設定]→[Agent] の順に選択します。

Agentのアップグレードで、使用するプラットフォームに合わせた設定を選択し、[保存]を選択します。

3.イベントベースタスクの作成

今回肝となるイベントベースタスクの作成です。
イベントベースタスクとは、様々なイベントを検知し、条件に合致した際にエージェントの有効化やポリシーの適用などを実施できる機能です。

C1WSコンソールで[管理]→[イベントベースタスク]を開きます。

[新規]をクリックします。

タスク実行の契機となるイベントを選択します。今回はAutoScalingによる新規インスタンス起動のため、[コンピュータの作成(システムによる)]を選択します。

実行する操作を選択します。今回は[コンピュータ無効化]以外にチェックを入れ、割り当てたいポリシーを選択します。

一致条件を設定します。様々な条件を選択することができます。

今回は[クラウドインスタンスのメタデータ]を選択して、タグでインスタンス名が一致していることを条件にしたいと思います。

他にも、[クラウドインスタンスのセキュリティグループ名]を指定できたりします。

どのような条件が定義できるかは、公式ドキュメントをご確認ください。

設定内容を確認し、[完了]を選択します。

イベントタスクが新しく作成できていることが確認できます。

4.AMIの作成

AWSマネジメントコンソールからAMIを作成します。

AWS BackupやEC2 Image Builderなどで定期的にAMIを取得している場合は、割愛して下さい。

5.Auto Scaling実行

AMIからAuto Scalingでインスタンスを作成・起動します。
Auto Scalingの設定方法はこちらのブログをご参考ください。

今回イベントベースタスクでNameを条件にしたため、Auto Scaling Groupの設定で[新しいインスタンスにタグ付けする]でNameを指定できるように設定します。

インスタンス起動後、C1WSコンソールからエージェントが有効化されているか確認します。
無事管理対象になっており、イベントベースタスクで選択したポリシーが適用されていることを確認しました!

追記:推奨設定検索も実行しよう

ポリシーが適用できていて問題なさそうですが、このままだと推奨設定検索が適用されません。

推奨設定検索が実行されない場合、ポリシーで設定している侵入防御、変更監視、セキュリティログ監視のルールが適用されないことになります。
適用方法はこちらのブログをご参考ください。

さいごに

今回はAWS Auto Scalingによって作成したインスタンスにC1WSのエージェントを導入する方法をご紹介しました。

最後までお読みいただきありがとうございました!
どなたかのお役に立てれば幸いです。

以上、おつまみ(@AWS11077)でした!

参考資料

AWS Auto Scalingによって作成したインスタンスをDeep Security Agentで自動的に保護する方法(Cloud One - Workload Security)

コンピュータの追加または変更時にタスクを自動的に実行する(イベントベースのタスク) - Workload Security | Trend Micro Cloud One™ ドキュメント

Agentを有効化するときに自動的にアップグレードする

Cloud One Workload SecurityでEC2リソースのタグを使用してポリシーを自動的に割り当てしてみた