防火墙配置NAT规则

防火墙配置NAT规则

前言

本教程仅实用于eve-ng实现防火墙配置NAT规则,同时由于笔者懒惰,做实验时偷工减料少截图少配置某些东西,因此食用本教程时出现一些不可预料的意外或者错误时请保持良好的心态,锤锤电脑什么的,千万不要锤笔者,笔者很无辜的。

使用GMS3的大佬们,本教程不适合你们,你们可以出门左拐了(其实也是挺适合的,跳过前面几个步骤就是了)

0x01画拓扑图

本拓扑图里参照实验指导书制作,因为使用的是eve-ng而非GMS3,因此我们用将3725路由器配置成一个傻瓜交换机来代替原本的拓扑图里的交换机,cloud代替host主机,VPC代替服务器。(3725配置成傻瓜交换机只需要将Slot1改为NM-16ESW,然后接口全部用fa1/0以后的接口就行了)

PS:傻瓜交换机记得初始化(开机后输入no shut以及wr就行了(大概吧,雾)

0x02配置ip地址

《实验指导书》中需要配置IP的东西有很多,经过研究,你若是为了快速完成实验,实际上你只需要配置部分ip就行了。

我是先将vpc的ip给配置了,下面给出配置命令:

1
2
VPCS>ip 192.168.108.20 255.255.255.0
VPCS>save

具体ip参考指导书的ip,其中inside区的ip用自己虚拟机的ip(因为我们需要通过云来连接自己的虚拟机,从而来管理防火墙,因此我们需要将ip配成自己虚拟机的ip)

下面我们配置防火墙的eth1口的ip

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
ciscoasa>en
Password:
ciscoasa#conf t
ciscoasa(config)#int eth1
ciscoasa(config-if)#nameif inside
INFO:Security level for "inside" set to 100 by default.
ciscoasa(config-if)#ip add 192.168.108.10 255.255.255.0
ciscoasa(config-if)#security-level 100
ciscoasa(config-if)#no shut
ciscoasa(config-if)#end
ciscoasa#wr
Building configuration...
Cryptochecksum: 844b165f 2e7ab97d 50e85646 b36511a0

6659 bytes copied in 1.60 secs (6659 bytes/sec) [OK]

ciscoasa>en
ciscoasa# conf t
ciscoasa(config)# http server enable
ciscoasa(config)# http 0 0 inside
ciscoasa(config)# end
ciscoasa# wr
Building configuration...
Cryptochecksum: 3e153522 dc020425 70c6ff0e 98438ec9

6713 bytes copied in 0.980 secs [OK] ciscoasa#

然后,我们就可以愉快地打开自己的虚拟机里的思科防火墙管理软件(ASDM)进行后续的操作啦!

0x03繁琐的策略配置(NAT规则配置)

1.设置设备名和密码

在Configuration里选择Device Setup,然后再选择Device Name/Pasword。

输入你要填写的东西。

2.配置outside和DMZ区

在Device Setup里面选择interfaces,看准自己防火墙拓扑图里面的接口,对应着配置outside和DMZ区。

其中outside的IP为209.165.200.225,mask为255.255.255.0,security-level为0

DMZ的IP为192.168.20.1 mask同上,security-level为50

3.配置全通的global策略

在Configuration里的firewall里面的Access Rules里面点击add,添加一条any到any的策略。

然后用vpc(inside区的那台)ping防火墙的dmz区的接口,outside区的接口,互联网的vpc,DMZ区的vpc。

4.配置NAT规则

①配置inside区动态PAT

在configuration ->Friewall ->NAT Rules里面选择左上角的add,从里面挑选add“Nerwork Object” 添加动态PAT

②配置DMZ区的Webserver静态NAT

其中Translated Addr里面的global-addr-230是需要自己配置的,具体方法如下:

先点击隔壁的…

然后点击add

然后如图所示

建议配置两条,一条是230一条是225

③配置DMZ区的WebServer的静态PAT

name那里可以填写你喜欢的名字,只要不跟前面的名字重复就行了。

④使用两次 NAT 对重叠的子网执行静态 NAT

在firewall->Objects->Networ Objects/Groups里面点击add添加以下的内容

GZ-Inside-Mapped:10.10.100.0/24

BJ-DMZ-Real:192.168.10.0/24

BJ-DMZ-Mapped:192.168.100.0/24

然后再回到之前的NAT Rules里面定义策略

这次直接点add就行了,不用选择(实在是要选的话就选择Add NAT Rule)

⑤对站点到站点 VPN 隧道执行 Identity NAT

在Firewall->Objects->Network Objects/Groups里面配置以下内容:

Remote-Real:10.10.10.0/24

回到firewall->Access Rules->NAT Rules里面配置策略

➢ Source Interface: Inside

➢ Destination Interface: Outside
➢ Source Address: Inside-Net

➢ Destination Address: Remote-Real

配置 Action: Translated Packet 中的下列参数:

➢ Source NAT Type:static

➢ Source Address: Inside-Net

➢ Destination Address: Remote-Real

配置 Options 中的下列参数:

➢ Enable Rule: Checked

➢ Direction: Both

⑥对远程访问的 VPN 客户端设置动态 PAT

在Firewall->Objects->Network Objects/Groups里面配置以下内容:

Remote-VPN-pool:192.168.50.0/24

(方法跟之前配置Remote-Real一模一样)

然后回到Firewall->Access Rules->NAT Rules里选择add->Add NAT Rule Before “NEtwork Object” NAT Rules定义策略

参数如下:

➢ Source Interface: Inside

➢ Destination Interface: Outside

➢ Source Address: Inside-Net

➢ Destination Address: Remote-VPN-pool

配置 Action: Translated Packet 中的下列参数:

➢ Source NAT Type:static

➢ Source Address: Inside-Net

➢ Destination Address: Remote-VPN-pool

配置 Options 中的下列参数:

➢ Enable Rule: Checked

➢ Direction: Both

搞定再选择Add Network Object配置以下属性:

➢ Name: Remote-VPN-pool

➢ Type: Network

➢ IP Address: 192.168.50.0

➢ Netmask: 255.255.255.0

➢ Add automatic Address Translation Rules: checked

➢ Type: Dynamic PAT(Hide) ➢ Translated Addr: outside

点击 Advanced 打开 Advanced NAT Settings 对话框,在 Interface 部分配置下列属性。

➢ Source Interface:outside

➢ Destination Interface:outside

最后的最后,当你做完以上繁琐的步骤后,你的截图应该跟下面的图片差不多

0x04验证

1.

在Configuration -> Firewall -> Access Rules->NAT Rules里选择add->Add ”Network Object” NAT Rule 配置以下属性

然后再点击Add Network Object

配置完成后就点击Packet Trace验证了。

(如果验证出现缺少host的显示,就要去asa里配置一条静态路由,让它进行下一跳。具体命令请百度一下,这里就不贴出来了。)

验证结果如下:

接着我们继续配置

验证

好了,做到这里基本完成本次的实验了

然后我们就可以愉快地保存下班了。

PS:建议边做边保存,不然你就等着什么都没了然后重新开始吧!!!