我试图设置snort作为一个IDS,在一台也可以作为路由器的debian机器上运行。 理想情况下,我想以这种方式设置snort,以便我不必购买额外的networking适配器,只是为了让它监听debian机器已经处理的stream量。 话虽如此,从接口镜像stream量,然后将镜像stream量发送到snort最好的方法是什么? 或者你会build议我沿着不同的路线走吗? 我以为桥可能可以工作,但我不知道这是否是正确的解决scheme,任何帮助将不胜感激,谢谢!
在你的情况下,我认为我们可以build立两个可能有效的devisescheme。
由于您已经为您的路由器推出了自己的Debian实例,因此只需要安装或编译您的版本/体系结构的软件包即可。 然后,你可以configurationsnort连接到内部或外部接口,这取决于你想要监视哪一个,让我们来呃。
这可能很容易,不需要添加任何硬件,可以很容易地重新configuration为在IDP模式下运行,并且不需要任何可能的奇怪的networkingconfiguration来工作。 最大的缺点是性能。 Snort可以消耗疯狂的资源。 它可以平息吃掉系统中的所有RAM和CPU,使路由器无法路由。
Snort有configuration选项的gobs。 不只是打开或closures规则,而是为特定主机制定白名单规则,调整用于数据包碎片整理的内存字节数,为重新组装TCPstream存储在内存中的数据包等。我通常build议花费大量的时间调整这些参数,甚至在你让他们按照你希望他们回来的方式设置,并定期进行评估,看看是否需要调整任何东西。
这通常是推荐的解决scheme。 它解决了资源竞争的networking中断问题。 它允许你使用特制的硬件,这样你就可以使你的传感器做到你想要的。 这也将释放你增加一个额外的硬盘驱动器来运行daemonlogger,或抛出更多的内存,而不必处理调度全部networking中断。 它也更具可扩展性。 当然,我可以在家里运行pfSense的奔腾4白盒上运行snort,但是我不能在工作中使用它运行在瞻博networkingEX-8216上。 专用传感器在两种环境下都能运行。
不足之处在于您要添加另一个系统来pipe理,另外一个系统需要消耗电力,BTU需要撤离,等等。根据您的networking基础设施,数据可能会也可能不容易。 各大networking厂商都有这个事情要做。 思科将其称为SPAN会话,瞻博networking将其称为分析仪,Enterasys将其称为镜像。 虽然我不知道任何其他主机防火墙是否可以或如何执行,但可以使用TEE目标与iptables执行相同的function。 如果不能使用networking分路器,那么这是一个电子复制数据stream的物理设备。
在任何情况下,您所要做的就是从您的networking基础架构获取stream量的副本到您的传感器。 做到这一点的最好方法和推荐的方法是在传感器中安装两个NIC:pipe理1个,监控1个。 接口的价格差别很大,但除非你谈论的是大于1Gbps的链路或持续吞吐量接近1Gbps的情况,否则卡很便宜。 我一直在推荐一个简单的英特尔Pro / 1000 GT,事情是30美元,并做你需要的一切!
可以在一个界面上运行,但我不能推荐它。 您最有可能遇到与您的监控有着奇怪的不一致之处,或者由于在通常预期的(假定的)链路上传输的问题仅作为接收而发生的潜在networking问题。
我们的信息安全专业人员的姊妹网站上的snort标签上提供了一些相关信息 。
当我运行snort时,我把它运行在路由器上。 这不需要额外的接口来发送stream量。 风险在于,如果snort处理不当数据并执行它,它将比其他方式更容易访问networking。