您好,如何将 iptables 规则转换为 pf 规则文件?
答案1
一种方法是使用应用程序固件构建器。它主要是一个图形应用程序,可用于管理防火墙规则集。但它还具有导入/导出功能,可用于在不同类型的防火墙之间进行转换。是的,它同时支持 iptables 和 pf。
因此,看起来 FWBuilder 比我记忆中的更棘手。虽然您可以从 Cisco 和 IPTables 导入规则集,但不能直接导出。我经历了将桌面 IPTables 规则集从 iptables 转换为 pf 的过程,这需要付出相当大的努力。我不知道这是否比学习 pf 语法和进行手动转换更容易。话虽如此,这是我使用 fwbuilder 从 iptables 转到 pf 的过程。
- 文件 -> 导入策略 -> 选择 iptables 规则文件
- 设置Platform=iptables,点击Next
- 改变新的防火墙键入 pf 并使用适当的版本和主机操作系统设置
- 创建新的接口对象
- 将策略框架中的方向更改为正确方向(入站/输出/两者)
- 在适当的地方将新创建的接口添加到规则中
- 保存为 FWBuilder 格式 - 文件 -> 另存为 -> 选择要另存为的文件名
从这一点开始,我使用迭代过程来过滤掉 fwbuilder 存在的任何解析问题,主要是上述方向问题以及我的丢弃 XMAS 数据包的规则。我通过直接发出编译命令而不是使用界面来实现这一点。
fwb_pf -v -f ~/sandbox/firewallwork/desktop_firewall -d ~/sandbox -o ~/sandbox/firewallwork/New\ Firewall.fw 'New Firewall'
- 如果没有错误则停止,否则
- 修复界面问题
- 文件 -> 保存
- 转到 1
这最终会为您留下两个包含新 pf 防火墙配置的文件,New Firewall.fw
和New Firewall.conf
。重申一下,在刷新我对该过程的记忆后,我对它作为一个真正有用的解决方案的兴奋感大大降低。但是,通过将输出与原始规则集进行比较,它可能有助于您更好地了解 pf 规则集的开发方式,以便您可以开始自己管理它们。
答案2
假设您谈论的是 Pfsense。不,这是不可能的,您必须手动输入它们。