UFW防火墙规则订购?


23

我在UFW的服务器上有以下规则:

To                         Action      From
--                         ------      ----
22                         ALLOW       217.22.12.111
22                         ALLOW       146.200.200.200
80                         ALLOW       Anywhere
443                        ALLOW       Anywhere
22/tcp                     ALLOW       109.104.109.0/26

前两个规则是我们要确保始终可以在(端口22)进行SSH进入的内部IP。接下来的两个规则是允许从任何位置的任何IP地址查看HTTP和HTTPS。最终规则是允许从我们的代码部署系统中使用SSH。

我设置了一条ufw default deny规则,但似乎没有显示。我还应该有一条拒绝一切的最终规则吗?

如果添加“拒绝一切”规则,规则在上方显示的顺序是否有所不同?大概如果此列表变得更长,那么在拒绝规则之上添加另一个允许规则是不可能的,这意味着我必须删除并重新添加一些规则吗?

Answers:


34

如果您有兴趣重新排列UFW规则,这是一种方法。

$ sudo ufw status numbered

     To                         Action      From
     --                         ------      ----
[ 1] 22                         ALLOW IN    Anywhere
[ 2] 80                         ALLOW IN    Anywhere
[ 3] 443                        ALLOW IN    Anywhere
[ 4] 22 (v6)                    ALLOW IN    Anywhere (v6)
[ 5] 80 (v6)                    ALLOW IN    Anywhere (v6)
[ 6] 443 (v6)                   ALLOW IN    Anywhere (v6)
[ 7] Anywhere                   DENY IN     [ip-to-block]

假设您不小心在结尾添加了一条规则,但您想从头开始。

首先,您需要将其从底部(7)移除,然后重新添加。

$ sudo ufw delete 7

请注意,要小心地删除多个规则,它们的位置可能会改变!

将您的规则加回到最顶端(1):

$ sudo ufw insert 1 deny from [ip-to-block] to any

13

该命令ufw status verbose将显示默认规则。对于您的配置,您可能希望它说

默认值:拒绝(传入),允许(传出)

在这种情况下,您不需要单独的“拒绝所有内容”规则,其他规则的顺序也无关紧要。如果确实要更改顺序,则可以使用来在特定位置添加规则ufw insert [position] [rule text]。您可以使用获取编号的规则列表ufw status numbered


3

如果您熟悉iptables-savecommand 生成的规则的格式,则只需在/etc/ufw/user.rules和中编辑ufw的配置文件/etc/ufw/user6.rules。即使不是,对于每个用户添加的规则,也会有一条注释,显示匹配的ufw命令供您参考。
根据需要更改订单,然后保存。然后运行sudo ufw reload,新订单将就位。
这种方法比deleteinsert命令要快,但是如果您不太确定,则可能应该在编辑之前进行备份。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.