我刚刚安装了 CentOS 7:
[root@new ~]# cat /etc/redhat-release CentOS Linux 版本 7.1.1503(核心)
我正在尝试配置防火墙,有人告诉我在 CentOS 7 中 iptables 不再使用,取而代之的是firewalld。当尝试运行命令来设置防火墙规则时,如下所示:
防火墙cmd –add-port=80/tcp
我收到以下消息:
[root@new ~]# firewall-cmd --add-port=80/tcp -bash:防火墙-cmd:未找到命令
编辑:我也尝试了以下命令:
[root@new ~]# firewall-offline-cmd --add-port=80/tcp -bash:firewall-offline-cmd:未找到命令
但没有成功。
我尝试运行以下命令来检查firewalld是否已安装:
[root@new ~]# 服务防火墙状态 重定向到 /bin/systemctl statusfirewalld.service 防火墙服务 已加载:未找到(原因:没有此文件或目录) 活跃:不活跃(死亡)
根据此输出,我尝试启动firewalld:
[root@new ~]# 启动服务firewalld 重定向到 /bin/systemctl startfirewalld.service 无法发出方法调用:单元firewalld.service 无法加载:没有此文件或目录。
知道 CentOS 7 安装有什么问题吗?这是在 OpenVZ VPS 上的全新安装,我还没有做任何更改。
答案1
两种可能的选择
- 你的 PATH 不包含 /usr/bin
- 未安装防火墙 cmd
- yum 安装防火墙
答案2
在我看来你没有安装/启用它。
yum install firewalld
systemctl unmask firewalld
systemctl enable firewalld
systemctl start firewalld
答案3
尝试使用 GUI 工具,此工具默认随 centos 6/7 提供。firewalld 在 centos5 之后已弃用
$ sudo system-config-firewall
或者
# system-config-firewall