我希望制作一个充当桥梁的 Linux 系统。它只是将一台设备上发送的任何数据转发到下一台设备。它不会尝试阻止传入攻击或重定向任何流量。它的作用是在网络上执行 IDS 角色。任何可疑活动都会被记录和报告。Snort 就是这样一种软件,但我想知道社区的其他人有什么其他解决方案和想法。
答案1
如果您只想执行网络监控,我建议进行一些轻微的重新设计。将设备置于内联状态(例如您所建议的)实际上仅在您希望能够对活动采取行动时才有用。否则,它只会增加网络的复杂性并增加额外的故障点。您最好使用镜像端口或网络分接头被动地监控流量。
镜像端口的确切术语会因供应商而异。例如,Cisco 称其为 Span Sessions,Juniper 使用术语“分析器端口”,但在所有情况下,您所做的就是让网络设备(通常是交换机或路由器)将一组流量的副本发送到另一个端口。确切的功能取决于硬件,但至少您应该能够监控进出特定端口的所有流量。通常您希望这是上行链路,但这取决于您想要监控的内容以及您的网络布局。使用镜像端口的最大优势是它很便宜。此功能已存在于几乎所有“企业”级硬件中,只需将其打开即可。但是,它可能有几个缺点。由于这需要网络设备执行更多操作,因此可能会产生额外的负载,因此根据您接近容量的程度,这可能是一个问题。大多数设备还会限制您可以镜像的内容数量。大多数 Cisco 设备限制为两个跨度会话,仅供参考,在 6500 机箱中安装 FSWM 会消耗一个跨度会话。通常情况下,限制为两个不是问题,但由于这个数字相当低,因此一定要记住这一点。
网络分接头通过镜像流量的专用硬件设备来解决性能和扩展问题。它们的工作原理是在线安装并物理分离信号。因此,虽然它们是在线安装的,但它们比计算机更不可能在市中心受到影响。确实存在铜线和光纤版本,而且它们可能有点昂贵(预计 500-1500 美元)。冒着欺骗特定供应商的风险,NetOptics(网络分接头制造商)确实有一个合理的写上去。
从这一点来看,使用像 Snort 这样的系统相对来说比较轻松。无论你使用哪种方法,你都可能需要一两根电缆来为你提供所需的所有数据。然后,你构建你的 Snort 盒,放入一个额外的网卡进行监控,并从监控端口插入电缆。配置 Snort 以监听该接口并观察误报情况!