在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 ***網關。