Firewalld防火墙
Firewalld服务是红帽RHEL7系统中默认的防火墙管理工具,特点是拥有运行时配置与永久配置选项且能够支持动态更新以及"zone"的区域功能概念,使用图形化工具firewall-config或文本管理工具firewall-cmd
配置文件的位置:
firewalld 的配置储存在 /usr/lib/firewalld/ 和 /etc/firewalld/ 里的各种 XML 文件里,firewalld 优先使用 /etc/firewalld/services/ 里的文件。
通过编辑 /etc/firewalld/services/ 中的 XML 文件,服务可以被增加和删除,/usr/lib/firewalld/services/ 文件可以作为模板使用。
区域概念与作用:
防火墙的网络区域定义了网络连接的可信等级,我们可以根据不同场景来调用不同的firewalld区域,区域规则有:

特别需要注意的是firewalld服务有两份规则策略配置记录,必需要能够区分:
RunTime:当前正在生效的。
Permanent:永久生效的。
当下面实验修改的是永久生效的策略记录时,必须执行"--reload"参数后才能立即生效,否则要重启后再生效。
开启firewalld
systemctl start firewalld
systemctl enable firewalld
查看当前的区域:
[root@Centos7 ~]# firewall-cmd --get-default-zone
public
查询网卡的区域:
[root@Centos7 ~]# firewall-cmd --get-zone-of-interface=eno16777736
public
在public中分别查询ssh与http服务是否被允许:
[root@Centos7 ~]# firewall-cmd --zone=public --query-service=ssh
yes
[root@Centos7 ~]# firewall-cmd --zone=public --query-service=http
no
设置默认规则为dmz:
[root@Centos7 ~]# firewall-cmd --set-default-zone=dmz
success
让“永久生效”的配置文件立即生效:
[root@Centos7 ~]# firewall-cmd --reload
success
启动/关闭应急状况模式,阻断所有网络连接:
应急状况模式启动后会禁止所有的网络连接,一切服务的请求也都会被拒绝,当心,请慎用。
[root@Centos7 ~]# firewall-cmd --panic-on
success
[root@Centos7~]# firewall-cmd --panic-off
success
实例:
模拟训练A:允许https服务流量通过public区域,要求立即生效且永久有效:
方法一:分别设置当前生效与永久有效的规则记录:
[root@Centos7 ~]# firewall-cmd --zone=public --add-service=https
success
[root@Centos7 ~]# firewall-cmd --permanent --zone=public --add-service=https
success
方法二:设置永久生效的规则记录后读取记录:
[root@Centos7 ~]# firewall-cmd --permanent --zone=public --add-service=https
success
[root@Centos7 ~]# firewall-cmd --reload
success
模拟训练B:不再允许http服务流量通过public区域,要求立即生效且永久生效:
[root@Centos7 ~]# firewall-cmd --permanent --zone=public --remove-service=http
success [root@Centos7 ~]# firewall-cmd --reload
success
模拟训练C:允许8080与8081端口流量通过public区域,立即生效且永久生效:
[root@Centos7 ~]# firewall-cmd --permanent --zone=public --add-port=-/tcp
success
[root@Centos7 ~]# firewall-cmd --reload
success
模拟训练D:查看模拟实验中的规则:
[root@Centos7 ~]# firewall-cmd --zone=public --list-services
dhcpv6-client http https ssh
[root@Centos7 ~]# firewall-cmd --zone=public --list-ports
-/tcp
模拟实验F:设置富规则,拒绝192.168.10.0/24网段的用户访问ssh服务:
[root@Centos7 ~]# firewall-cmd --permanent --zone=public --add-rich-rule="rule family="ipv4" source address="192.168.10.0/" service name="ssh" reject"
success
模拟实验G:将访问主机888端口的请求转发至22端口:
[root@Centos7 ~]# firewall-cmd --permanent --zone=public --add-forward-port=port=:proto=tcp:toport=:toaddr=192.168.0.85
success
[root@Centos7 ~]# firewall-cmd --reload
success
在别的机器访问192.168.0.85(Centos7)
[root@wls12c ~]$ ssh -p 192.168.0.85
root@192.168.0.85's password:
Last login: Mon Jan :: from 192.168.0.85
[root@Centos7 ~]#
图形管理工具

Firewalld防火墙的更多相关文章
- 第8章 Iptables与Firewalld防火墙
章节简述: 红帽RHEL7系统已经用firewalld服务替代了iptables服务,新的防火墙管理命令firewall-cmd与图形化工具firewall-config. 本章节基于数十个防火墙需求 ...
- CentOS7使用firewalld防火墙配置端口
安装启用firewalld防火墙 CentOS7默认的防火墙是firewalld 如果没有firewalld防火墙,可以执行yum install firewalld 命令进行安装 firewalld ...
- CentOS7、REHL7的firewalld防火墙使用简单说明
title: CentOS7.REHL7的firewalld防火墙使用简单说明 categories: Linux tags: - Linux timezone: Asia/Shanghai date ...
- Linux firewalld 防火墙
Linux firewalld 防火墙 简介 RHEL 7 系统中集成了多款防火墙管理工具,其中 firewalld(Dynamic Firewall Manager of Linux system ...
- CentOS 7 打开关闭FirewallD防火墙端口命令
CentOS 7 使用firewalld代替了原来的iptables,使用方法如下: >>>关闭防火墙 systemctl stop firewalld.service ...
- 第7章 Iptables与Firewalld防火墙。
第7章 Iptables与Firewalld防火墙. Chapter7_听较强节奏的音乐能够让您更长时间的投入在学习中. <Linux就该这么学> 00:00/00:00 ...
- CentOS 7.0 关闭firewalld防火墙指令 及更换Iptables防火墙
CentOS 7.0 关闭firewalld防火墙指令 及更换Iptables防火墙 时间:2014-10-13 19:03:48 作者:哎丫丫 来源:哎丫丫数码网 查看:11761 评论:2 ...
- CentOS firewalld 防火墙操作
Centos 7 开启端口CentOS 7 默认没有使用iptables,所以通过编辑iptables的配置文件来开启80端口是不可以的 CentOS 7 采用了 firewalld 防火墙 如要查询 ...
- 9.Iptables与Firewalld防火墙
第9章 Iptables与Firewalld防火墙 章节简述: 保障数据的安全性是继保障数据的可用性之后最为重要的一项工作.防火墙作为公网与内网之间的保护屏障,在保障数据的安全性方面起着至关重要的作用 ...
- CentOS 7出现Failed to start firewalld.service: Unit is masked的解决办法和firewalld 防火墙开关
说明:刚刚使用systemctl start firewalld命令开启防火墙的时候,却开不成功,出现Failed to start firewalld.service: Unit is masked ...
随机推荐
- ROWNUMBER()、RANK()、DENSE_RANK()、NTILE1
SQLServer针对排名函数ROWNUMBER().RANK().DENSE_RANK().NTILE的研究!~ 相信大家在软件工程中经常会遇到对某些数据进行排名的问题,尤其是对于电子商务的HR来说 ...
- Day2:T1搜索 T2最小生成树
T1:广搜+判断矩形 注:如何判断搜的是否为矩形: 在广搜的时候,记录下边界的坐标,然后枚举一遍过去,如果搜到"."就是牛群,否则就是房间 瞥了一眼ccy的做法,据说是floodf ...
- elasticsearch文档-modules
elasticsearch文档-modules modules 模块 cluster 原文 基本概念 cluster: 集群,一个集群通常由很多节点(node)组成 node: 节点,比如集群中的每台 ...
- URL 调度器(URL dispatcher)
URL 调度器(URL dispatcher) 在刚开始接触 django 的时候, 我们尝试着从各种入门文档中创建一个自己的 django 项目, 需要在 mysite.urls.py 中配置 UR ...
- SharePoint SPHierarchyDataSourceControl+SPTreeView
今天使用SPHierarchyDataSourceControl和SPTreeView来显示SharePoint文档库层级结构的过程中,发现一直在报下面的错误: The target 'ctl00$c ...
- match in shell scripts
for iter_ in $(seq 1 $END); do strLabel=`expr $i \* 200` echo $strLabel done
- .NET接口和类 反射的差异性发现
1 背景 在项目中使用反射,反射出某类型的所有属性(Property)和对应的属性值.起初为了性能考虑在模块首次加载就反射类型的所有属性并将其存入字典.根据一般的编程规范——基于接口编程,所以首次传入 ...
- python alembic which comes from SQLalchemy
alembic it's tutorial: http://alembic.readthedocs.org/en/latest/tutorial.html
- jsp传值乱码解决办法
在jsp中,我们经常从数据库读取数据返回客户端,但我们常常在制作时出现乱码现象,所以我们可以用<%request.setCharacterEncoding("UTF-8"); ...
- POJ 3900 The Robbery
大意:和背包的问题相似,第 i 个箱子有 i 颗钻石.钻石的重量,价值给出.然后再M的重量下背尽量多价值的钻石. 思路:直接暴搜然后剪枝.因为数据范围的原因无法用DP. #include <cs ...