运维木子小李架构师之路
当前位置: 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,效果展示


「梦想一旦被付诸行动,就会变得神圣,如果觉得我的文章对您有用,请帮助本站成长」

分享到:
赞(0) 打赏
多谢大佬的支持

支付宝扫一扫打赏

微信扫一扫打赏

标签:

上一篇:

下一篇:

相关推荐

0 条评论关于"第三章:怎么通过docker实现iptables防火墙模拟nat网关通信过程?"

最新评论

    暂无留言哦~~

博客简介

精彩评论

站点统计

  • 文章总数: 29 篇
  • 草稿数目: 0 篇
  • 分类数目: 14 个
  • 独立页面: 0 个
  • 评论总数: 9 条
  • 链接总数: 6 个
  • 标签总数: 12 个
  • 注册用户: 48 人
  • 访问总量: 8,711,964 次
  • 最近更新: 2023年5月21日
服务热线:
 17608504224

 QQ在线交流

 旺旺在线