自适应安全设备(ASA)上的端口地址转换(PAT)详细指南

2021年3月12日13:14:55 发表评论 936 次浏览

端口地址转换(PAT)是一种网络地址转换(NAT)在缺少公共IP地址时使用。同一子网的公共IP地址之一或接口地址用于转换。

端口地址转换(PAT):

这也称为NAT重载。这样, 许多本地(专用)IP地址被转换为单个公用IP地址。有时, 专用地址被转换为接口地址(单个)。在此, 端口号用于区分流量, 即哪个流量属于哪个IP地址。

程序:

该过程几乎与动态NAT中的过程相同, 但是请记住, 在PAT中, 多个私有IP地址被转换为单个公共IP地址。

步骤1:配置访问列表

建立说明允许条件的访问列表, 即谁应该被允许以及什么协议应该被允许。

步骤2:将访问列表应用于接口

access-group命令将用于说明执行操作(上面指定的)的方向(向外或向内)。

步骤3:创建网络组或网络对象

网络组将声明将在其上应用PAT的子网或其他子网。网络对象声明一个子网, 可以在PAT流程中进一步使用该子网进行转换。可以说, 网络组包含多个网络对象。

步骤4:PAT语句

此步骤将指定进行PAT的方向以及应转换专用IP地址的IP地址(公共IP地址)。

组态:

自适应安全设备(ASA)上的端口地址转换(PAT)1

三个路由器即Router1(IP地址-10.1.1.1/24)、Router2(IP地址-11.1.1.1/24)和Router3(IP地址-101.1.1.1)连接到ASA(IP地址-10.1.1.2/24), 名称– INSIDE和安全级别– Gi0 / 0上为100, IP地址– 11.1.1.2/24, 名称– DMZ和安全级别– Gi0 / 1上为50, IP地址– 101.1.1.2/24, 名称外和安全级别–如上图所示, 在Gi0 / 2上为0)。

在此任务中, 我们将为从INSIDE到OUTSIDE的流量以及从DMZ到OUTSIDE的流量启用PAT。

在所有路由器和ASA上配置IP地址。

在Router1上配置IP地址:

Router1(config)#int fa0/0
Router1(config-if)#ip address 10.1.1.1 255.255.255.0
Router1(config-if)#no shut

在Router2上配置IP地址:

Router2(config)#int fa0/0
Router2(config-if)#ip address 11.1.1.1 255.255.255.0
Router2(config-if)#no shut

在Router3上配置IP地址:

Router3(config)#int fa0/0
Router3(config-if)#ip address 101.1.1.1 255.255.255.0
Router3(config-if)#no shut

在ASA接口上配置IP地址, 名称和安全级别:

asa(config)#int Gi0/0
asa(config-if)#no shut
asa(config-if)#ip address 10.1.1.2 255.255.255.0
asa(config-if)#nameif INSIDE 
asa(config-if)#security level 100
asa(config-if)#exit
asa(config)#int Gi0/1
asa(config-if)#no shut
asa(config-if)#ip address 11.1.1.2 255.255.255.0
asa(config-if)#nameif DMZ
asa(config-if)#security level 50
asa(config-if)#exit
asa(config)#int Gi0/2
asa(config-if)#no shut
asa(config-if)#ip address 101.1.1.2 255.255.255.0
asa(config-if)#nameif OUTSIDE
asa(config-if)#security level 0

现在将静态路由提供给路由器。配置到Router1的静态路由:

Router1(config)#ip route 0.0.0.0 0.0.0.0 10.1.1.2

配置到Router2的静态路由:

Router2(config)#ip route 0.0.0.0 0.0.0.0 11.1.1.2

配置到Router3的静态路由:

Router3(config)#ip route 0.0.0.0 0.0.0.0 101.1.1.2

最后配置到ASA的静态路由:

asa(config)#route INSIDE 10.1.1.0 255.255.255.0 10.1.1.1
asa(config)#route OUTSIDE 101.1.1.0 255.255.255.0 101.1.1.1
asa(config)#route DMZ 11.1.1.0 255.255.255.0 10.1.1.1

对于ICMP, 请检查或使用ACL允许从较低安全级别到较高安全级别的ICMP回显应答(这样做是因为默认情况下, 不允许从较低安全级别到较高安全级别的流量)。

配置访问列表:

asa(config)#access-list traffic_out permit icmp any any 
asa(config)#access-list traffic_dmz permit icmp any any

在此, 已创建两个访问列表。

第一个访问列表名称是traffic_out, 它将允许从OUTSIDE到INSIDE的ICMP流量(具有任何IP地址和任何掩码)。

已将第二个访问列表命名为traffic_dmz, 该列表将允许从OUTSIDE到DMZ的ICMP流量(具有任何IP地址和任何掩码)。

将这些访问列表应用于ASA接口:

asa(config)#access-group traffic_out in interface OUTSIDE 
asa(config)#access-group traffic_dmz in interface DMZ

第一条语句指出访问列表traffic_out是向内应用到OUTSIDE接口的

第二条陈述指出, 访问列表traffic_dmz沿向内方向应用于DMZ接口。

INSIDE设备将能够ping OUTSIDE和DMZ设备。

任务是每当整个子网(10.1.1.0/24)流量从INSIDE到OUTSIDE以及网络(11.1.1.0/24)的网络流量从DMZ到OUTSIDE时, 在ASA上启用PAT, 它应该转换为OUTSIDE接口地址。

asa(config)#object network inside_nat
asa(config-network-object)#subnet 10.1.1.0 255.255.255.0
asa(config-network-object)#exit

首先, 指定应转换的子网。

NAT转换的方向将被指定:

asa(config)#nat (INSIDE, OUTSIDE) source dynamic INSIDE interface

将NAT应用于从DMZ到外部的流量:

asa(config)#object network dmz_nat
asa(config-network-object)#subnet 11.1.1.0 255.255.255.0
asa(config-network-object)#exit

为此流量创建NAT池:

asa(config)#object network dmz_nat_pool
asa(config-network-object)#range 120.1.1.1 120.1.1.4
asa(config-network-object)#exit

指定了nat翻译的疲劳度。

asa(config)#nat (DMZ, OUTSIDE) source dynamic DMZ interface

上面的命令指定dmz_nat中的子网应该使用PAT转换为DMZ接口的IP地址。这样, 配置PAT的过程几乎类似于动态NAT。主要区别在于, 配置外部接口IP地址而不是NAT池, 将从该IP地址中转换一个IP地址。

优点:

这是最常用的方法, 因为它具有成本效益, 因为仅使用一个真实的全局(公共)IP地址就可以将数千个用户连接到Internet。


木子山

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: