【防火墙】nat链、规则保存、数据抓包


前言

本博客内容仅为记录博主思路,仅供参考,一切以自己实践结果为准。


一、定义

文章核心内容定义。

二、nat

2.1 SNAT

2.1.1 工作原理

  • 源地址转换:POSTROUTING链,将私网IP转换为公网IP,并随机赋予一个端口号,使私网能够访问公网
  • 目的地址转换:PREROUTING链,通过出站时赋予的端口号,将公网转换为私网IP,找到私网内对应主机
  • 局限性:一个局域网内,一般只能实现100-200台主机同时使用

2.1.2 案例

iptables -nL -t nat
#查看nat表中的链规则

iptables -F -t nat
#清空nat表中的链规则

iptables -t nat -A POSTROUTING -s 192.168.13.0/24 -o ens33 -j SNAT --to 12.0.0.1
#将从ens33网卡出去的网段为192.168.13.0的源地址转换为网段为12.0.0.1的源地址(此时会随机赋予一个端口号,仅作为接收回信确认主机时使用)

2.2 DNAT

2.2.1 工作原理

  • 目的地址转换:POSTROUTING链,将指向服务器公网IP转换为指向服务器对应的私网IP
  • 端口转换:将外网访问指定的端口,通过转换变为内网对应的端口号
  • 意义:保护服务器IP地址不会暴露在公网之中

2.2.2 案例

iptables -t nat -A PREROUTING -i ens33 -d 12.0.0.1 -p tcp --dport 80 -j DNAT --to 192.168.13.20:80
#将从ens33网卡进来的,目的IP为12.0.0.1,协议为tcp,端口为80的数据,转换为目的为192.168.13.20,端口80

三、filter

3.1 案例

iptables -t filter -A INPUT -i ens33 -p icmp -j REJECT
#设置filter表中INPUT链默认拒绝所有从ens33网卡传输进来的icmp协议数据包

iptables -t filter -I INPUT 1 -i ens33 -p icmp -s 192.168.13.0/24 -j ACCEPT
#在filter表的INPUT链的第一条规则上方,插入允许从ens33网卡进来的192.168.13.0网段的icmp协议的数据包

三、规则保存

3.1 iptables防火墙加载顺序

  • 默认加载规则:/etc/sysconfig/iptables(每次重启防火墙都会自动加载该配置文件的内容)
  • 导出防火墙规则:iptables-save > 路径(将现在防火墙的规则,导出到指定文件,也可覆盖默认配置文件)
  • 导入防火墙规则:iptables-restore < 路径(将指定路径文件中的防火墙规则加载并执行)

四、数据抓包

4.1 tcpdump

  • tcpdump 协议 选项 参数(协议必须放在第一个位置,声明抓取协议类型)
选项作用
-i 网卡抓取经过指定网卡的数据包
-t不显示时间戳
-s 0抓取完整的数据包(否则默认抓取68字节)
-c 数量抓取指定数量的包
dst port 端口抓取经过指定端口的数据包
!取反抓取
src net IP/掩码抓取指定IP地址传输的数据包
-w 路径.cap将数据包保存为cap文件,方便分析

五、思维导图

在这里插入图片描述

六、结语

总结:想要学得好,唯有多敲多练。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

雪碧不要气

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值