IPSec安全協(xié)議: ESP:可以數(shù)據(jù)摘要和加密
AH:只能進(jìn)行數(shù)據(jù)摘要,不能加密數(shù)據(jù)
IPSec封裝模式:
傳輸模式:不改變原有的IP包頭,用于主機(jī)與主機(jī)之間
隧道模式:增加新的IP頭,用于私網(wǎng)與私網(wǎng)之間通過公網(wǎng)進(jìn)行通信
IPSec模式:
tunnel mode:穿越公網(wǎng)
transparent mode:企業(yè)內(nèi)部私網(wǎng)通私網(wǎng),不穿越公網(wǎng)
加密:DES、3DES、AES
數(shù)據(jù)摘要:MD5、SHA
對稱密匙交換:DH1、DH2
IPSec VPN的工作原理:
1.啟動IKE階段1:身份認(rèn)證,建立一條安全的通信(IKE policy)
-IKE(ISAKMP) policy:加密算法:DES
Hash算法:MD5
DH算法 :DH1
身份認(rèn)證方法:pre-share
存活時(shí)間:lifetime
2.定義認(rèn)證標(biāo)識,即密匙。
3.啟動IKE階段2:協(xié)商IPSec參數(shù)(transform set)
-transform set:加密算法:DES
Hash算法:MD5
安全協(xié)議:ESP
封裝模式:Tunnel
存活時(shí)間:lifetime
4.感興趣數(shù)據(jù)流(ACL中不要用any來代替,不然會出現(xiàn)問題)
5.創(chuàng)建crypto map
6.將crypto map應(yīng)用到接口上
配置前準(zhǔn)備:
1.配置前網(wǎng)絡(luò)是通的
2.確認(rèn)IP協(xié)議號50、51,UDP端口500不會被ACL所阻塞
3.如果被阻塞,則配置以下幾條命令:
access-list 102 permit ahp host 172.30.2.2 host 172.30.1.2
access-list 102 permit esp host 172.30.2.2 host 172.30.1.2
access-list 102 permit udp host 172.30.2.2 host 172.30.1.2 eq isakmp
IPSec VPN(site to site:路由器)配置:
步驟1:IKE policy
R1:
開啟IKE:conf t
crypto isakmp enable
crypto isakmp policy 10
加密算法:encryption des
Hash算法:hash md5
DH算法組:group 1
身份認(rèn)證方式:authentication pre-share
存活時(shí)間:lifetime 86400
end
檢查命令:show crypto iskmp policy
步驟2:定義密匙
crypto isakmp key 0(明文) 623208099abc add 23.1.1.3
6(密文)
步驟3:定義transform set
conf t
安全協(xié)議:crypto ipsec transform-set ccie sep-des
封裝模式:mode tunnel
end
檢查命令:show crypto ipsec transform-set
步驟4:用ACL定義需要IPSec保護(hù)的流量
access-list 120 permit tcp 10.1.1.0 0.0.0.255 192.168.1.0 0.0.0.255
步驟5:定義crypto map
crypto map cisco 10 ipsec-isakmp
需要IPSec保護(hù)的流量的ACL:match add 120
VPN對端的IP地址:set peer 23.1.1.3
協(xié)商建立IPSec SA的方式:set transform-set ccie
檢查命令:show crypto map
步驟6:應(yīng)用到端口上 int f 0/0
crypto map cisco
end
注:1.IPSec VPN不能穿越NAT,即如果出口路由器配置了NAT,則允許NAT的IP就不允許通過IPSec VPN。
要想通過IPSec VPN,就要在NAT的ACL中拒絕IPSec VPN的感興趣數(shù)據(jù)流。
2.IPSec VPN定義感興趣數(shù)據(jù)流時(shí),不能用any。
PIX配置:
(1)配置ISAKMP策略
crypto isakmp policy 1
encryption 3des
hash sha
authentication pre-share
group 2
exit
(2)定義認(rèn)證標(biāo)識
tunnel-group 12.1.1.1 type ipsec-l2l
tunnel-group 12.1.1.1 ipsec-attributes
pre-shared-key cisco123
exit
(3)IPSec transform
crypto ipsec transform-set ccie esp-3des esp-sha-hmac
(4)定義感興趣流
access-list vpn permit ip 192.168.1.0 255.255.255.0 10.1.1.0 255.255.255.0
(5)創(chuàng)建crypto map
crypto map jincan 1 match address vpn
crypto map jincan set peer 12.1.1.1
crypto map jincan set transform-set ccie
(6)將crypto map和ISAKMP應(yīng)用到外接口上
crypto map jincan interface outside
crypto isakmp enable outside
end
注:1.防火墻只能是擴(kuò)展ACL,且是寫掩碼,不是反掩碼。
2.定義感興趣流時(shí)也不能出現(xiàn)any。
3.IPSec VPN的流量也不能穿越NAT。
ASA(remote access)配置:
ASA配置:
(1)建立本地?cái)?shù)據(jù)庫,用于遠(yuǎn)程VPN撥入時(shí)使用,也可用AAA代替
username jincan password sjc08099
(2)建立ISAKMP policy
crypto isakmp policy 10
authentication pre-share
encryption des
hash md5
exit
(3)IPSec transform
crypto ipsec transform-set spoto esp-des esp-md5-hmac
(4)建立dynamic-map
crypto dynamic-map spoto 10 set transform-set spoto
(5)將dynamic-map和crypto map關(guān)聯(lián)起來
crypto map spoto 10 ipsec-isakmp dynamic spoto
(6)應(yīng)用到外網(wǎng)接口
crypto map spoto interface outside
crypto isakmp identity address
crypto isakmp enable outside
(7)創(chuàng)建地址池:撥入VPN獲取到的IP地址
ip local pool spoto 172.16.10.150-172.16.10.200 mask 255.255.255.0
(8)定義認(rèn)證標(biāo)識(組名“spoto”和預(yù)共享密碼“spoto”在VPN客戶端上要用到)
tunnel-group spoto type ipsec-ra
tunnel-group spoto ipsec-attributes
pre-shared-key spoto
exit
(9)設(shè)置撥入認(rèn)證
tunnel-group spoto general-attributes
address-pool spoto
authentication-server-group LOCAL
access-list 100 permit ip 10.1.1.0 255.255.255.0 172.16.10.0 255.255.255.0
(10)定義VPN撥入流不允許NAT
nat (inside) 0 access-list 100
(11)配置用戶組策略:隧道分離、地址池
group-policy spoto internal
group-policy spoto attributes
split-tunnel-policy tunnelspecified
split-tunnel-network-list value 100
tunnel-group spoto general-attributes
default-group-policy spoto
end
!
注:1.IPSec建立的隧道是邏輯隧道。
2.IPSec建立的隧道在設(shè)計(jì)時(shí)就只支持IP單播,并且也不支持組播,所以IGP動態(tài)路由協(xié)議的流量不可能穿越IPSec隧道,
并且也不支持非IP協(xié)議的流量。
P2P GRE over IPSec VPN:
使用IPSec VPN建立隧道時(shí)不能使用動態(tài)路由協(xié)議,結(jié)合GRE就可以了。
配置:
R1:
int tunnel 1
ip add 1.1.1.1 255.255.255.0
tunnel source 12.1.1.1
tunnel destination 23.1.1.3
no shut
exit
接下來IPSec VPN的配置一模一樣,除了定義感興趣不一樣:替換
access-list 100 permit gre host 12.1.1.1 host 23.1.1.3