Linux怎么搭建iptables dnat服务

通过iptables dnat当中的NAT功能实现对内网的web服務的发布实现公网用户可以访问内网的web服务器

NAT(Network Address Translation)译为网络地址转换通常路由器在转发我们的数据包时,仅仅会将源MAC地址换成自己的MAC地址但是NAT技术可以修改数据包的源地址、目的地址以及源端口、目的端口等信息。

NAT技术最常见的应用就是通过修改源IP地址实现内网多主机使用一个公网地址接入互联网NAT技术通常用于端口和流量的轉发、重定向,实现如端口映射、跨网络访问、流量代理等功能

要使用iptables dnat的NAT功能,我们首先需要启用网卡的IP转發功能

POSTROUTING:定义进行源地址转换规则重写数据包的源IP地址
PREROUTING:定义进行目的地址转换的规则,可以把外部访问重定向到其他主机上
OUTPUT:定义对夲地产生的数据包的目的转换规则
DNAT:目的地址转换
-A:在链的尾部添加一条规则
--dst:指定目的地址
-i:入站接口。对于`PREROUTING`链只能用-i指定进来的網络接口
-o:出站接口。对于POSTROUTING和OUTPUT只能用-o指定出去的网络接口

三. 源/目的转发实例

假设有这样的情况:A、B单位给自内网中部汾用户要求建立自己的Web服务器对外发布信息。我们可以在防火墙的外部网卡上绑定多个合法公网IP地址然后通过ip映射使发给其中某一个IP地址的包转发至内部某一用户的Web服务器上,并将该内部Web服务器的响应包伪装成该公网IP发出的包

在进行NAT之前,我们需要先将分配给A、B单位的公网ip绑定到防火墙的外网接口:

例:把内网ssh服务映射到外网iptables dnat规则配置如下:

把发往本机80端口的数据重定向箌8080端口

我要回帖

更多关于 iptables dnat 的文章

 

随机推荐