share facebook facebook twitter menu hatena pocket slack

2014.10.16 THU

Auto Scaleしたインスタンスに侵入防御ルールを適用する

吉田 浩和

WRITTEN BY 吉田 浩和

こんにちわ、cloudpackひろかずです。

前回(Auto ScaleしたインスタンスをDeep Securityで管理する)に続き、
Auto Scaleしたインスタンスに侵入防御(DPI)ルールを適用する手法について、一筆書きます。

前提

参照情報

マニュアルの72頁になります。

工程

  1. Auto Scaleしたコンピュータへ適用するポリシーを作成
  2. Launch Configrationsの適用
  3. 動作確認

1.Auto Scaleしたコンピュータへ適用するポリシーを作成

Auto Scaleしたコンピュータへ適用する侵入防御ルールを定義したポリシーを作成します。
まず、Deep Security Managerのコンピュータ画面にて、Auto Scale対象のコンピュータを右クリックして、「推奨設定の検索」をクリックします。
Auto Scale したインスタンス用ポリシーを作成する (1)

ポリシー画面にて左側ペインの「ポリシー」を選択し、「新規」→「新規ポリシー」を選択します。
Auto Scale したインスタンス用ポリシーを作成する (2)

ポリシー名は、「AutoScale」にします。
Auto Scale したインスタンス用ポリシーを作成する (3)

先ほど実行した推奨設定をベースにするので、ここは「はい」を選択します。
Auto Scale したインスタンス用ポリシーを作成する (4)

先ほど推奨設定を実行したコンピュータを選択します。
Auto Scale したインスタンス用ポリシーを作成する (5)

デフォルトでは全ての項目が選択されていますが、適宜選別します。
今回は、侵入防御ルールの自動適用をフォーカスしているので「推奨されるアプリケーションの種類と侵入防御ルール」を選択します。
Auto Scale したインスタンス用ポリシーを作成する (6)

適用内容が表示されるので、「完了」します。
Auto Scale したインスタンス用ポリシーを作成する (7)

ポリシーが作成されました。
zAuto Scale したインスタンス用ポリシーを作成する (8)

ポリシーの詳細画面が表示されるので、侵入防御を「オン」に設定します。
zAuto Scale したインスタンス用ポリシーを作成する (9)

2.Launch Configrationsの適用

ここでは、前回作成したLaunch Configrations の設定を修正して、Auto Scaleしたコンピュータに先ほど作成したポリシーを適用する設定にします。

前回同様、Deep Security Manager画面右上の「ヘルプ」から「インストールスクリプト」を選択します。
EC2 の Launch Configurations を適用する (1)

「Agentを自動的に有効化」を選択して、「ポリシー」に先ほど作成したポリシーを指定します。
スクリプトが生成されるので、控えておきます。
EC2 の Launch Configurations を適用する (2)

次は、AWSコンソールのLaunch Configrationsから、前回作成したLaunch Configrationsを選択して、「Copy launch configration」ボタンをクリックします。
EC2 の Launch Configurations を適用する (3)

Launch configration detailsの「Edit detailes」を選択します。
EC2 の Launch Configurations を適用する (4)

Name欄を適宜設定して、User data欄に先ほど控えておいたインストールスクリプトに置き換えます。
他に調整する箇所がないので「Skip to review」を選択して、Launch configrationを作成します。
EC2 の Launch Configurations を適用する (5)

作成できましたね。
EC2 の Launch Configurations を適用する (6)

次は、Auto Scaling Group画面にて、Launch configrationを先ほど作成したものに変更して「Save」します。
EC2 の Launch Configurations を適用する (7)

3.動作確認

さて、試してみましょう。
コンピュータ画面から、Auto Scaleで現在稼働中のコンピュータをダブルクリックします。
Auto Scaleで現在稼働中のコンピュータは侵入防御が「オフ」になっており、侵入防御ルールが適用されていませんね。
Auto Scale したインスタンスのポリシー適用後、動作確認する (1)

稼働中のコンピュータをTerminateします。
Auto Scale したインスタンスのポリシー適用後、動作確認する (2)

Auto Scale機能で自動起動されたコンピュータには侵入防御機能が「オン」になっており、侵入防御ルールが適用されていますね。
・・・ですがエラーになってしまってます。
Auto Scale したインスタンスのポリシー適用後、動作確認する (3)

エラーの内容を見てみましょう。
「設定のアップデートの失敗(Agent/Applianceエラー)」のリンクをクリックします。
説明欄にエラー内容が全文表示されていますので、確認します。
Auto Scale したインスタンスのポリシー適用後、動作確認する (4)

2つ目のエラーを見ると、HTTP:endof-POST-uriqueryが見つからないと言っています。

Agent/Applianceの次のエラーにより、処理を完了できません: Update failed - check agent events for cause。

Agent/Applianceイベント:

時刻: 2014-09-17 08:31:57
レベル: エラー
イベントID: 3004
イベント: 外部コマンド出力の読み取り不能
説明: 外部コマンド「/opt/ds_agent/dsc」の出力を読み取れません: Exit status 0x100

時刻: 2014-09-17 08:31:57
レベル: エラー
イベントID: 2085
イベント: セキュリティ設定エラー
説明: 設定のコンパイルでエラーが発生しました:

can't open preload file - ignored preload.tbf
65: note: unrecognised system setting
83: note: adding preset log policy 0
83: note: adding preset log policy 1
83: note: adding preset log policy 2
83: note: adding preset log policy 3
83: note: adding preset log policy 4
83: note: adding preset log policy 5
83: note: adding preset log policy 6
1391: error: filter="Perl Locale::Maketext Remote Command Execution Vulnerabilities" rule=4: event name 'HTTP:endof-POST-uriquery' not defined
1 errors during parsing

エラー内容から検索すると、以下情報が出てきました。
「セキュリティ設定エラー – 設定のコンパイルでエラーが発生しました」が発生する
どうやら、侵入防御ルールの依存関係で、必要なルールが適用されていない時に発生するエラーのようです。

FAQの内容に従って確認してみましたが、手順のように必要なルールは表示できませんでした。
結局、サポートに問い合わせて1000128 - HTTP Protocol Decodingという侵入防御ルールが該当することが分かりました。
早速、適用してみましょう。

ポリシー画面から、先ほど作成したポリシー「AutoScale」をダブルクリックします。
左側ペインの「侵入防御」を選択して、「割り当て/割り当て解除」を選択します。
Auto Scale したインスタンスのポリシー適用後、動作確認する (5)

「1000128」を検索し、チェックして保存します。
Auto Scale したインスタンスのポリシー適用後、動作確認する (6)

Auto Scale機能で自動起動されたコンピュータのステータスを見るとエラーが消えていますね。
Auto Scale したインスタンスのポリシー適用後、動作確認する (7)

お疲れ様でした。

元記事はこちらです。
Auto Scaleしたインスタンスに侵入防御ルールを適用する

吉田 浩和

吉田 浩和

cloudpackの中の人。 securitypackと運用、保守を中心に、構築もやってます。 エンタープライズ系SIerを経て、クラウドの最前線で奮闘の日々を送ってます。