我在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
前两条规则是我们要确保的内部IP始终可以在端口22(端口22)。 接下来的两个规则是允许从任何地方的任何IP地址查看HTTP和HTTPS。 最终的规则是允许我们的代码部署系统使用SSH。
我设置了一个ufw default deny
规则,但似乎没有显示。 我是否也有一个否定一切的最终规则?
如果我添加一个拒绝所有规则,上面的规则顺序是否有所不同? 大概如果这个列表变长了,再加上一个拒绝规则的允许规则是不可能的,这意味着我将不得不删除并重新添加一些规则?
如果你有兴趣重新sorting你的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
命令ufw status verbose
将显示默认规则。 对于你的configuration你可能想要说
默认:拒绝(传入),允许(传出)
在这种情况下,你不需要单独的“拒绝一切”规则,而其他规则的顺序并不重要。 如果您想更改顺序,可以使用ufw insert [position] [rule text]
在特定位置添加规则。 你可以得到编号为ufw status numbered
的编号列表。
如果您熟悉iptables-save
命令生成的规则的格式,则可以在/etc/ufw/user.rules
和/etc/ufw/user6.rules
编辑ufw的configuration文件。 即使你不是,每个用户添加规则都会有一个注释,显示匹配的ufw命令供你参考。
根据需要更改订单并保存。 然后运行sudo ufw reload
,新的命令将会到位。
这种方法比delete
和insert
命令更快,但是如果你不是非常有信心,你可能应该在编辑之前进行备份。