我们目前使用 Sophos SG230 作为防火墙/上游路由器,配置管理简直糟透了。即使在每次更改后手动备份配置,也会导致备份文件出现不可区分的二进制更改。
是否存在将路由/防火墙配置作为代码的事实标准?我查看过 pfsense,但它也非常依赖 GUI。至少有一个人类可读的配置文件,但很难将规则分组到语义包中。
答案1
古老的 iptables - 您可以直接编辑配置文件,或者让它从 bash/python/other 或各种 gui 应用程序生成。
UFW 和防火墙可能值得一看。我认为 Centos 默认带有防火墙,但我恢复使用 iptables 作为临时解决方案,总有一天我会考虑切换回来并了解它应该如何工作。说实话。
答案2
我们已经开始使用 REST API,它在基础设施设备中越来越常见。它的效果非常好,以至于 REST API 现在已成为我们购买基础设施时的核心要求。
以 json 格式提取配置并将其存储在 svn 或 git 中,不仅便于配置差异化,而且易于阅读。创建 json 代码块并将其从 svn 或 git 推送到设备上也同样如此。
看起来至少一些 Sophos 防火墙带有 REST API,也许你也是这样?
为每台设备构建一个工作调用集可能需要一些时间。我建议使用邮差客户端用于探索设备 REST 方法并存储工作调用。当您拥有一个包含要针对设备进行的所有 REST 调用的小型库时,将它们转换为代码就很快完成了。