iptables与firewalld两种方式防火墙切换
转载自:https://blog.csdn.net/ls1645/article/details/78750561
用iptables开启防火墙报错: Failed to start IPv4 firewall with iptables.
错误原因:因为centos7.0默认不是使用iptables方式管理,而是firewalld方式。CentOS6.0防火墙用iptables管理。
解决办法有两个:使用firewalld方式。或者关闭firewalld,然后安装iptables。
一、关闭firewalld,安装iptables过程:
停止并屏蔽firewalld:
systemctl stop firewalld systemctl mask firewalld安装iptables-services:
[code]yum install iptables-services设置开机启动:
[code]systemctl enable iptables停止/启动/重启 防火墙:
systemctl [stop|start|restart] iptables #or service iptables [stop|start|restart]
保存防火墙配置:
service iptables save #or /usr/libexec/iptables/iptables.init save
按照上述命令配置后的界面:
二、从iptables切换回firewalld
1、先看firewalld的状态:inactive
2、安装firewalld
3、切换到firewalld,切换过程与切换iptables一样
/************下面是iptables的一些命令*******************************/
查询防火墙状态:
[root@localhost ~]# service iptables status
停止防火墙:
[root@localhost ~]# service iptables stop
启动防火墙:
[root@localhost ~]# service iptables start
重启防火墙:
[root@localhost ~]# service iptables restart
永久关闭防火墙:
[root@localhost ~]# chkconfig iptables off
永久关闭后启用:
[root@localhost ~]# chkconfig iptables on
开启端口:
[root@localhost ~]# vim/etc/sysconfig/iptables
/**********下面是firewalld的一些命令*****************************/
#systemctl statusfirewalld //查看状态,看电脑上是否已经安装firewalld
#yum installfirewalld //安装firewalld防火墙
#systemctl startfirewalld.service //开启防火墙
#systemctl stop firewalld.service //关闭防火墙
#systemctl enable firewalld.service //设置开机自动启动
#systemctl disable firewalld.service //设置关闭开机制动启动
#firewall-cmd--reload //在不改变状态的条件下重新加载防火墙
启用某个服务
#firewall-cmd --zone=public --add-service=https //临时
#firewall-cmd --permanent --zone=public --add-service=https //永久
开启某个端口
#firewall-cmd--permanent --zone=public --add-port=8080-8081/tcp //永久
#firewall-cmd --zone=public --add-port=8080-8081/tcp //临时
查看开启的端口和服务
#firewall-cmd--permanent --zone=public --list-services //服务空格隔开 例如 dhcpv6-client https ss
#firewall-cmd--permanent --zone=public --list-ports //端口空格隔开 例如 8080-8081/tcp 8388/tcp 80/tcp
#systemctl restartfirewalld.service //修改配置后需要重启服务使其生效
#firewall-cmd--zone=public --query-port=8080/tcp //查看服务是否生效(例:添加的端口为8080)
/**********下面是systemctl的一些命令*******************************/
观察iptables和firewalld使用的两组命令,发现三个常用的命令:service、chkconfig、systemctl。那么它们分别是做什么的呢?(去网上搜索了一下给出了答案)
systemctl命令是系统服务管理器指令,它实际上将 service 和 chkconfig 这两个命令组合到一起。
任务 |
旧指令 |
新指令 |
使某服务自动启动 |
chkconfig --level 3 httpd on |
systemctl enable httpd.service |
使某服务不自动启动 |
chkconfig --level 3 httpd off |
systemctl disable httpd.service |
检查服务状态 |
service httpd status |
systemctl status httpd.service(服务详细信息) systemctl is-active httpd.service(仅显示是否 Active) |
显示所有已启动的服务 |
chkconfig --list |
systemctl list-units --type=service |
启动某服务 |
service httpd start |
systemctl start httpd.service |
停止某服务 |
service httpd stop |
systemctl stop httpd.service |
重启某服务 |
service httpd restart |
systemctl restart httpd.service |
总结:
记是记不住的,实操才可以,熟能生巧。
抓住一个问题,深入去挖,往往能挖出一片,从而扫清一片盲点。深挖能出清泉。
参考文章:
https://www.vkilo.com/rhel-7-iptables-service.html
https://www.geek-share.com/detail/2711193910.html
阅读更多- 两种方式实现类似qq搜索的切换
- iptables&firewalld防火墙
- Fragment 切换的两种方式
- Centos 7 切换为iptables 防火墙
- 防火墙 firewalld重新改回iptables
- redis的主从切换的两种方式
- Linux 防火墙:关于 iptables 和 firewalld 的那些事
- android之fragment的两种使用方式(add和replace方式切换)
- Android实现app主题动态切换的两种方式
- android之fragment的两种使用方式(add和replace方式切换)
- CentOS7 默认防火墙firewalld替换为iptables
- maven profile自动切换环境参数的两种实现方式
- android之fragment的两种使用方式(add和replace方式切换)
- android 两种方式模仿微信界面滑动切换Activity
- Linux防火墙配置(iptables, firewalld)
- CentOS 7.0 升级之防火墙 firewalld 取代 iptables
- Android应用横竖屏切换的两种方式,从表现上看最大的区别
- Android设置界面切换动画的两种方式
- linux--Firewalld、Iptables防火墙的设置