我刚刚在我的服务器上安装了 Centos7 发行版。
我来自 Centos6,我读到iptables
utility 已被 取代,firewalld
而services
utility 已被 取代systemctl
。
因此我尝试获取我的防火墙状态(systemctl status firewalld
),但得到以下输出:
● firewalld.service
Loaded: not-found (Reason: No such file or directory)
Active: inactive (dead)
如果我尝试,systemctl status iptables
我会得到相同的输出:
● iptables.service
Loaded: not-found (Reason: No such file or directory)
Active: inactive (dead)
我可以推断我的防火墙已关闭吗?为了检查它,我启动了一个旧iptables -P OUTPUT DROP
命令:我的 ssh 连接不再响应(没有重新启动任何服务)。
因此 iptable 似乎正在运行,但如果没有被检测到,我该如何管理它systemctl
?(例如保存我的配置)。firewalld 不是默认安装的防火墙,这有道理吗?
更新 1:
journalctl -u firewalld.service
journalctl -u iptables.service
也没有给出结果(只有开始和停止日志的日期时间) 。- 我在 journalctl 中发现的唯一有关防火墙的条目是:
Feb 22 19:48:49 myhostname.host.net kernel: Bridge firewalling registered
。我不知道桥接防火墙... - 我们之前看到,向 iptables 添加规则后,无需重新启动任何服务即可立即生效(很奇怪,不是吗?),如果我运行命令,
ps aux | grep iptables
我应该会得到 iptables 进程,但我什么也没得到。我真的很想知道正在运行什么样的防火墙...
答案1
您的输出显示了Loaded: not-found (Reason: No such file or directory)
防火墙和 iptables。这可能意味着您没有安装它们。
Firewalld 软件包包含文件/usr/lib/systemd/system/firewalld.service
。iptables-services 软件包包含文件/usr/lib/systemd/system/iptables.service
。选择所需的文件并安装。