![我如何知道我的防火墙是否打开了?](https://linux22.com/image/956178/%E6%88%91%E5%A6%82%E4%BD%95%E7%9F%A5%E9%81%93%E6%88%91%E7%9A%84%E9%98%B2%E7%81%AB%E5%A2%99%E6%98%AF%E5%90%A6%E6%89%93%E5%BC%80%E4%BA%86%EF%BC%9F.png)
我安装了 Firestarter,并配置了防火墙。
但我有点怀疑:在启动时,我有时会看到一个 [FAIL] 标记,在左侧,我猜是“启动防火墙”之类的东西。我不能确定,因为这条消息出现的时间不到一秒钟,所以我想知道是否有办法在不启动整个 firestarter 软件的情况下知道防火墙是否已打开并正在运行。
无论是小工具,还是更好的是,一些控制台指令,防火墙进程/守护程序的确切名称或 bash 脚本都可以。
编辑:我已经用“Shield's Up”测试了我的电脑http://www.grc.com功能,将我的电脑标记为“隐身”,但由于我在路由器后面,所以我并不感到惊讶。不过,显然我的电脑会响应 ping……奇怪……
答案1
基本上有两种方法可以查看防火墙是否已配置。您应该同时使用这两种方法,并验证防火墙是否已配置且配置方式符合您的要求。
首先,检查防火墙规则是否已应用。几乎所有现代 Linux 防火墙解决方案都使用 iptables 作为防火墙。您可以使用 iptables 命令查看已应用的规则:
iptables -L
这将返回当前规则集。即使防火墙规则尚未应用,规则集中也可能包含一些规则。只需查找与给定规则集匹配的行即可。这将让您了解已输入系统的规则。这并不能保证规则的有效性,只能保证它们已被理解。
接下来,您将使用第二台计算机来测试与相关主机的连接。这可以通过命令nmap
(在 nmap 包中找到)轻松完成。快速而简单的检查方法是:
nmap -P0 10.0.0.10
nmap -P0 -sU 10.0.0.10
将 IP 地址 10.0.0.10 替换为目标主机的 IP 地址。
第一行将扫描第二台计算机上开放且可用的 TCP 端口。第二行将重复扫描,但这次扫描的是 UDP 端口。-P0 标志将阻止使用 ICMP Echo 数据包测试主机,但可能会被防火墙规则阻止。
扫描可能需要一段时间,所以请耐心等待。nmap 还有一个 GUI 前端,zenmap
如果输出很多,它可以更轻松地解释扫描结果。
答案2
您可以使用此命令:
ufw status
答案3
要检查防火墙状态使用命令:
sudo ufw status
要启用防火墙使用命令:
sudo ufw enable
要禁用防火墙使用命令:
sudo ufw disable
答案4
问题在启动时,我有时会看到一个 [FAIL] 标记,在左边,我猜它是“启动防火墙”之类的东西。我不确定,因为这条消息显示的时间不到一秒
以上所有答案本身都很完整,可以解决问题。但这是我的一点建议
在开始调试过程之前,我们必须仔细分析问题描述,因此您可以使用手机相机的慢动作模式来查看错误信息到底是什么。