こんにちは。技術2課の芳賀です。
最近、Amazon Linux2のEC2に対してDSaaSを導入する機会があったので、その際に実施した内容を残しておきたいと思います。
DSaaSですが、AWS MarketplaceでDSaaSのライセンス契約をすることで個人でも気軽に使用することができます。
以前、弊社の寺田がまとめていましたので、こちらを参考に検証環境を構築しました。
AWS Marketplace で Trend Micro Deep Security as a Service のライセンスを契約して、検証環境で使えるようにしてみる
今回の内容としては以下になります。
- Deep Security Managerに AWSアカウントを追加
- Amazon Linux2にセッションマネージャでDeep Security Agentをインストール
- Amazon Linux2にランコマンドでDeep Security Agentをインストール
※OSによってはサポートされていないバージョンのエージェントがインストールされる可能性があるため、確実に希望するバージョンをインストールしたい場合は、今回の方法ではなくバージョン毎のインストーラを使用することをお勧めします。こちらにOS毎にサポートされているDeep Security Agentがまとめられています。
1.Deep Security ManagerにAWSアカウントを追加
Deep Security Manager(以降DSM)にAWSアカウントを追加することで、そのアカウントに紐づくEC2の一覧を表示することができます。
まず、該当のAWSアカウントにて、AWSマネージメントコンソールへログインしておきます。
※後ほど、DSMとの連携のためCloudFormationにてIAMロールを作成することになります。
Image may be NSFW.
Clik here to view.DSMにログインします。
「コンピュータ」⇒「+追加」⇒「AWSアカウントの追加」を選択します。
Image may be NSFW.
Clik here to view.別ウインドウでウィザードが表示されます。
セットアップタイプは「クイック」を選び、「次へ」を選択します。
Image may be NSFW.
Clik here to view.アカウントのセットアップでは、特に何もせず「次へ」を選択します。
Image may be NSFW.
Clik here to view.ログインしていたAWSアカウントにてCloudFormationが起動します。
特に何も変更せず「次へ」を選択します。
Image may be NSFW.
Clik here to view.
特に何も変更せず「次へ」を選択します。
Image may be NSFW.
Clik here to view.特に何も変更せず「次へ」を選択します。
Image may be NSFW.
Clik here to view.IAMリソースが作成されることを承認するにチェックを入れ、「スタックの作成」を選択します。
Image may be NSFW.
Clik here to view.スタックのステータスが「CREATE_COMPLETE」になるまで暫く待ちます。
Image may be NSFW.
Clik here to view.DSMの「コンピュータ」を確認すると、該当のAWSアカウントに構築されたEC2の一覧が表示されます。
Image may be NSFW.
Clik here to view.
2.Amazon Linux2にセッションマネージャでDeep Security Agentをインストール
AmazonLinux2に対して、AWS Systems ManagerのセッションマネージャでDeep Security Agent(以降DSA)をインストールしてみます。
DSMの「サポート情報▼」より、「インストールスクリプト」を選択します。
Image may be NSFW.
Clik here to view.別ウィンドウが表示されます。
ここからDSAをインストールするためのスクリプトをダウンロードすることができます。
今回はAmazonLinux2にインストールするので以下を選択していきます。
プラットフォーム | Linux版Agentのインストール |
セキュリティポリシー | Base Policy > Linux Server (指定したいカスタムポリシーがあればここで選択) |
コンピュータグループ | コンピュータ(デフォルト) |
Relayグループ | プライマリテナントのRelayグループ(デフォルト) |
Deep Security Managerへの接続に使用するプロキシ | プロキシを選択(デフォルト、このままで良い) |
Relayへの接続に使用するプロキシ | プロキシを選択(デフォルト、このままで良い) |
Image may be NSFW.
Clik here to view.下にスクロールすると、実行するスクリプトが確認できます。
ここでは「ファイルに保存」を選択し、スクリプトファイルをダウンロードします。
「AgentDeploymentScript.sh」というファイルがダウンロードされます。
Image may be NSFW.
Clik here to view.
「AgentDeploymentScript.sh」をもとに、セッションマネージャを使用してDSAをインストールしていきます。
AWSマネージメントコンソールにログインし、AWS Systems Managerのサービス画面を起動します。
「インスタンスとノード」から「セッションマネージャー」を選択します。
※セッションマネージャを使用するためには、EC2に事前に「AmazonSSMManagedInstanceCore」のポリシーを付与したロールをアタッチしておく必要があります。後述するランコマンドでも同様です。
インストールしたいEC2を選択し、「セッションの開始」を選択します。
Image may be NSFW.
Clik here to view.
ログイン出来たらrootユーザになります。
sudo su -
任意のフォルダに移動し、スクリプトファイルを作成します。
ここではダウンロードしたファイル名と同じ「AgentDeploymentScript.sh」としました。
cd /tmp vi AgentDeploymentScript.sh
ダウンロードしたスクリプトファイルの内容を書き込み、スクリプトファイルを実行します。
bash AgentDeploymentScript.sh
暫く待ち「Command session completed.」が表示されればインストール完了です。
Image may be NSFW.
Clik here to view.DSMにログインしてコンピュータを確認すると、対象インスタンスのステータスが「管理対象(オンライン)」になりました。
Image may be NSFW.
Clik here to view.対象インスタンスの詳細画面を確認すると、有効にしている機能毎にステータスを確認することができます。
セッションマネージャで問題なくインストールできました。
Image may be NSFW.
Clik here to view.
3.Amazon Linux2にコマンドラインでDeep Security Agentをインストール
AmazonLinux2に対して、AWS Systems ManagerのランコマンドでDSAをインストールしてみます。
AWS Systems Managerのサービス画面を起動し、「インスタンスとノード」から「コマンドの実行」を選択します。
ランコマンドのドキュメントから「AWS-RunShellScript」を選択します。
※以降今回は、明示した操作以外デフォルトのまま進めます
Image may be NSFW.
Clik here to view.コマンドのパラメータには、DSMからダウンロードしたスクリプトの内容を貼り付けます。
Image may be NSFW.
Clik here to view.ターゲットは「Choose instances manually」を選択し、DSAのインストールする対象となるEC2インスタンスを選択します。
Image may be NSFW.
Clik here to view.コマンドが失敗した場合などの内容を確認したい場合は「CloudWatch出力」チェックを入れます。
ここではデフォルトのまま「実行」を選択します。
Image may be NSFW.
Clik here to view.コマンドが実行され、ステータスが「進行中」から「成功」になるまで暫く待ちます。
Image may be NSFW.
Clik here to view.ステータスが「成功」になりました。
Image may be NSFW.
Clik here to view.DSMにログインしてコンピュータを確認すると、対象インスタンスのステータスが「管理対象(オンライン)」になりました。
Image may be NSFW.
Clik here to view.セッションマネージャの時と同様、対象インスタンスの詳細画面からもステータスが正常であることを確認できます。
ランコマンドで問題なくインストールできました。
Image may be NSFW.
Clik here to view.
最後に
DSaaSのようなサービスを、検証したいときにささっと使えるAWS Marketplaceはとても良いですね。Marketplaceからライセンスを契約したDSaaSの場合、起動した分の時間課金になるのでとてもリーズナブルです。
対象のインスタンスに直接ログインせずにDSAをインストールすることができた、セッションマネージャやランコマンドについても、改めて使ってみて便利な機能だと感じました。活用できる場があればどんどん使っていきたいと思います。