我的目标是在我拥有的两个路由器之间添加一个盒子,以便我可以监视和分析网络流量,将其用作两个路由器的系统日志服务器,并在适当时发出邮件警报。尽管使用旧的中继器集线器很可能可以更轻松地实现我想要的目标,但我一直无法找到可供购买的中继器集线器。
根据 Wireshark wiki 中的提示,我通过添加 br 接口、将 eth0/1 设置为 0.0.0.0 IP 地址并重新启用接口,将 Linux 机器设置为网桥。但我很快意识到,配置没有为我提供任何可用于日志服务的网络接口,而且我不确定我是否可以针对 br0 接口运行 snort 或其他监控工具。我可以测试后者,但在我花时间这样做之前:
- 我在网络理解中是否遗漏了一些关于建立桥梁的东西会事实上允许我也为 eth0/1 接口分配地址吗? (如果我翻译的是这个堆栈交换帖子正确的是,我相信答案是否定的。)
- 如果事实上我无法配置此盒子来实现我的目标,同时配置为网桥,除了将盒子设置为路由器之外,还有其他方法可以实现此目的吗?
- 或者,如果我找不到中继器集线器(并且我没有能够进行端口镜像的交换机),将其设置为路由器是否是最好的方法?
答案1
首先,您不要将 eth0 和 eth1 设置为 0.0.0.0,而是根本不分配 IP 地址。 (但也许你的 0.0.0.0 被视为没有 IP,不确定 - 从未尝试过)。然后为网桥分配一个 IP 地址。
# ip addr ls
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1
⋮
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master lan-br state UP group default qlen 1000
link/ether XX:XX:XX:XX:XX:XX brd ff:ff:ff:ff:ff:ff
3: lan-br: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
link/ether XX:XX:XX:XX:XX:XX brd ff:ff:ff:ff:ff:ff
inet 192.168.XX.XX/24 brd 192.168.XX.XX scope global lan-br
valid_lft forever preferred_lft forever
inet6 fe80::XXXX:XXXX:XXXX:XXXX/64 scope link
valid_lft forever preferred_lft forever
# brctl show
bridge name bridge id STP enabled interfaces
lan-br 8000.XXXXXXXXXXXX no eth0
我的网桥上目前只有一个设备 (eth0),它的存在是为了桥接虚拟机(当前没有一个正在运行)。你的当然会有 eth0 和 eth1。
您应该能够使用 snort 监控 br、eth0 或 eth1。交通流经这三个地方。快速测试tcpdump -n -i br
应该可以为您确认这一点。