FreeBSD 4.7 缺少 IPFW - 如何安装它?

FreeBSD 4.7 缺少 IPFW - 如何安装它?

我有两台 FreeBSD 服务器,使用的是 4.7 版本。这两台服务器比较老,我来的时候就已经配置好了。现在原来的管理员都走了,我开始仔细查看这些服务器,发现它们没有安装防火墙!它们运行的​​服务(如 ssh 和 sendmail)在各自的配置中配置得足够好,可以按照我们想要的方式过滤流量。但我可以进行端口扫描,然后弹出 20 个开放端口的列表,这令人担忧。

因此,我为 ipfw 准备了一些防火墙规则,并将它们安装在服务器上,结果却发现服务器对 IPFW 一无所知(/sbin/ipfw 中的二进制文件不存在)。此外,我习惯用来加载内核模块的命令(kldload)也不存在。我查看了端口,没有端口可以安装它。FreeBSD 管理指南中说 IPFW 是在 4.x 版本中添加的。

有人知道为什么我没有它或者我如何获得它吗?PF 是 ipfw 之前存在的防火墙程序吗?

答案1

按优先顺序:

我的第一个建议是将这些机器升级到支持的 FreeBSD 版本。4.x
现在已经相当老旧了,远远超过了支持期限,与其让它继续存在,不如将其替换掉。您还可以根据当前的最佳做法保护新机器。
请注意,没有支持从 4.x 升级到任何最新版本的路径,不需要重新安装,所以我们实际上是在谈论机器/软件的全面更换。

我的第二个建议是如果你真的不能升级这些机器将是禁用不需要的服务如果你仍然觉得需要把它们隔离到使用专用的盒子作为防火墙
这具有减少开放端口和释放 RAM 的净效果,而且无需重建内核/操作系统。使用专用防火墙盒可以设置任何防火墙规则,而无需干预系统本身(我认为系统是稳定且正常运行的)。

我的第三个建议是,如果您仍然想直接摆弄这些机器,那么获取 4.7 源代码树的副本(通过 cvsup),并重建世界和内核(使用 ipfw 配置后者)——这将使您修补到最新和最好的 4.7,并为您提供设置防火墙所需的 ipfw 二进制文件和内核组件。
这是一个巨大的风险——在接触这些机器的过程中,你很可能会导致一系列的损坏,然后你需要修复。

答案2

如果 ipfw 被编译为模块,你应该在 /modules/ipfw.ko 中看到它

如果存在,则用以下命令将其以 root 身份加载到内核中:“kldload ipfw && ipfw add 32000 allow ip from any to any”摘自“man ipfw”。

相关内容