Linux防火墙——SNAT、DNAT
创始人
2025-06-01 20:37:31
0

目录

NAT

一、SNAT策略及作用

1、概述

SNAT应用环境

SNAT原理

SNAT转换前提条件

1、临时打开

2、永久打开

3、SNAT转换1:固定的公网IP地址

4、SNAT转换2:非固定的公网IP地址(共享动态IP地址)

二、SNAT实验

配置web服务器(192.168.247.99/24)

 配置网关服务器(192.168.247.100/12.0.0.1)

 配置外网服务器

配置网关服务器的iptables规则

二、DNAT策略与应用

DNAT应用环境

DNAT原理

DNAT转换前提条件

DNAT的转换

DNAT转换2:

在内网上配置

在网关服务器添加iptables规则

测试外网是否能访问内网

tcpdump——linux抓包


NAT

NAT:network address transtation,支持PREROUTING,INPUT,OUTPUT,POSTROUTING四个链

请求报文:修改源/目标IP

响应报文:修改源/目标IP,根据跟踪机制自动实现

NAT的实现分为下面类型:

  • SNAT:source NAT,支持POSTROUTING,INPUT,让本地网络中的主机通过某一特定地址访问外部网络,实现地址伪装,请求报文:修改源IP
  • DNAT:destination NAT 支持PREROUTING,OUTING,把本地网络中的主机上的某服务开放给外部网络访问(发布服务和端口映射),但隐藏真实IP,请求报文:修改目标IP
  • PNAT:port nat,端口和IP都进行修改

序号目标
1192.168.247.101:972012.0.0.1:80
212.0.0.1:8012.0.0.100:80
312.0.0.100192.168.100.101
412.0.0.10012.0.0.1
5192.168.100.100

一、SNAT策略及作用

1、概述

SNAT应用环境

        局域网主机共享单个公网IP地址接入Internet(私有IP不能在Internet中正常路由)

SNAT原理

源地址转换

修改数据包的源地址

SNAT转换前提条件

1、局域网各主机已正确设置IP地址、子网掩码、默认网关地址

2、Linux网关开启IP路由转发

2、开启SNAT的命令

linux系统本身是没有转发功能,只有路由发送数据

SNAT选项:

  • to-source
  • random

MASQUERADE:基于nat表的target,适用于动态的公网IP,如:拨号网络

MASQUERADE选项

  • to-ports port
  • random

iptables -t nat -A POSTROUTING -s 12.0.0.0/24 ! -d 192.168.247.0/24 -j MASQUERADE

1、临时打开

echo 1>/proc/sys/net/ipv4/ip_forward

sysctl -w net.ipv4.ip forward=1

2、永久打开

vim /etc/sysctl.conf

net.ipv4.ip_forward=1            #将次行写入配置文件

1

sysctl -p                               #读取修改后的配置

3、SNAT转换1:固定的公网IP地址

                                                             可换成单独ip      出站外网网卡             外网ip

iptables -t nat -A POSTROUTING -s 192.168.247.0/24 -o ens33 -j SNAT --to 10.0.01

#配置SNAT策略,实现SNAT功能,将所有192.168.247.0这个网段的ip改为10.0.0.1

iptables -t nat -A POSTROUTING -s 192.168.247.0/24 -o ens33 -j SNAT --to-source 10.0.0.1-10.0.0.10

4、SNAT转换2:非固定的公网IP地址(共享动态IP地址)

iptables -t nat -A POSTROUTING -s 192.168.247.0/24 -o ens33 -j MASQUERADE

二、SNAT实验

 1、环境准备

web服务器ip:192.168.247.99(nat1)关闭防火墙和selinux、开启http服务

网关服务器内网ip地址:192.168.247.100

                   外网ip地址:12.0.0.1          关闭防火墙和selinux、开启http服务

外网ip地址:12.0.0.10(nat2)

VMware的虚拟网络编辑器中默认nat模式网段:192.168.247.0  nat2模式网段:12.0.0.0

配置web服务器(192.168.247.99/24)

1、选择网卡模式为nat模式

2、修改ens33网卡

 

3、重启网络服务

systemctl restart network

4、 ping网关测试

