即使不活动,也可以查看已配置的规则


71

我想知道是否可以让UFW列出已配置的防火墙规则,即使未启用它也是如此。目前,我只能通过ssh访问服务器,如果没有配置允许ssh的规则,我也不想启用UFW。但是,由于UFW当前未启用,因此当我运行“ ufw status”时,只会收到“ inactive”消息。

有没有我可以使用的特殊标志,甚至可以查看一些配置文件,以查看即使禁用了防火墙也配置了哪些规则?


4
当前答案ufw show added由@simon提供。
ctbrown

Answers:


24

当前尚无法显示通过CLI命令启用防火墙之前输入的规则。但是,您可以直接检查规则文件。/lib/ufw/user*.rules包含通过“ ufw” CLI命令控制的规则。例如:

 $ sudo grep '^### tuple' /lib/ufw/user*.rules

这将显示如下输出(对于添加了'sudo ufw allow OpenSSH的规则):

 /lib/ufw/user.rules:### tuple ### allow tcp 22 0.0.0.0/0 any 0.0.0.0/0 OpenSSH - in

“元组”是ufw内部用来跟踪规则的简写,可以解释为以下之一:

 ### tuple ### <action> <proto> <dst port> <dst> <src port> <src> <direction>
 ### tuple ### <action> <proto> <dst port> <dst> <src port> <src> <dst app name> <src app name> <direction>

能够添加另一个status命令来支持此功能可能会很有用。请考虑提交错误。


5
/lib在我看来,将文件放入非常奇怪
pqnet 2014年

11
他们添加了命令ufw show added,另请参见以下
@Simon

109

现在有一个ufw show added命令可以为您列出已配置的规则,即使防火墙处于非活动状态也是如此。它是作为此错误报告的修复程序而添加的,并已在v0.33中添加

现在,您可以执行以下操作:

# ufw status
Status: inactive
# ufw allow ssh
Rules updated
Rules updated (v6)
# ufw show added
Added user rules (see 'ufw status' for running firewall):
ufw allow 22
# ufw enable
Firewall is active and enabled on system startup
# ufw status
Status: active

To                         Action      From
--                         ------      ----
22                         ALLOW       Anywhere
22 (v6)                    ALLOW       Anywhere (v6)

from的输出格式也ufw show added使为每个规则编写delete命令变得容易得多。


3
每个错误报告:这是在2012
。– ConvexMartian 2016年

18

一般规则在中/etc/ufw。用户定义的规则在中/lib/ufw/user*


魔术-/lib/ufw/user.rules在###规则###部分具有易于理解的规则。谢谢。
Scaine 2014年

9

在Ubuntu 16.04中,用户定义的规则存储在中/etc/ufw/user.rules。因此,您可以通过以下方式查看规则:

sudo cat /etc/ufw/user.rules

1
因此,在Ubuntu 16.04上,您可以使用以下命令:sudo grep '^### tuple' /etc/ufw/user*.rules作为用户添加规则的格式化列表。
Ville

2
@Ville,不要那样做。使用sudo ufw show added代替。
ctbrown

我不知道@ctbrown,谢谢。禁用ufw时,它似乎也可以工作。
pstadler

4

从命令行来看,似乎没有办法。但是,如果要从Ubuntu盒(到Ubuntu盒)进行SSH传输,则可能要尝试这种稍微复杂的方法:

基本上,在远程设备上安装gufw,然后使用X转发连接并运行GUI。

在远程设备上,通过-X(可选)进行连接:

sudo apt-get install gufw
sudo gufw

这将向您显示规则集,而无需激活它。

请注意,如果远程设备是真正的“无头”服务器,则安装GUFW可能会降低令人不快的依赖性。但是除非这里有人知道使UFW向您显示所需的输出而不先激活它的技巧,否则这可能是您唯一的选择。

我确实做了尝试sudo ufw show raw,但是显示了iptables输出,我无法说清楚。


感谢有关“ ufw show raw”的花絮-我肯定在手册页中没有提到它。当我运行它时,我看不到有任何规则让我望而却步,这意味着我可能没有任何配置,但是我现在还不想碰碰运气。是的,安装gufw将需要安装大量依赖项,因此我认为我会回避这种方法。
布莱恩
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.