Centos7启动防火墙时报错Failed to start IPv4 firewall with iptables - 尚码园

今天在虚拟机的Linux系统(centos7)里安装Redis,准备学习一下布隆过滤器呢,安装完后使用Windows本机访问不了虚拟机里的Redis,telnet不通可以ping通。因而就去看防火墙,是否关闭或是否把6379端口放开了。php

因而就往这方面查问题,发现没有iptables文件,而后我启动iptables服务,报错。html

Centos 7在启动iptables(防火墙)时报错:
Failed to start IPv4 firewall with iptables.nginx

缘由:由于centos7.0默认不是使用iptables方式管理,而是firewalld方式。Centos6.0防火墙用iptables管理。(原来是这样,centos7默认防火墙时firewalld啊[笑哭]。:-D)redis

解决办法有两个:一是继续使用默认的firewalld方式。二是关闭firewalld,而后安装iptables。之前都是用iptables,因此想换回来,因而找到以下切换教程。sql

从firewalld切换到iptables:关闭firewalld安装iptables

一、首先执行以下命令windows

1#关闭2systemctl stop firewalld3systemctl mask firewalld

二、而后安装iptables-servicescentos

1#安装2yum install iptables-services3#设置开机启动4systemctl enable iptables

三、开放443端口(HTTPS)app

iptables -A INPUT -p tcp --dport 443 -j ACCEPTtcp

四、保存防火墙配置学习

1service iptables save2#或者3/usr/libexec/iptables/iptables.init save

五、iptables的一些命令,中止/启动/重启 防火墙:

1systemctl [stop|start|restart] iptables2#或者3service iptables [stop|start|restart]

而后启动iptables服务,这样就搞定了。

可是,从firewalld切换到iptables后会有这样那样的问题,还不如用系统默认的。

从iptables切换回firewalld

一、先看firewalld的状态:inactive
systemctl status firewalld

二、安装firewalld
yum install firewalld

三、切换

1#关闭iptables2systemctl mask iptables3systemctl stop iptables4#切换5systemctl unmask friewalld6systemctl start friewalld

总算恢复了。

饶了一大圈,最后找到这篇文章
windows本地连不上虚拟机redis服务完美解决,解决了这个问题。

附:firewalld相关命令

经常使用命令

 1#查看状态,是否已经安装firewalld 2systemctl status firewalld 3#开启防火墙 4systemctl startfirewalld.service 5#关闭防火墙 6systemctl stop firewalld.service 7#设置开机自动启动 8systemctl enable firewalld.servic 9#设置关闭开机制动启动10systemctl disable firewalld.service11#在不改变状态的条件下从新加载防火墙12firewall-cmd --reload

启用某个服务

1#临时2firewall-cmd --zone=public --add-service=https3#永久4firewall-cmd --permanent --zone=public --add-service=https

开启某个端口

1#永久2firewall-cmd --permanent --zone=public --add-port=8080-8081/tcp3#临时4firewall-cmd  --zone=public --add-port=8080-8081/tcp

查看开启的端口和服务

1#查看开启的服务 空格隔开2firewall-cmd --permanent --zone=public --list-services3#查看开启的端口 空格隔开4firewall-cmd --permanent --zone=public --list-ports5#修改配置后须要重启服务使其生效6systemctl restartfirewalld.service7#查看服务是否生效 (例:添加的端口为8080)8firewall-cmd --zone=public --query-port=8080/tcp 

以下,查看开启的服务、端口


原网址: 访问
创建于: 2021-10-18 10:47:55
目录: default
标签: 无

请先后发表评论
  • 最新评论
  • 总共0条评论