firewalld火墙服务

1.Firewalld概述

动态防火墙后台程序firewalld提供了一个动态管理的防火墙,用以支持网络“zones”,以分配对一个网络及其相关链接和界面一定程度的信任。它具备对IPv4和IPv6防火墙设置的支持。它支持以太网桥,并有分离运行时间和永久性配置选择。它还具备一个通向服务或者应用程序以直接增加防火墙规则的接口
系统提供了图像化的配置工具firewall-config、system-config-firewall,提供命令行客户端firewall-cmd,用于配置firewalld永久性或非永久性运行时间的改变:它依次用iptables工具与执行数据包筛选的内核中的Netfilter通信

2.Firewalld域

这里写图片描述

3.启用火墙

[root@client ~]# yum install firewalld
[root@client ~]# firewall-config   #打开图形管理工具
[root@client ~]# systemctl start firewalld
[root@client ~]# systemctl enable firewalld
[root@client ~]# systemctl stop iptables
[root@client ~]# systemctl disable iptables

图形管理工具具体功能:
1.选择运行时(Runtime)模式或永久(Permanent)模式的配置。
2.可选的策略集合区域列表。
3.常用的系统服务列表。
4.当前正在使用的区域。
5.管理当前被选中区域中的服务。
6.管理当前被选中区域中的端口。
7.开启或关闭 SNAT(源地址转换协议)技术。
8.设置端口转发策略。
9.控制请求 icmp 服务的流量。
10.管理防火墙的富规则。
11.管理网卡设备。
12.被选中区域的服务,若勾选了相应服务前面的复选框,则表示允许与之相关
的流量。
13.firewall-config 工具的运行状态

这里写图片描述
这里写图片描述
这里写图片描述

4.用命令行接口配置防火墙

firewall-cmd --state                     #查看火墙状态
firewall-cmd --get-active-zones          #显示当前正在使用的区域
firewall-cmd --get-default-zone          #查询默认的区域名称
firewall-cmd --get-zones                 #显示可用的区域
firewall-cmd --zone=public --list-all    #列出public域中所有的信息   
firewall-cmd --get-services              #显示预先定义的服务
firewall-cmd --list-all-zones           #显示所有区域的网卡配置参数、资源、端口以及服务等信息
firewall-cmd --set-default-zone=trusted #设置默认的区域
firewall-cmd --add-source=172.25.254.155 --zone=trusted    #将源自此 IP 或子网的流量导向指定的区域
firewall-cmd --remove-source=172.25.254.155 --zone=trusted #不再将源自此 IP 或子网的流量导向某个指定区域
firewall-cmd  --list-interfaces                      #查看接口        
firewall-cmd  --get-zone-of-interface=eth0           #查看接口所在区域
firewall-cmd  --change-interface=eth0 --zone=trusted #将某个网卡与区域进行关联
firewall-cmd  --remove-interface=eth0 --zone=trusted #将某个网卡与区域解除关联
firewall-cmd  --add-interface=eth0 --zone=public     #将源自该网卡的所有流量都导向某个指定区域
firewall-cmd --add-port=8080/tcp --zone=public       #把在firewalld服务中访问8080端口的流量策略设置为允许

以上修改只是当前生效,在火墙重启之后就会失效,如果想让配置策略一直存在,就需要使用永久(Permanent)模式了,方法就是在用 firewall-cmd 命令正常设置防火墙策略时添加–permanent 参数,这样配置的防火墙策略就可以永久生效了。但是,永久生效模式有一个“不近人情”的特点,就是使用它设置的策略只有在系统重启之后才能自动生效。如果想让配置的策略立即生效,需要手动执行 firewall-cmd –reload 命令。如:

firewall-cmd  --permanent --change-interface=eth0 --zone=trusted #永久更改网卡的区域
firewall-cmd --reload           #在不改变状态的情况下重新加载火墙
firewall-cmd --complete-reload  #完全加载(会中断当前的操作)

这里写图片描述
这里写图片描述
………..截图下面省略…………….

修改firewalld域
这里写图片描述
测试:
这里写图片描述
这里写图片描述
测试:
这里写图片描述
把172.25.254.155访问时所使用的区域改为trusted
这里写图片描述
测试:
这里写图片描述
临时更改,火墙重启之后失效
这里写图片描述
永久修改:
这里写图片描述

5.direct rules

firewall-cmd --direct --add-rule ipv4 filter IN_public_allow 0 -p tcp --dport 80 -j ACCEPT #-p表示协议,-dport表示目的端口,-s主机来源,-j表示动作
如:
[root@client ~]# firewall-cmd --direct --add-rule ipv4 filter INPUT 1 -p tcp --dport 80 -s 172.25.254.155 -j ACCEPT

drop   丢弃,不做回应
reject  拒绝
accept 接受

这里写图片描述
浏览器测试
这里写图片描述

6.端口转发:

[root@localhost ~]# firewall-cmd  --permanent --add-forward-port=port=22:proto=tcp:toport=22:toaddr=172.25.254.252
success
[root@localhost ~]# firewall-cmd --permanent --add-masquerade
success
[root@localhost ~]# firewall-cmd --reload 
success

这里写图片描述
这里写图片描述

7.地址伪装

在路由器先添加一个网卡,再执行下面命令

[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth1
DEVICE=eth1
ONBOOT=yes
BOOTPROTO=none
IPADDR=172.25.0.152
PREFIX=24
[root@localhost ~]# vim /etc/sysctl.conf 
net.ipv4.ip_forward = 1
[root@localhost ~]# sysctl -p
在测试的主机上
[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0
IPADDR=172.25.0.252
GATEWAY=172.25.0.152
[root@localhost ~]# ping 172.25.254.155

在路由主机
这里写图片描述
/etc/sysconfig/network-scripts/ifcfg-eth1内容:
这里写图片描述
内核设置
这里写图片描述
在测试主机
这里写图片描述
/etc/sysconfig/network-scripts/ifcfg-eth0内容:
这里写图片描述
测试:
这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值