如何在 UFW 中添加转发规则?

如何在 UFW 中添加转发规则?

我已经设置了一个带有 2 个网卡的 Ubuntu 服务器作为基本路由器,用作dnsmasqDNS 和 DHCP 服务器,并且我用它ufw来控制iptables

一切正常,我认为我对正在发生的事情有了一个相当基本的了解。

但是,为了转发数据包,我必须进行设置DEFAULT_FORWARD_POLICY="ACCEPT"/etc/default/ufw配置文件指出我可能还想调整我的规则。

我做了调整/etc/ufw/before.rules并添加了:

*nat
:POSTROUTING ACCEPT [0:0]
-A POSTROUTING -s 192.168.0.0/24 -o enp0s3 -j MASQUERADE

我的问题是:

将默认值设置为“ACCEPT”不好吗?我不能只将默认策略保留为“DROP”,而是使用 UFW 添加转发规则吗?

我添加了转发规则,但它实际上并没有转发数据包。

sudo ufw route allow in on enp0s8 out on enp0s3 to 0.0.0.0/24 from 192.168.0.0/24

答案1

好吧,我有几点评论:

  1. 您必须按照“设置 DEFAULT_FORWARD_POLICY=”ACCEPT“来接受”才能在 2 个网卡之间转发流量。如果您使用 iptables 而不是 UFW,您可以根据需要编写更具体的规则。

  2. 默认“接受”是什么意思?如果默认接受所有流量,则与不运行防火墙相同。您只需禁用防火墙即可。

如果您刷新规则,将默认策略设置为 REJECT 将会锁定您自己。

我认为最好将默认设置保留为 ACCEPT,编写所有要接受的规则,然后将 REJECT 作为 iptables 中的最终规则。这样,如果您刷新规则,您将不会被锁定。

  1. 不要使用 DROP,而要使用 REJECT - 请参阅 http://www.chiark.greenend.org.uk/~peterb/network/drop-vs-reject

  2. 如果没有更多信息,我们确实无法告诉您应该使用什么规则或如何编写这些规则。

您正在运行哪些服务器?您想要转发哪些流量?您当前的规则是什么?

在我看来,如果你正在编写广泛而复杂的规则,有时使用 iptables rater 比 UFW 更容易。

相关内容