ASA上实现IPSec VPN 、NAT 技术

  R1模拟上海总公司的内网,R3模拟南京分公司的内网;ASA1是上海总公司出口防火墙,ASA2是南京分公司的出口防火墙;R2模拟internet。

  需求:

  实现总公司和分公司的内部资源共享,并且保证数据传输时是安全的,内网能正常上internet。

  分析发现:

  1.实现两公司内部资源共享,就要使用VPN ,保证数据安全得使用IPSec技术实现vpn。

  2.实现内网能正常上网,就要使用NAT技术(地址转换),但地址转换导致IPSec vpn不能正常工作,这时就要配置NAT豁免,使两公司内网之间的流量不做NAT转换。

  基本配置:

  R1(config)#interfa 0/0

  R1(config-if)#ipadd 192.168.10.1 255.255.255.0

  R1(config-if)#noshutdown

  R1(config)#iproute 0.0.0.0 0.0.0.0 192.168.10.2

  ASA1(config)#inter e0/0

  ASA1(config-if)#nameif inside

  ASA1(config-if)#ip add 192.168.10.2 255.255.255.0

  ASA1(config-if)#no shutdown

  ASA1(config-if)#inter e0/1

  ASA1(config-if)#nameif outside

  ASA1(config-if)#ip add 12.0.0.1 255.255.255.252

  ASA1(config-if)#no shutdown

  ASA1(config)#route outside 0.0.0.0 0.0.0.0 12.0.0.2

  R2(config)#interfa 0/1

  R2(config-if)#ipadd 12.0.0.2 255.255.255.252

  R2(config-if)#noshutdown

  R2(config-if)#interffa 0/0

  R2(config-if)#ipadd 22.0.0.1 255.255.255.252

  R2(config-if)#noshutdown

  ASA2(config)#intere0/0

  ASA2(config-if)#nameif outside

  ASA2(config-if)#ip add 22.0.0.2 255.255.255.252

  ASA2(config-if)#no shutdown

  ASA2(config-if)#inter e 0/1

  ASA2(config-if)#nameif inside

  ASA2(config-if)#ip add 192.168.30.1 255.255.255.0

  ASA2(config-if)#no shutdown

  ASA2(config)#route outside 0.0.0.0 0.0.0.0 22.0.0.1

  R3(config)#interfa 0/1

  R3(config-if)#ipadd 192.168.30.2 255.255.255.0

  R3(config-if)#noshutdown

  R3(config)#iproute 0.0.0.0 0.0.0.0 192.168.30.1

  配置IPSecVPN:

  (配置站点到站点的vpn ,首先得保证L2L之间能正常通信,并且公网IP地址是固定的。)

  ASA1(config)#crypto isakmp enable outside//在ASA外网口启用ISAKMP.

  IKE阶段1:

  ASA1(config)#crypto isakmp policy1//创建isakmp策略并指定策略编号

  ASA1(config-isakmp-policy)#encryption aes//指定对称加密算法

  ASA1(config-isakmp-policy)#hash sha//指定HMAC验证使用的算法

  ASA1(config-isakmp-policy)#authentication pre-share//指定验证的方式

  ASA1(config-isakmp-policy)#group 2//指定DH 密钥组

  ASA1(config-isakmp-policy)#lifetime 120//配置管理连接的生存周期

  ASA1(config)#crypto isakmp key 1234 address 22.0.0.2//为对端创建预共享密钥

  IKE阶段2配置:

  ASA1(config)#access-list110 permit ip 192.168.10.0255.255.255.0 192.168.30 255.255.255.0

  //配置crypto ACL ,定义保护的流量

  ASA1(config)#crypto ipsec transform-set benet1 esp-aes esp-md5-hmac //配置传输集

  ASA1(config)#crypto map benet 1 match address 110//调用crypto acl

  ASA1(config)#crypto map benet 1 setpeer 22.0.0.2//指定IPSec对等体

  ASA1(config)#crypto map benet 1 settransform-setbenet1//指定传输集

  将cryptomap 应用到接口上:

  ASA1(config)#crypto map benet interface outside

  ASA2的配置:

  ASA2(config)#crypto isakmp enable outside//在ASA外网口启用ISAKMP.

  ASA2(config)#crypto isakmp policy 1

  ASA2(config-isakmp-policy)#encryption aes

  ASA2(config-isakmp-policy)#authentication pre-share

  ASA2(config-isakmp-policy)#group 2

  ASA2(config-isakmp-policy)#lifetime 120

  ASA2(config)#crypto isakmp key 1234 address 12.0.0.1

  ASA2(config)#access-list 110 permit ip 192.168.30.0 255.255.255.0 192.168.10.0 255.255.255.0

  ASA2(config)#crypto ipsec transform-set benet1 esp-aes esp-md5-hmac

  ASA2(config)#crypto map benet 1 match address 110

  ASA2(config)#crypto map benet 1 set peer 12.0.0.1

  ASA2(config)#crypto map benet 1 set transform-set benet1

  将cryptomap 应用到接口上:

  ASA2(config)#crypto map benet interface outside

  小结:完成上述配置,IPSec VPN就做通了。用ping命令可以测试是否成功。

  配置地址转换

  ASA1(config)# nat(inside)10192.168.10.0 255.255.255.0

  ASA1(config)#global (outside) 10 interface

  ASA2(config)# nat(inside) 10 192.168.30.0 255.255.255.0

  ASA2(config)#global (outside) 10 interface

  小结:添加这些命令,内网就可以上网了(用telnet测试,在R2上配置远程管理),但IPSec VPN 就不能工作了,因为ip地址在ASA上被转换了,导致VPN验证失败。所以要配置NAT豁免,使两个内网的流量不被NAT.

  配置NAT豁免:

  ASA1(config)#access-list nonat extended permit ip 192.168.10.0 255.255.255.0 192.168.30.0255.255.255.0

  ASA1(config)# nat(inside) 0 access-list nonat

  ASA2(config)#access-list nonat extended permit ip 192.168.30.0 255.255.255.0 192.168.10.0255.255.255.0

  ASA2(config)# nat(inside) 0 access-list nonat

  配置完上面这些所有需求都可以满足了。

 

上一篇:安卓防火墙 PS DroidWall

下一篇:使用路由和远程访问服务为Hyper-V中虚拟机实现NAT上网