二十四、Linux的防火墙策略管理

二十四、Linux的防火墙策略管理

实验环境

主机A :IP 172.254.0.11 白色框
主机B: 内网:IP:172.254.0.10 外网:192.254.0.109 黑色框
主机C :IP 192.168.0.110 黑色框

24.1 防火墙介绍

24.1.1 防火墙介绍

防火墙是一组规则。当数据包进出受保护的网络区域时,进出内容(特别是关于其来源、目标和使用的协议等信息)会根据防火墙规则进行检测,以确定是否允许其通过。

24.1.2 防火墙管理工具

iptables 是 Linux 系统上管理防火墙规则的工具。另一方面,firewalld 也是 Linux 机器上管理防火墙规则的工具。
iptables和firewalld将用户的安全设定执行到内核的netfilter中,他们的作用都是用于维护规则,而真正使用规则干活的是netfilter。

24.1.3 防火墙管理工具的安装以及切换

  • 防火墙管理工具的安装

    述
  • 防火墙管理工具的切换

24.2 防火墙策略的永久保存

  • 方法一:修改配置文件iptables-save > /etc/sysconfig/iptables

    当做实验时可将原来的文件保存
  • 方法二:直接保存:service iptables save

24.3 iptables的使用

24.3.1 三表五链

  • 三表:链的集合
标的名称存放的链
filterINPUT;OUTPUT;FORWARD (过滤数据包)
natPREROUTING;POSTOUTING ;INPUT ;OUTPUT(用于网络地址转换)
mangleINPUT ; OUTPUT;FORWARD ;POSTROUTING ;PREROUTING

表的含义:

在

查看三表:


在

  • 五链:规则的集合
链的名称解释
PREROUTING数据包进入路由表之前,对数据包做路由选择前应用此链路中的规则
INPUT进来的数据包应用此规则链中的规则
FORWARD转达数据包应用此条数据包的规则
OUTPUT外出的数据包应用此规则链中的规则
POSTROUTING数据包做路由选择后发送到网卡接口之前应用此条链中的规则

24.3.2 iptables的基本命令

  • iptables策略记录文件 :/etc/sysconfig/iptables
  • iptables常用命令
iptables的常用命令意义
-t指定表名(默认的表名为filter表)
-n不做解释
-L查看
-A添加策略(策略顺序依次叠加)
-P指定协议
–dport指定目的端口号
-s源地址
-j指定动作“ACCEPT允许”“DROP 丢弃”“REJECT 拒绝”“SNAT 源地址转换”“DNAT ,目的地址转换”
-N新建链
-E更改链的名称
-X删除链
-D删除指定规则
-I插入规则(可指定具体的位置,默认在第一条插入)
-R更改规则
-P更改默认规则(只能设定为ACCEPT以及DROP)
-F清除所有规则
-m扩展各种模块
  • 举例

    在这里插入图片描述
    在这里插入图片描述

24.3.3 state模块

state模块是iptables的扩展模块,可以让iptables实现 连接追踪机制 ,它把’‘连接’'分为四种状态。通过state模块判断报文是为了回应我们之前发出的报文还是主动向我们发送的报文,可以防止恶意攻击主动连接到你的主机;还可对RELATED,ESTABLISHED,我们所信任的数据包,指定防火墙规则,避免多条规则检测等待,提高数据传输效率。

数据包状态意义
NEW这个数据包是一条接收到的第一个数据包
ESTABLISHED正在建立的连接,只要一个数据包发送并接到应答,那么这个连接中的其他数据包的状态就为此状态
RELATED此状态数据包是指被动生产的响应数据包,而且这个数据包不属于现在任何连接的数据包,是和一个已建立的连接相关的
INVALID一个呗无法识别或者这个包没有任何状态,一般这种数据包都是被拒绝的
  • 让防火墙允许通过ssh访问主机和不能通过ssh访问主机
    设置防火墙使得172.254.0.11不能通过ssh访问172.254.0.10


重新设置防火墙可以重新使用ssh访问

24.3.4 iptables-NAT表的地址转换

24.3.4.1 SNAT源地址转换
  • 在主机A设定网关

  • 设置开启机子的内核路由功能

  • 在主机B设置地址转换
  • 主机A就可以ping通主机C。
24.3.4.2 DNAT目的地址转化
  • 在主机B上设置DNAT

24.4 firewalld

24.4.1 firewalld的域

  • 域的介绍
意义/允许那种服务
trusted接受所有的网络连接
home用于家庭网络;允许接受ssh mdns ipp-client samba-client dhcp-client
work工作网络 ; ssh ipp-client dhcp-cilent
public公共网络; ssh dhcp-client
dmz军级网络 ;ssh
block拒绝所有
drop丢弃 ;所有数据全部丢弃无任何回复
internal内部网络; ssh mdns ipp-client samba-client dhcp-client
externalipv4网络地址伪装转发; sshd
libvirt
  • 域的查看:

24.4.2 firewalld的基本管理命令

  • firewalld的配置目录


  • firewalld的模块目录
  • 基本命令
命令意义
irewall-cmd --state查看火墙状态
firewall-cmd --get-active-zones查看火墙中生效的域
firewall-cmd --get-default-zone查看默认域
firewall-cmd --list-all查看默认域中的火墙策略
firewall-cmd --list-all --zone=work查看指定域的火墙策略
firewall-cmd --set-default-zone=trusted设定默认域
firewall-cmd --get-services查看所有可以设定的服务
firewall-cmd --permanent --remove-service=cockpit移除服务( --permanent #永久)
firewall-cmd --reload重新加载火墙的规则配置
firewall-cmd --permanent --add-source=172.25.254.0/24 --zone=block指定数据来源访问指定域
firewall-cmd --permanent --remove-source=172.25.254.0/24 --zone=block删除自定域中的数据来源
firewall-cmd --permanent --remove-interface=ens224 --zone=public删除指定域的网络接口
firewall-cmd --permanent --add-interface=ens224 --zone=block添加指定域的网络接口
firewall-cmd --permanent --change-interface=ens224 --zone=public更改网络接口到指定域
  • 设定默认域
  • 查看所有设定服务
  • 指定数据来源访问指定域-将某地址加入拒绝域

    在
  • 删除指定域中的数据来源-删除拒绝域中的某地址实现正常通信

24.4.3 firewalld的高级规则

  • 设定拒绝172.168.0.11 拒绝通过ssh访问

    在述
  • 移除上述设定实现正常访问

在这述

24.4.4 firewalld的NAT规则

24.4.4.1 SNAT源地址转换
  • 在主机B设定地址伪装功能
  • 主机A可以连接主机C
  • 在主机C上查看发现连接地址为主机B
24.4.4.2 DNAT目的地址转换
  • 在主机B上设置端口转发规则,将22端口的数据包目的地址转换为主机A的地址
  • 用主机C连接主机B时,发现地址显示为主机A
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值