在ASA防火墙配置IPSec ***与路由器的差异不是很大,并且原理相同。***工做原理参照上一篇,这里就不在赘述了。
算法
实验案例安全
某软件开发公司为了下降人员成本,在中小城市创建了分支公司,可是分支公司上传给总公司的数据通常为软件开发的关键业务数据,若是其被窃取,可能给公司带来难以预计的损失。做为该分支公司的网络管理员,对网络提出如下设计需求。bash
需求描述:服务器
1)开发项目小组能够经过***访问总公司研发服务器,但不能访问Internet网络
2)分公司的其余客户端能够访问Internetide
在GNS3上实验拓扑以下图:加密
具体配置以下:spa
一、在3sw上的配置设计
3sw#vlan database #建立VLAN 3sw(vlan)#vlan 10 3sw(vlan)#vlan 20 3sw(vlan)#exit 3sw#conf t 3sw(config)#int vlan 10 #配置VLAN地址 3sw(config-if)#ip add 172.16.10.254 255.255.255.0 3sw(config-if)#no sh 3sw(config-if)#int vlan 20 3sw(config-if)#ip add 172.16.20.254 255.255.255.0 3sw(config-if)#no sh 3sw(config-if)#int f1/2 3sw(config-if)#no switchport 3sw(config-if)#ip add 192.168.1.2 255.255.255.252 3sw(config)#int f1/0 3sw(config-if)#switchport access vlan 10 3sw(config-if)#int f1/1 3sw(config-if)#switchport access vlan 20 3sw(config-if)#exit 3sw(config)#ip route 0.0.0.0 0.0.0.0 192.168.1.1 #配置路由
二、在分公司ASA-1上配置orm
ASA-1# conf t #配置接口地址 ASA-1(config)# int e0/0 ASA-1(config-if)# nameif inside ASA-1(config-if)# security-level 100 ASA-1(config-if)# ip add 192.168.1.1 255.255.255.252 ASA-1(config-if)# no sh ASA-1(config-if)# int e0/1 ASA-1(config-if)# nameif outside ASA-1(config-if)# security-level 0 ASA-1(config-if)# ip add 100.0.0.1 255.255.255.252 ASA-1(config-if)# no sh ASA-1(config)# route outside 0 0 100.0.0.2 #配置路由 ASA-1(config)# route inside 172.16.0.0 255.255.0.0 192.168.1.2 ASA-1(config)# nat-control #配置NAT ASA-1(config)# nat (inside) 1 0 0 ASA-1(config)# global (outside) 1 int ASA-1(config)# access-list nonat extended permit ip 172.16.10.0 255.255.255.0 10.10.33.0 255.255.255.0 ASA-1(config)# nat (inside) 0 access-list nonat #配置NAT豁免 ASA-1(config)# crypto isakmp enable outside #启用ISAKMP/IKE ASA-1(config)# crypto isakmp policy 1 #配置ISAKMP策略 ASA-1(config-isakmp-policy)# encryption aes #配置加密算法 ASA-1(config-isakmp-policy)# hash sha #配置数字签名 ASA-1(config-isakmp-policy)# authentication pre-share #采用预共享密钥 ASA-1(config-isakmp-policy)# group 1 #指定DH密钥组
注意:配置预共享密钥有两种方式,第一种配置和路由器相同,第二种是7.0以上版本的新特性,7.0以上版本通常采用隧道组来配置密钥
第一种配置:和路由器配置相同
ASA-1(config)# crypto isakmp key ***-key address 200.0.0.1
第二种配置:采用隧道组配置,配置以下
ASA-1# tunnel-group 200.0.0.1 type ipsec-l2l ASA-1(config)# tunnel-group 200.0.0.1 ipsec-attributes ASA-1(config-tunnel-ipsec)# pre-shared-key ***-key
预共享密钥任选其一便可,接下来的配置以下:
ASA-1(config)# access-list *** extended permit ip 172.16.10.0 255.255.255.0 10.10.33.0 255.255.255.0 #ACL ASA-1(config)# crypto ipsec transform-set ***-set esp-aes esp-sha-hmac #配置IPSec变换集 ASA-1(config)# crypto map ***-map 1 match address *** #应用ACL ASA-1(config)# crypto map ***-map 1 set peer 200.0.0.1 #配置IPSec对等体设备 ASA-1(config)# crypto map ***-map 1 set transform-set ***-set #应用IPSec变换集 ASA-1(config)# crypto map ***-map interface outside #将其映射到接口
三、在ISP上配置
ISP#conf t ISP(config)#int f0/0 ISP(config-if)#ip add 100.0.0.2 255.255.255.252 ISP(config-if)#no sh ISP(config-if)#int f0/1 ISP(config-if)#ip add 200.0.0.2 255.255.255.252 ISP(config-if)#no sh
四、在总公司ASA-2上配置
ASA-2# conf t ASA-2(config)# int e0/0 ASA-2(config-if)# nameif outside ASA-2(config-if)# security-level 0 ASA-2(config-if)# ip add 200.0.0.1 255.255.255.252 ASA-2(config-if)# no sh ASA-2(config-if)# int e0/1 ASA-2(config-if)# nameif inside ASA-2(config-if)# security-level 100 ASA-2(config-if)# ip add 10.10.33.254 255.255.255.0 ASA-2(config-if)# no sh ASA-2(config)# route outside 0 0 200.0.0.2 ASA-2(config)# crypto isakmp enable outside ASA-2(config)# crypto isakmp policy 1 ASA-2(config-isakmp-policy)# encryption aes ASA-2(config-isakmp-policy)# hash sha ASA-2(config-isakmp-policy)# authentication pre-share ASA-2(config-isakmp-policy)# group 1 ASA-2(config)# crypto isakmp key ***-key address 100.0.0.1 ASA-2(config)# access-list *** extended permit ip 10.10.33.0 255.255.255.0 172.16.10.0 255.255.255.0 ASA-2(config)# crypto ipsec transform-set ***-set esp-aes esp-sha-hmac ASA-2(config)# crypto map ***-map 1 match address *** ASA-2(config)# crypto map ***-map 1 set peer 100.0.0.1 ASA-2(config)# crypto map ***-map 1 set transform-set ***-set ASA-2(config)# crypto map ***-map interface outside
防火墙和路由器的区别
防火墙因为自身IOS缘由,在配置命令方面与路由器有必定区别,但并不很是明显。这里重点介绍两个方面:
一、默认配置的区别
在创建管理链接的过程当中,cisco asa防火墙和路由器默认状况下使用的参数不一样。
Cisco asa防火墙使用的参数以下:
ASA-1(config)# show run crypto
路由器使用的参数以下:
Router#show crypto isakmp policy
防火墙不支持命令show crypto isakmp policy,要想查看管理链接的默认参数,需在初始配置下启用isakmp策略,而后经过命令show run进行观察。与路由器相比,默认的加密算法变为3DES,默认的DH组使用2,默认的设备验证方法变为预共享秘钥,而默认的HASH算法以及生存周期没有变化。
ASA防火墙采用了更为安全的默认设置,这是cisco公司设备技术革新的一种表现。须要注意的是,若是ipsec对等体双方式ASA防火墙和cisco路由器,那么使用默认的ISAKMP策略是没法创建链接的。
另外,在数据链接创建过程当中,ASA防火墙只支持ESP协议,所以,若是路由器使用AH协议实现数据验证功能,将没法与ASA成功地创建数据链接。
二、IKE协商默认是否开启
默认状况下,IKE协商在路由器中是开启的,而在ASA防火墙中是关闭的。所以,在ASA防火墙中必须使用命令crypto isakmp enable outside开启IKE协商。
三、隧道组特性的引入
严格意义上说,这并不能算是防火墙和路由器的配置差别,而防火墙从6.x版本升级到7.0版本引入的新特性,它主要用于简化ipsec会话的配置和管理。并且路由器配置共享秘钥key的命令(crypto isakmp key key-string address peer-address),ASA防火墙依然支持。
四、接口安全级别对于ipsec流量的影响。
防火墙存在一种限制,若是流量从一个接口进入,就不能从相同安全级别的端口流出。即流量不能在统一安全级别的端口之间传输,这主要是从安全方面考虑而设定的一种特性,但可能对ipsec流量形成必定的影响。
假如ASA防火墙处于网络的中心节点(如公司总部),为了实现对分公司网络流量的统一管理,要求分公司之间的访问流量必须经过总公司。这就会出现上述状况,形成分公司之间没法通讯。这时就须要使用以下命令来实现。
ASA-1(config)# same-security-traffic permit {intra-interface | inter-interface}
上面命令最后两个参数的区别:
Intra-interface参数容许流量进入和离开同一个接口,多用于L2L会话中的中心设备;
inter-interface参数容许流量进入和离开具备相同安全级别的两个不一样的接口,多用于远程访问***会话中的Easy ***网关。