标签:覆盖 block 模式 记录 time set ipv4 关联 http
防火墙-firewalld
Firewalld服务是RHEL7中默认的防火墙管理工具
特点:(1) 运行时配置 (2) 永久配置 (3) 支持动态更新 (4) zone区域概念
方法:命令行:firewall-cmd 图形化:firewall-config
区域定义了网络连接的可信等级:
区域 |
默认策略 |
|
trusted |
允许所有数据包 |
|
home |
拒绝流入数据包,除非与输出数据包相关或ssh\mdns\ipp-client\samba-client\dhcpv6-client服务 |
|
internal |
等同于home区域 |
|
work |
拒绝流入数据包,除非与输出数据包相关或ssh\ipp-client\dhcpv6-client |
|
public |
拒绝流入数据包,除非与输出数据包相关或ssh\dhcpv6-client |
|
external |
拒绝流入数据包,除非与输出数据包相关或ssh |
|
dmz |
拒绝流入数据包,除非与输出数据包相关或ssh |
|
block |
拒绝流入数据包,除非与输出数据包相关 |
|
drop |
拒绝流入数据包,除非与输出数据包相关 |
命令行管理工具(字符管理工具)
高效的管理配置防火墙
参数 |
作用 |
--get-default-zone |
查询默认区域的名称 |
--set-default-zone=<区域名称> |
设置默认区域(永久生效) |
--get-zones |
显示可用的区域 |
--get-services |
查询预先定义的服务 |
--get-active-zones |
显示当前正在使用的区域与网卡名称 |
--add-source |
将来源IP或子网流量指向某个区域 |
--remove-source |
不在将来源IP或子网流量指向某个区域 |
--add-interface=<网卡名称> |
将来自于该网卡的所有流量都指向某个指定区域 |
--change-interface=<网卡名称> |
将某个网卡与区域做关联 |
--list-all |
显示当前区域的网卡配置参数、资源、端口以及服务等信息 |
--list-all-zones |
显示所有区域的网卡配置参数、资源、端口以及服务等信息 |
--add-service=<服务名> |
设置允许该服务的流量 |
--add-port=<端口/协议> |
允许该端口的流量 |
--remove-service=<服务名> |
不在允许该服务的流量 |
--remove-port=<端口/协议> |
不在允许该端口的流量 |
--reload |
立即生效覆盖当前 |
firewalld服务有两份规则策略配置记录:
runtime:当前正在运行的
permanent:永久生效的
做永久生效的实验时需要使用参数”--reload”来让他不停止服务重新加载配置文件
lab begin~:
1. 查看当前区域:
[root@CnBlogs ~]# firewall-cmd --get-default-zone
public
[root@CnBlogs ~]#
[root@CnBlogs ~]# firewall-cmd --get-zone-of-interface=eno16777728
public
[root@CnBlogs ~]#
[root@CnBlogs ~]# firewall-cmd --zone=public --query-service=ssh
yes
[root@CnBlogs ~]# firewall-cmd --zone=public --query-service=http
no
[root@CnBlogs ~]#
[root@CnBlogs ~]# firewall-cmd --set-default-zone=dmz
success
[root@CnBlogs ~]# firewall-cmd --get-default-zone
dmz
[root@CnBlogs ~]#
[root@CnBlogs ~]# firewall-cmd --reload
success
[root@CnBlogs ~]#
[root@CnBlogs ~]# firewall-cmd --panic-on
[root@CnBlogs ~]# firewall-cmd --panic-off
实验1:允许https服务流量通过public区域,并且让它永久生效
[root@CnBlogs ~]#firewall-cmd --permanent --zone=public --add-service=https
success
[root@CnBlogs ~]# firewall-cmd --zone=public --list-all
public
interfaces:
sources:
services: dhcpv6-client https ssh
ports:
masquerade: no
forward-ports:
icmp-blocks:
rich rules:
实验2:不在允许http服务流量通过public区域,立即生效切永久生效
[root@CnBlogs ~]# firewall-cmd --permanent --zone=public --remove-service=http
success
[root@CnBlogs ~]# firewall-cmd --reload
success
实验3:允许8080和8081端口流量通过public区域,
[root@CnBlogs ~]# firewall-cmd --zone=public --add-port=8080-8081/tcp
success
[root@CnBlogs ~]# firewall-cmd --zone=public --list-ports
8080-8081/tcp
[root@CnBlogs ~]#
实验4:将网卡的区域是修改为external区域,重启后生效
[root@CnBlogs ~]# firewall-cmd --permanent --zone=external --change-interface=eno16777728
success
[root@CnBlogs ~]# firewall-cmd --get-zone-of-interface=eno16777728
dmz
[root@CnBlogs ~]#
实验5:设置富规则,让192.168.10.0/24网段的pc不能访问本机的ssh服务
富规则:用于服务、端口、协议的详细配置
[root@CnBlogs ~]# firewall-cmd --permanent --zone=public --add-rich-rule="rule family="ipv4" source address="192.168.10.0/24" service name="ssh" reject"
success
[root@CnBlogs ~]# firewall-cmd --permanent --zone=public --list-rich-rules
rule family="ipv4" source address="192.168.10.0/24" service name="ssh" reject
[root@CnBlogs ~]#
linux[基础]-27-[防火墙]-[firewalld]-[03]
标签:覆盖 block 模式 记录 time set ipv4 关联 http
原文地址:http://www.cnblogs.com/msl23/p/7583174.html