DeepSecurity ハマったポイント AWS CloudFormation から作成
あるお仕事で、EC2 に 試験的に DeepSecurity を入れることになり、
色々試行錯誤した結果、やっと入れられたので
ここに書いておきます。
間違いや、認識違い等があれば、ご指摘いただければ幸いです。
あくまで私の学習したメモ書きなので…
誰かの力になれれば幸いです。
前提条件
ちなみに私が今回挑んだ DeepSecurity の商品は
-
AWS クラウドでの Trend Micro Deep Security(従量課金型)
です。
導入する手段は
- CloudFormation
を使いました。(ワンボタン万歳)
公式ドキュメントを参考に入れれば、DeepSecurity Manager にアクセス
するところまでは何とかいけると思います。(情報も丁寧に載ってるので)
本題
問題は
ステップ 5.Trend Micro Deep Security Agent を新しいインスタンスにデプロイする
ここです。
上記のリンクとは別に再度別のサイトに飛ばされます。(全英語)
help.deepsecurity.trendmicro.com
Google先生に聞くと、直訳された日本語のページも見つかると思いますので
お好みで。(私は Chrome ブラウザの翻訳機能とDeepLを使用)
このページから、いきなり情報量があふれ、手順書の導線がなくなり、何を取捨選択しなければならないかがわからなくなります。
ドラクエ3で言う、船を手に入れた後、どこ行けば良いのかわからなくて途方に暮れそうになる感覚に似ていますね
基本的にごちゃごちゃ書いてありますが、
一切見ないで良いです。
むしろ Agent を Install するという観点ではこのサイト飛ばなくて良いです。
(ホントかどうかはわかりませんが触っていて私はそう思いました。)
IAMロール割り当ててくれーとか、通信方法設定してくれーとか
色々書いてありますが、やらなくても良かったです。
必要な事は以下でした。
- Agent が 動作する EC2 の セキュリティグループ は 外に向かって443 を OPEN (OutBound)
Agent を Install する EC2 は 外に繋ぐ必要があります。
Install 自体は問題無いのですが、その後のスキャンエンジンサーバ?(忘れた)なるものに繋ぎに行きたがるので SG の OutBound 443 を開けておく必要が有ります。 - スタック作成時に追加された DeepSecurity 用の SG (確か3つくらいあった)に対し、使用ポートを開放(443、4118、4120等)
筆者が作業中に都度必要なポートを追加していったのでもっとポートを開放しているかもしれませんが、ご了承ください。
上記HPには443と4118を開けてくださいと書いてありますが、それだけでは足りなかったです。 - DeepSecurity Manager にログインし、インストールスクリプトジェネレータを実行、出来たスクリプトを Agent を Install したい EC2 で実行
Agent を Install したいEC2 に SSH で接続し、スクリプトを実行する
(私は install.sh を作成し、その中に貼り付けて実行しました)
ここでライセンスが足りないという理由以外で失敗する場合は
DeepSecurity Manager の名前解決が出来てない可能性高いです。 DeepSecurity Manager が動いている Host のプライベードIP と ドメイン名を Agent を Install したい EC2 の Hosts ファイルに足してあげてください。多分 DeepSecurity 用の ELB が動いていて、その辺ごにょごにょ出来る人はそっちをいじってあげた方が良いです。
再度スクリプトを実行すると Install 済みとなってしまい、最後まで実行されてないようでとても気持ち悪かったので
$ sudo rpm -e ds_agent-20.0.0.-1337.amzn2.x86_64
を実行し、一度削除してから再度スクリプトを実施しました。
以上で無事に動作するようになりました。
何個もはまりポイントが有り、公式資料を読みあさって、ググりまくってここまで来ました。
私と同じはまりポイントで躓いている人が居なさそうだったのですが、一応書いておきます。
その他
ちなみに CloudFormation で作成すると RDS が 大きめのインスタンスで作成されるので費用が跳ね上がります。インスタンスタイプの変更が出来るので、
そんなに高負荷なサービスでなければ下げても良さそう。
EC2インスタンスもサイズが大きいので、ワンサイズだけ小さく出来るのかな?
結構ランニングコストがやばいです。私の場合は2台構成で冗長化されていたのを
片方落として ELB のターゲットからも外して節約してました。
DeepSecurity Manager の Console に警告出るけど、動作には特に問題がありませんでした。
DeepSecurity を 消すときは SG の参照関係を削除した後、スタックの削除できれいさっぱり消せます。AWSってすごい!
以上、私の作業した証をここに残しておきます。
誰かの役に立ちますように。