5、 关闭防火墙、selinux ,安装http服务

 6、开启http服务

 配置网关服务器(192.168.247.100/12.0.0.1)

1、添加一块虚拟网卡

 2、关闭防火墙,selinux

3、配置ens36网卡 

配置ens33网卡

 

  4、重启网络,查看ip

 4、关闭防火墙和selinux

systemctl stop firewalld

setenforce 0

5、安装http服务

yum install httpd -y

 6、开启http服务

 配置外网服务器

1、修改网卡模式

2、配置网卡

 

3、重启网卡服务,查看ip

4、网络联通测试

开启SNAT

配置网关服务器的iptables规则

iptables -nL              #查看规则
iptables -nL -t nat     #查看规则
iptables -F                #清除iptables的规则
iptables -F -t nat       #清除iptables的规则

二、DNAT策略与应用

DNAT应用环境

在internet中发布位于局域网内的服务器

DNAT原理

修改数据包的目的地址

DNAT转换前提条件

  • 局域网的服务器能够访问internet
  • 网关的外网地址有正确的DNS解析记录
  • linux网关开启ip路由转发

vim /etc/sysctl.conf 
net.ipv4.ip_forward = 1 
sysct1 -p

DNAT的转换

发布内网的web服务

#把从ens33进来的要访问web服务的数据包目的地址转换为 192.168.247.102
iptables -t nat -A PREROUTING -i ens33 -d 12.0.0.1 -p tcp--dport 80 -j DNAT --to 192.168.247.102

iptables -t nat -A PREROUTING -i ens33 -d 12.0.0.1 -p tcp--dport 80-j DNAT --to-destination 192.168.247.102
                             入站|外网网卡 | 外网ip                            内网服务器ip

iptables -t nat -A PREROUTING -i ens33 -p tcp --dport 80-j DNAT --to 192.168.247.11-192.168.247.20

DNAT转换2:

发布时修改目标端口

#发布局域网内部的OpenSSH服务器, 外网主机需使用250端口进行连接
iptables-t nat -A PREROUTING -i ens33 -d 12.0.0.1 -p tcp--dport 250-jDNAT --to 192.168.100.102:22

在内网上配置

#在内网上安装httpd并开启服务
[root@localhost yum.repos.d]# yum install -y httpd
[root@localhost yum.repos.d]# systemctl start httpd
 
#关闭防火墙和selinux
[root@localhost yum.repos.d]# systemctl stop firewalld.service 
[root@localhost yum.repos.d]# setenforce 0

在网关服务器添加iptables规则

#先清空规则
[root@localhost yum.repos.d]#iptables -F -t nat
#添加规则
[root@localhost yum.repos.d]#iptables -t nat -A PREROUTING -i ens38 -d 12.0.0.1 -p tcp --dport 80 -j DNAT --to 192.168.100.102
 
#查看规则
[root@localhost yum.repos.d]#iptables -nL -t nat
Chain PREROUTING (policy ACCEPT)
target     prot opt source               destination         
DNAT       tcp  --  0.0.0.0/0            12.0.0.1             tcp dpt:80 to:192.168.100.102
 
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
 
Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         
 
Chain POSTROUTING (policy ACCEPT)
target     prot opt source               destination    

测试外网是否能访问内网

#在外网服务器上
[root@localhost ~]# curl 12.0.0.1
 
#在内网服务器上
[root@localhost yum.repos.d]# tail /etc/httpd/logs/access_log 
127.0.0.1 - - [02/Nov/2021:18:05:31 +0800] "GET / HTTP/1.1" 403 4897 "-" "curl/7.29.0"
12.0.0.100 - - [02/Nov/2021:18:19:45 +0800] "GET / HTTP/1.1" 403 4897 "-" "curl/7.29.0"

tcpdump——linux抓包

tcpdump tcp -i ens33 -t -s 0 -c 100 and dst port ! 22 and src net 192.168.1.0/24 -w ./target.cap

  • tcp:ip icmp arp rarp 和 tcp、udp、icmp这些选项等都要放到第一个参数的位置,用来过滤数据包的类型
  • -i ens33:只抓经过接口ens33的包
  • -t:不显示时间戳
  • -s 0:抓取数据包时默认抓取长度为68字节。加上-s 0后可以抓到完整的数据包
  • -c 100:只抓取100个数据包
  • dst port !22:不抓取目标端口是22的数据包
  • src net 192.168.1.0/24:数据包的源网络地址为192.168.1.0/24。net:网段,host:主机
  • -w ./target.cap:保存成cap文件,方便用wireshark分析

