web-dev-qa-db-ja.com

Suricata、Docker、およびホストネットワーク:Docker以外のトラフィックはありません

SuricataとEveboxを含むDockerコンテナーを作成しました。私のホストでは、次のことから始めます。

ifconfig enp2s0:1 192.168.0.111 netmask 255.255.255.0 up

これにより、既存のインターフェイスから新しいインターフェイスが設定されます。次に、Dockerコンテナを次のように実行します。

docker run --privileged --network Host --cap-add NET_ADMIN --cap-add NET_RAW --rm suricata-evebox

次に、次のコマンドでsuricata/eveboxを起動します。

mkdir -p /data/evebox
suricata -i enp2s0:1 -D
evebox -v -D /data/evebox --datastore sqlite --input /var/log/suricata/eve.json

マシンからcurl http://testmyids.comを実行する場合のシナリオは次のとおりです。

  • Dockerコンテナ内:DETECTS ALERT
  • Dockerホスト上:検出アラート
  • ローカルネットワーク上のマシンの場合:表示されない

ホストとコンテナのトラフィックだけでなく、ネットワーク上を移動するすべてのトラフィックをSuricataに表示させる方法はありますか?

1
Fmstrat

まず、ルーター自体または監視したい任意のマシンに設定できる解決策を次に示します。 https://superuser.com/questions/853077/iptables-duplicate-traffic-to-another -ip

ユースケースでそれが不可能な場合は、ルーターとすべてのクライアントの間に設定できるスイッチの形で別のオプションがあります。スイッチはポートミラーリングをサポートする必要があります。次に、別のNICをids/docker Hostに追加します。これにより、ミラーリングされたスイッチの「WAN」ポートからすべてのトラフィックを受信し、suricataコンテナに渡すことができます。

1
Nico I