我有以下 3 台 PC 通过以太网连接到路由器:
PC1 – 192.168.1.101(Linux Ubuntu)
PC2 – 192.168.1.100 (Windows)
PC3 – 192.168.1.1 (Windows)
所有 PC 均可互相 ping 通。
PC1 已在 IDS 模式下安装 Suricata。它包含一条简单的 ping 规则:
alert icmp any any -> any any (msg:"PING detected"; sid:2; rev:1;)
我通过在 PC1 中输入以下命令来启动 Suricata:
suricata -c /etc/suricata/suricata.yaml -i eth3
eth3 是 PC1 中的主以太网接口。
当我从 PC2 和 PC3 ping PC1 时,会触发该 ping 规则,日志文件中会记录相应的消息。当我从 PC1 ping PC2 和 PC3 时,也会触发此规则。
但是,当我从 PC3 ping PC2 或反之时,不会触发此规则。Suricata 仅在 PC1 上的 eth3 接口上监听。当我从 PC3 ping PC2 时,流量不会通过 PC1,即使所有 3 台 PC 都在同一个网络上。
是否可以配置 Suricata 来监控整个网络而不仅仅是安装它的 PC?
答案1
以太网交换机不会将所有流量广播到所有端口。
在正常运行条件下,两个独立交换机端口上的两个主机之间的单播交换将不会被第三个交换机端口上的监听主机看到。
更昂贵的托管交换机具有 VLAN 支持等企业功能,通常具有端口镜像功能,可用作窃听实用程序,将任何一个端口上发送或接收的所有流量复制到第二个指定端口。根据交换机的品牌和型号,此功能可能存在一些注意事项,可能会使指定端口的功能性降低,即:在镜像处于活动状态时,只能接收流量,而不能发送流量。
除了最强大、最昂贵的交换机外,其他所有交换机可能都存在另一个问题,那就是一次只能镜像一个端口。对于 3 节点交换网络,这不是问题,因为如果镜像一个或另一个端口,则不受监控端口上的主机可以与之通信的目的地都会受到监控。但是,4 节点网络将留下两个不受监控的端口。
在 Internet 网关情况下,路由器和交换机之间会打开端口镜像,因此会捕获所有来自 Internet 的流量,但不会捕获所有 LAN 流量。
可能存在可以将所有 VLAN 或所有背板流量镜像到指定端口的交换机,但我不熟悉此类功能。
答案2
看看 Netgear pro 交换机:
GS105Ev2 – 5 端口千兆 ProSAFE Plus 交换机
它们非常便宜,并且支持端口镜像设置。将交换机放在路由器和网络其余部分之间,以实现互联网可见性。