相关内容

热门资讯

日常等车时看到的行业细节 干了五年户外广告投放,养成了一个职业病:但凡路过公交候车亭,总会多看两眼——不是看广告好不好看,而是...
黄金回收行业标准制定有哪些核心... 贵金属回购市场的需求背景 近年来随着黄金投资和消费市场的发展,黄金回收相关需求持续攀升。不同群体的诉...
全球黑色星期二!AI交易“崩盘... 【导读】AI交易为何“崩盘”? 中国基金报记者 泰勒 大家,你们今天还好吗?! AI交易在全球范围内...
原创 6... 年初抢金条的人还在站岗,如今金店柜台前冷冷清清 黄金又跌了。 6月23日,伦敦现货黄金价格日内急跌逾...
狂融294亿美元!SK海力士冲... 韩国股市再度迎来重磅消息。 周三,韩国存储芯片龙头SK海力士宣布,计划在7月10日登陆纳斯达克,通过...
比特币跌破6万!AI吸走资金、... 比特币正在为机构化转型付出代价。散户买盘萎缩、ETF资金持续外流、企业持仓者潜在抛售压力上升,加之A...
原创 默... 欧洲近期试图复刻1985年广场协议的剧本,德国总理默茨呼吁欧盟27国联合行动,要求中国签订类似协议以...
怎么选 泛娱乐赛道直播公司孵化... 泛娱乐直播创业的行业发展背景 近年来泛娱乐直播赛道持续保持增长态势,据公开数据资料显示,2024年国...
原创 腰... 最近黄金市场凉得彻底。各大品牌足金饰品克价跌破1300元关口,北京菜百6月21日报价已经掉到1260...
ST中装:公司主要银行账户已全... 证券之星消息,ST中装(002822)06月24日在投资者关系平台上答复投资者关心的问题。 投资者提...
2026年开窗机行业趋势与战略... 一、开篇引言:市场格局重塑下的选择逻辑 步入2026年,全球建筑智能化与绿色节能政策的叠加驱动,使开...
资金全面转向科技,传统消费企业... 近期 A 股出现明显风格切换,老牌消费资金持续流出,机构与传统上市公司纷纷加码半导体、算力赛道。 先...
合肥保利翡翠天奕具体交房时间是... 对于众多购房者而言,“合肥保利翡翠天奕具体交房时间是什么时候?能按时交房吗?”是心中最关切的问题。根...
港股风向标|恒指连续杀跌后企稳... 财联社6月24日讯(编辑 冯轶)今日港股短线企稳,三大指数集体收涨。截至收盘,恒生指数涨0.33%,...
瑞众人寿达州中支被罚17万,涉... 蓝鲸新闻6月24日讯,近日,国家金融监督管理总局达州监管分局发布行政处罚决定书,剑指瑞众人寿保险有限...
美国最担心的事还是来了,中国加... 最近这段时间,国际金融圈子里有一笔账,算得各家央行心里都不太踏实。 截至2026年春季,美国国债总规...
马斯克,不是万亿富豪了 资产历史性超过万亿美元不到两周,特斯拉、SpaceX掌门人埃隆·马斯克的身价近日快速下跌。 据中新经...
突发!金价跌破4000美元,近... 每经记者:杜宇 记者|杜宇 编辑|何小桃 杜恒峰 校对|金冥羽 金银价格大跳水。 6月24日晚,现货...
粗粮吃越多越好?很多糖友吃错升... 控糖圈一直流传多吃粗粮稳血糖,不少糖友直接三餐全吃粗粮、顿顿杂粮,不仅胃胀消化不良,餐后血糖反而不降...
持续大跌!刚刚,黄金跌破400... 潮新闻客户端 记者 吴恩慧 6月24日,贵金属再次大跌。 截至发稿时,现货黄金大跌近3%,跌破400...