iptables防火墙SNAT策略和DNAT策略
1.SNAT策略及应用
(1)SNAT原理与应用:
SNAT 应用环境:局域网主机共享单个公网IP地址接入Internet(私有IP不能在Internet中正常路由)
SNAT原理:修改数据包的源地址。
(2)SNAT转换
(1)前提条件:
局域网各主机正确设置IP地址/子网掩码
局域网各主机正确设置默认网关地址
Linux网关支持IP路由转发
(2)实现方法:
编写SNAT转换规则
(1)客服端仅主机模式1,
(2)网关服务器ens33(20.0.0.100),ens36(12.0.0.30)
sysctl -p ##立即生效
(3)外网的web服务器(12.0.0.12),仅主机模式2
抓包
tcpdump Linux系统装包工具
tcp 协议 port 端口 [src/dst] net 网段 -i 网卡 -s 0 -w XXX.cap
tcp host 主机Ip
udp
icmp
网关服务器 地址转换
SNAT 内网--->外网 转换源地址
iptables -t nat -A POSTROUTING -s 内网的源地址/网段 -o 出站网卡 -j SNAT --to 源地址转换的公网IP
iptables -t nat -A POSTROUTING -s 20.0.0.0/24 -o ens36 -j SNAT --to 12.0.0.30
iptables -t nat -nL
web服务器
tcpdump -i ens33 -s 0 -w ./test2.cap
2.DNAT策略及应用
(1)DNAT原理与应用:
DNAT 应用环境:在Internet中发布位于局域网内的服务器
DNAT原理:修改数据包的目的地址。
(2)DNAT转换
(1)前提条件:
局域网的Web服务器能够访问Internet
网关的外网IP地址有正确的DNS解析记录
Linux网关支持IP路由转发
(2)实现方法:
编写SNAT转换规则
(1)外网客户端,仅主机模式2
(2)网关服务器ens33(20.0.0.100),ens36(12.0.0.30)
sysctl -p ##立即生效
搭建本地DNS服务器
重启named服务
(3)内网的web服务器(20.0.0.110),仅主机模式1
客服端设置DNS服务器地址,验证
网关服务器 地址转换
DNAT 外网-->内网 转换目的地址:端口
iptables -t nat -A PREROUTING -i 入站网卡 -d 原公网目的地址 -p 协议 --dport 原目的端口 -j DNAT --to 要转换的内网目的地址:端口
网关服务器
iptables -t nat -A PREROUTING -i ens36 -d 12.0.0.30 -p tcp --dport 80 -j DNAT --to 20.0.0.110:80
iptables -t nat -A PREROUTING -i ens36 -d 12.0.0.30 -p tcp --dport 2345 -j DNAT --to 20.0.0.110:22
iptables -nL -t nat
web服务器
systemctl status firewalld ##查看防火墙 stop关闭
systemctl enable --now httpd ##开启服务
客户端,网关服务器
客户端
ssh -p 2345 12.0.0.30
iptables -t nat -A PREROUTING -i ens33 -d 12.0.0.30 -p tcp --dport 2345 -j DNAT --to 20.0.0.110