欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

SNAT,DNAT策略及应用与防火墙配置分析

程序员文章站 2022-05-16 20:18:04
...

一、SNAT策略

1.1 SNAT策略的典型应用环境

局域网主机共享单个公网IP地址接入Internet

1.2 SNAT策略的原理

源地址转换,Source Network Address Translation
修改数据包的源地址

1.3 SNAT的典型应用环境

局域网共享上网

二、项目实操

SNAT,DNAT策略及应用与防火墙配置分析
Nat转换:入站接受PREROUTING策略匹配,出站POSTROUTING策略匹配

出站(内-外):OUTPUT--POSTROUTING(解决上网问题)
SNAT 192.168.10.0/24--->192.168.20.12
入站(外-内):PREROUTING--INPUT--FORWARD(服务映射)
DNAT 192.168.20.12--->192.168.10.11

2.1 流程解析:

具体的实现方法:

1.中间的防火墙充当路由器,开启nat功能
2.防火墙上做策略,指定192.168.10.0/24(10)的主机转换成192.168.20.12
iptables -F
iptables -t nat -I POSTROUTING -s 192.168.10.0/24 -o ens37(外网卡) -j SNAT --to-source 192.168.20.12

SNAT转换后,源地址变为网关服务器上映射的外网地址

DNAT:相当于华为路由器中的servernat的知识点,让外网的用户可以访问内网发布的服务

具体的实现方法:

1.中间的防火墙充当路由器,开启nat功能
2.防火墙上做策略,指定访问网关的某服务映射给内网服务器
iptables -F
iptables -t nat -A PREROUTING -i ens37(外网卡) -d 192.168.20.12 -p tcp --dport 80 -j DNAT --to-destination 192.168.10.11

2.2 基础设置

1.在局域网PC上

[aaa@qq.com ~]# vi /etc/sysconfig/network-scripts/ifcfg-ens33
[aaa@qq.com ~]# systemctl restart network
[aaa@qq.com ~]# ifconfig

SNAT,DNAT策略及应用与防火墙配置分析
2.在防火墙上

[aaa@qq.com ~]# vi /etc/sysconfig/network-scripts/ifcfg-ens33
[aaa@qq.com ~]# cp /etc/sysconfig/network-scripts/ifcfg-ens33 /etc/sysconfig/network-scripts/ifcfg-ens36
[aaa@qq.com ~]# vi /etc/sysconfig/network-scripts/ifcfg-ens36
[aaa@qq.com ~]# systemctl restart network
[aaa@qq.com ~]# ifconfig 

SNAT,DNAT策略及应用与防火墙配置分析

SNAT,DNAT策略及应用与防火墙配置分析
SNAT,DNAT策略及应用与防火墙配置分析

2.1.1 开启路由功能

[aaa@qq.com ~]# echo "net.ipv4.ip_forward=1" > /etc/sysctl.conf
[aaa@qq.com ~]# sysctl -p

SNAT,DNAT策略及应用与防火墙配置分析
3.外网服务器

[aaa@qq.com ~]# vi /etc/sysconfig/network-scripts/ifcfg-ens33
[aaa@qq.com ~]# systemctl restart network
[aaa@qq.com ~]# ifconfig 

SNAT,DNAT策略及应用与防火墙配置分析
以上完成基本配置

1.在防火墙进行策略

[aaa@qq.com ~]# hostnamectl set-hostname iptables
[aaa@qq.com ~]# bash
[aaa@qq.com ~]# iptables -F
[aaa@qq.com ~]# iptables -t nat -nL
[aaa@qq.com ~]# iptables -t nat -I POSTROUTING -s 192.168.10.0/24 -o ens36 -j SNAT --to-source 192.168.10.12
[aaa@qq.com ~]# iptables -t nat -L POSTROUTING 
[aaa@qq.com ~]# ping 192.168.20.13

SNAT,DNAT策略及应用与防火墙配置分析
2.在局域网PC上

[aaa@qq.com ~]# hostnamectl set-hostname client
[aaa@qq.com ~]# bash
[aaa@qq.com ~]# ping 192.168.20.13

SNAT,DNAT策略及应用与防火墙配置分析
以上实现内网到外网的上网问题

1.在局域网PC上

[aaa@qq.com ~]# yum -y install httpd
[aaa@qq.com ~]# echo "this is a tree." > /var/www/html/index.html
[aaa@qq.com ~]# systemctl start httpd
[aaa@qq.com ~]# netstat -anpt | grep httpd

SNAT,DNAT策略及应用与防火墙配置分析
2.在防火墙进行入站策略

[aaa@qq.com ~]# iptables -t nat -A PREROUTING -i ens36 -d 192.168.20.12 -p tcp --dport 80 -j DNAT --to-destination 192.168.10.11
[aaa@qq.com ~]# iptables -t nat -L
[aaa@qq.com ~]# systemctl stop firewalld
[aaa@qq.com ~]# setenforce 0

SNAT,DNAT策略及应用与防火墙配置分析

3.外网服务器

[aaa@qq.com ~]# hostnamectl set-hostname service
[aaa@qq.com ~]# bash
[aaa@qq.com ~]# curl http://192.168.20.12

SNAT,DNAT策略及应用与防火墙配置分析

相关标签: 局域网 iptables