首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >将IPTables规则转换为Firewalld

将IPTables规则转换为Firewalld
EN

Stack Overflow用户
提问于 2016-08-31 19:51:12
回答 1查看 7.7K关注 0票数 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>

我做错了什么?

谢谢你的帮助!

EN

Stack Overflow用户

发布于 2016-09-12 22:23:05

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

代码语言:javascript
运行
复制
firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 0 -p tcp --dport 9000 -j ACCEPT

您可以通过以下两种方式添加伪装:

代码语言:javascript
运行
复制
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/

票数 1
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39248900

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档