> Nat网关 > 第三章:怎么通过docker实现iptables防火墙模拟nat网关通信过程?

第三章:怎么通过docker实现iptables防火墙模拟nat网关通信过程?

Iptables使用nat表中的两个链,POSTROUTING,REROUTING进行路由转发,然后调试内核转发参数 echo 1 >/proc/sys/net/ipv4/ip_forward #路由转发,优点可以隐藏一些端口通过nmap扫描工具,一的一些端口扫描不到,从安全进度看,还是有一点作用的。

1,iptables 防火墙执行参数如下,已经基本参数说明

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
iptables
-t nat              # t  参数,指定nat表
-A POSTROUTING    #指定防火墙链
-s 172.17.0.0/16     #指定 私有网络路由网关
-j MASQUERADE  #伪装私有网络设备路由上网
iptables -t nat -A POSTROUTING -s 172.17.0.0/16 -j MASQUERADE  #伪装私有网络设备路由上网
iptables -t nat -A PREROUTING    #接受路由进来
-d 172.20.20.10   #指定宿主机ip地址目的是可以转换端口
-p tcp           #指定协议
-m tcp          #指定协议模块
--dport 6022     #指定映射端口
-j DNAT         #指定dnat协议
--to-destination 172.17.0.4:22   #路由之前,,指定内网ip地址和映射端口
iptables -t nat -A PREROUTING  -d 172.20.20.10 -p tcp -m tcp --dport 6022 -j DNAT --to-destination 172.17.0.4:22
iptables -t nat -A POSTROUTING  #接受路由出去
-d 172.20.20.10
-p tcp
-m tcp
--dport 22
-j SNAT
--to-source 172.17.0.4  #路由之后
iptables -t nat -A POSTROUTING -d 172.20.20.10 -p tcp -m tcp --dport 22 -j SNAT --to-source 172.17.0.4

2,Iptables 防火墙内部配置规则清单

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
</p>
<h1>Generated by iptables-save v1.4.21 on Wed Nov 23 06:21:54 2022</h1>
<dl>
<dt>*filter</dt>
<dd>INPUT DROP [0:0]   drop  #拒绝访问访问</dd>
<dd>FORWARD ACCEPT [51993:39802458]      accept  #接受访问</dd>
<dd>OUTPUT ACCEPT [7186:759070]           [7186:759070]前面表示包后面表示字节
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
COMMIT
# Completed on Wed Nov 23 06:21:54 2022
# Generated by iptables-save v1.4.21 on Wed Nov 23 06:21:54 2022
*nat</dd>
<dd>PREROUTING ACCEPT [97:10855]</dd>
<dd>INPUT ACCEPT [0:0]</dd>
<dd>OUTPUT ACCEPT [20:1520]</dd>
<dd>POSTROUTING ACCEPT [59:3548]
-A PREROUTING -d 172.20.20.10/32 -p tcp -m tcp --dport 6022 -j DNAT --to-destination 172.17.0.4:22
-A PREROUTING -d 172.20.20.10/32 -p tcp -m tcp --dport 80 -j DNAT --to-destination 172.17.0.4:80
-A POSTROUTING -s 172.17.0.0/16 -j MASQUERADE
-A POSTROUTING -d 172.20.20.10/32 -p tcp -m tcp --dport 22 -j SNAT --to-source 172.17.0.2
-A POSTROUTING -d 172.20.20.10/32 -p tcp -m tcp --dport 80 -j SNAT --to-source 172.17.0.2
COMMIT
# Completed on Wed Nov 23 06:21:54 2022

3,效果展示
第三章:怎么通过docker实现iptables防火墙模拟nat网关通信过程?
第三章:怎么通过docker实现iptables防火墙模拟nat网关通信过程?
第三章:怎么通过docker实现iptables防火墙模拟nat网关通信过程?

支付宝赞助
微信赞助

第三章:怎么通过docker实现iptables防火墙模拟nat网关通信过程?:等您坐沙发呢!

发表评论

表情
还能输入210个字