こんにちは、ひろかずです。
NATにDeep Security Agentをインストールする際の注意点です。
比較的有名なネタですが、Deep Security 9.5 / DSaaSでも同じことが起きますので、一筆書きます。
前提
- Deep Security Manager 9.5sp1、またはDSaaSの導入が完了していること。
- ライセンスを投入していること。
- NATサーバを用意していること。
参照情報
トレンドマイクロQ&Aページ
OS標準のファイアウォール機能の無効化について
知っておきたい注意点
結論から言うと、Deep Security Agentのds_filter
が起動すると、iptablesのルーティング情報を消してしまいます。
Deep Security Agentのds_filter
が起動する契機は、以下になります。
- ファイアウォール機能、侵入防御機能のいずれかをオンにする。
- ファイアウォール機能、侵入防御機能がオンになっている状態で、Deep Security Agentが起動する。
また、Deep Security Agentは、度々再起動しているようです。
回避策
参考資料に掲載されるとおり、iptablesに影響を及ぼさないファイルを作成しておく必要があります。
当該ファイルを作成するタイミングは、以下が考えられます。
- Deep Security Agentインストール前に作成しておく
- Deep Security Agentインストール後、ファイアウォール機能、侵入防御機能のいずれかを有効化する前に作成しておく
# touch /etc/use_dsa_with_iptables
復旧方法
上記回避策を実施する前に、Deep Security Agentをインストールし、ファイアウォール機能、侵入防御機能のいずれかを有効化した場合、以降の手順で状況を確認して、復旧させます。
1.状態確認
NATサーバを経由してインターネットに疎通できない場合、以下のように状況を確認します。
▽iptables 正常動作状態(例)
# /etc/rc.d/init.d/iptables status テーブル: nat Chain PREROUTING (policy ACCEPT) num target prot opt source destination Chain INPUT (policy ACCEPT) num target prot opt source destination Chain OUTPUT (policy ACCEPT) num target prot opt source destination Chain POSTROUTING (policy ACCEPT) num target prot opt source destination 1 LOG all -- 0.0.0.0/0 0.0.0.0/0 LOG flags 0 level 4 2 MASQUERADE all -- 0.0.0.0/0 0.0.0.0/0
▽iptables ルーティング情報消去時(例)
# /etc/rc.d/init.d/iptables status テーブル: filter Chain INPUT (policy ACCEPT) num target prot opt source destination Chain FORWARD (policy ACCEPT) num target prot opt source destination Chain OUTPUT (policy ACCEPT) num target prot opt source destination テーブル: nat Chain PREROUTING (policy ACCEPT) num target prot opt source destination Chain INPUT (policy ACCEPT) num target prot opt source destination Chain OUTPUT (policy ACCEPT) num target prot opt source destination Chain POSTROUTING (policy ACCEPT) num target prot opt source destination
2.復旧作業
iptablesに影響を及ぼさないファイルを作成しておく。
# touch /etc/use_dsa_with_iptables
iptablesを再起動する。
# /etc/rc.d/init.d/iptables restart iptables: ファイアウォールルールを消去中: [ OK ] iptables: チェインをポリシー ACCEPT へ設定中filter nat [ OK ] iptables: モジュールを取り外し中: [ OK ] iptables: ファイアウォールルールを適用中: [ OK ]
Deep Security Agnetを再起動する。
# /etc/init.d/ds_agent restart ds_agent を停止中: [ OK ] Unloading dsa_filter module... [ OK ] ds_agent を起動中: [ OK ]
3.動作確認
NATを経由してインターネットに出るサーバから、インターネットにcurlを実行して、内容が表示されれば、復旧です。
$ curl http://yahoo.co.jpYahoo! - 301 Moved Permanently