CentOS7防火墙firewalld简单配置和使用
网上找了好多文章,关于CentOS7的防火墙配置和使用,都没有比较理想的说明firewalld的用法,还有一些网上摒弃centos7 firewalld防火墙,使用旧版本的iptables的替代的做法,这里笔者非常不赞同其再使用
iptables。
CentOS7使用的是Linux Kernel 3.10.0的内核版本,新版的Kernel内核已经有了防火墙netfilter
,并且
firewalld的
使用效能更高,稳定性更好
。
CentOS7配置防火墙的两种方法:
一、使用xml配置文件的方式配置;
方法一
cp /usr/lib/firewalld/services/http.xml /etc/firewalld/services/ firewall-cmd --reload
二、使用命令的方式配置;
方法二
##Add firewall-cmd --permanent --zone=public --add-port=80/tcp ##Remove firewall-cmd --permanent --zone=public --remove-port=80/tcp ##Reload firewall-cmd --reload
命令含义:
–zone #作用域
–add-port=80/tcp #添加端口,格式为:端口/通讯协议
–permanent #永久生效,没有此参数重启后失效
其中,方法二的配置方式是间接修改/etc/firewalld/zones/public.xml文件,
方案一也需要在public.xml里面新增<service name=”http”/>,否则http的防火墙规则不会生效,
而且两种配置方式都需要重新载入防火墙。
附:
查看防火墙状态
systemctl status firewalld.service
启动防火墙
systemctl start firewalld.service
关闭防火墙
systemctl stop firewalld.service
重新启动防火墙
systemctl restart firewalld.service
开启端口
firewall-cmd --zone=public --add-port=80/tcp --permanent
命令含义:
–zone #作用域
–add-port=80/tcp #添加端口,格式为:端口/通讯协议
–permanent #永久生效,没有此参数重启后失效
重启防火墙
firewall-cmd --reload
然后,再次查看到底开启了哪些端口号,运行如下命令:
firewall-cmd --list-ports
就可以看到刚才开启的80端口了。
[root@jeu4e40u83f7 /]# firewall-cmd --list-ports 80/tcp 25/tcp 22/tcp
停止防火墙
systemctl stop firewalld.service
禁止防火墙开机启动
systemctl disable firewalld.service
删除开启的端口
firewall-cmd --zone=public --remove-port=80/tcp --permanent
未经允许不得转载:哈勃私语 » centos7防火墙firewalld设置
本文共1305个字 创建时间:2017年9月21日16:58