web-dev-qa-db-ja.com

2つの仮想ネットワークを一緒にブリッジし、次にそれをインターネットにブリッジして仮想インラインIDS / IPSシステムを構築する方法を見つけようとしています

2つのvmware(サーバーまたはワークステーション、ワークステーション)またはvirtualboxネットワークをLinux IDS/IPSシステムと一緒に両方の仮想ネットワーク間で透過的にインライン化する方法を理解しようとしています。どうすればこれを達成できますか?仮想ネットワークに一緒にブリッジする方法は理解していますが、Linux仮想マシンを仮想ネットワークの間に配置し、トラフィックを強制的に透過ブリッジを通過させるにはどうすればよいですか?

私は次のようなものが欲しいです:

vmnet a
さまざまなvms
ホストオンリーネットワーク

---->

インラインLinuxボックス
vmnetインターネットにアクセスするためにここを通過することを余儀なくされたボックス

--->

vmnet b
インターネットにアクセスできるネットワーク
NATまたはブリッジ)のいずれかとして構成

->

インターネット

基本的に、Linuxボックスには2つの仮想NICが必要です。1つはvmnetaとvmnetbにありますが、それ以外は、すべてのトラフィックが「透過的な」ブリッジングLinuxボックスを通過するように強制する方法がわかりません。インターネット。 vmnet aとbは、同じデフォルトルートを持つ同じIPネットワークである必要がありますか? vmnet aにはデフォルトルートがなく、vmnet bにはデフォルトルートがありますか? vmwareフォーラムで、Linuxホストでプロミスキャスモードのvmnetファイルのアクセス許可を変更する必要があることを読みましたか?これは本当ですか?このシナリオをWindowsボックスでどのように構成しますか?

2
Tony robinson

これを達成する方法はたくさんあると思います。あなたがやりたいことを念頭に置いて、私はこうします:

 hostA on netA
     |
 --------------------
   IDS iface on netA
    IDS Host
   IDS iface on netB
 --------------------
     |
 hostB on netB
     |
    inet

hostBにはデフォルトゲートウェイがあり、これはすでに設定されているはずです(ISPプロバイダーのルーター)。netAからIDS Hostまでのルートを追加する必要があります(hostB):

ip route add <netA> via <IDS Host on netB>

IDS Hostはすべてのトラフィック(または必要なトラフィックのみ)を転送する必要があります:

echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -P FORWARD ACCEPT
iptables -I FORWARD 1 -j ACCEPT

これにより、カーネルでの転送が有効になり、すべてのトラフィックがこのボックスを通過できるようになります。最後に、netA上のホストは、デフォルトゲートウェイとしてIDS Host on netA(netA上の任意のホスト上)を持つ必要があります。

ip route add default via <IDS on netA>

したがって、必要なのは、IDSで、vmnetAにネットワークインターフェイスを、vmnetBに別のネットワークインターフェイスを用意することだけです。

1
Torian