3

我正在设置 Cuckoo Sandbox,我有几个 IPTables 规则需要转换为 Firewalld 规则。

这是 Cuckoo Sandbox 安装指南的参考页面:http: //docs.cuckoosandbox.org/en/latest/installation/guest/network/#virtual-networking

我需要从 IPTables 格式转换的 3 行是(已删除子网):

iptables -A FORWARD -o eth0 -i vboxnet0 -s 0.0.0.0/0 -m conntrack --ctstate NEW -j ACCEPT

iptables -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT

iptables -A POSTROUTING -t nat -j MASQUERADE

我尝试转换规则并使用 firewall-cmd 实现它们,这里是我想出的三个更新规则:

firewall-cmd --permanent --direct --add-rule ipv4 -A FORWARD -o eth0 -i vboxnet0 -s 0.0.0.0/0 -m conntrack --ctstate NEW -j ACCEPT

firewall-cmd --permanent --direct --add-rule ipv4 -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT

firewall-cmd --permanent --direct --add-rule ipv4 filter POSTROUTING 0 -t nat -j MASQUERADE

但是,当我尝试使用添加上述规则之一时,sudo firewall-cmd我收到一条回复:

wrong priority usage: --direct --add-rule { ipv4 | ipv6 | eb } <table> <chain> <priority> <args>

我究竟做错了什么?

谢谢你的帮助!

4

1 回答 1

1

看起来您刚刚将iptables参数复制并粘贴到firewall-cmd命令的后面:这不起作用。错误消息告诉您它在“ipv4”之后没有找到它所期望的:表、链、优先级和参数。你需要类似的东西:

firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 0 -p tcp --dport 9000 -j ACCEPT

您可以通过以下几种方式添加 MASQUERADE:

firewall-cmd --permanent --zone=external --add-masquerade

firewall-cmd --permanent --direct --add-rule ipv4 nat POSTROUTING 0 -o eth1 -j MASQUERADE

这是开始使用 firewalld 的一个很好的参考:https ://www.certdepot.net/rhel7-get-started-firewalld/

于 2016-09-12T14:23:05.300 回答