我正在尝试弄清楚如何将两个 vmware(服务器或工作站、工作站)或 virtualbox 网络与两个虚拟网络之间透明内联的 linux IDS/IPS 系统桥接在一起。我该如何实现这一点?我知道如何将虚拟网络桥接在一起,但如何让 linux 虚拟机位于它们之间并强制流量通过透明桥接?
我想要的是类似这样的内容:
vmnet
各种 vms
仅主机网络
---->
内联 Linux 盒
vmnet 盒必须经过此处才能连接到互联网
--->
vmnet b
网络,其 Internet 访问
配置为 NAT 或桥接
-->
互联网
我知道 Linux 机器基本上需要两个虚拟网卡,一个在 vmnet a 上,另一个在 vmnet b 上,但除此之外,我不知道如何强制所有流量在通往互联网的途中穿过“透明”桥接 Linux 机器。vmnet a 和 b 是否必须是具有相同默认路由的同一 IP 网络?vmnet a 没有默认路由,而 vmnet b 有默认路由吗?我在 vmware 论坛上读到,在 Linux 主机上,您需要更改 vmnet 文件的权限以启用混杂模式?这是真的吗?如何在 Windows 机器上配置此方案?
答案1
我想有很多方法可以实现这一点。记住你想做什么,我会:
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 上有一个网络接口。