IPSEC VPN建立分为2步:Phase 1 & Phase 2
phase 1主要作用是vpn客户端和vpn接入点互相认证,以便确认对方的身份;phase2主要作用是协商针对特定的流量采用什么样的加密传输策略以及传输数据的完整性校验策略。
phase 1分为3步(共6个数据包),举例说明:
(1)A-->B :我支持的针对认证的加密策略有AES,DES,3DES...hash方法有md5/sha,认证方法采用pre-sharekey,rsa加密,rs签名,Diffie-Hellman使用Group1,2,或5,认证有效时间为x秒等
B-->A:你提出的针对认证策略第N项我同意接受使用
(2)A<-->B 执行Diffie-Hellman交换,产生公共密钥
(3)A<-->B 使用协商好的认证策略以及产生的会话密钥传输加密的pre-sharekey或者证书等,互相进行认证。
对应的Cisco Router配置举例如下:
R1(config)#crypto isakmp policy 10
R1(config-isakmp)# encr aes //使用AES加密
R1(config-isakmp)# authentication pre-share //使用预共享密钥验证
R1(config-isakmp)# group 2 //使用DH group2
R1(config-isakmp)#crypto isakmp key r1r2cisco address 172.30.2.2 //将密钥与对端进行绑定
phase 2分为2步(共3个数据包),举例说明:
(1)A-->B: 我支持的针对数据传输的策略有ah-md5-hmac,ah-sha-hmac,esp-3des,esp-md5-hmac,感兴趣的数据流为某个流,是否启用PFS等
B-->A: 我们选用其中的某个策略来作为加密传输的策略
(2)A-->B: OK,开始用这个策略传输吧
R1(config-isakmp-peer)#crypto ipsec transform-set ts esp-3des esp-sha-hmac //定义传输数据和完整性验证的策略
R1(cfg-crypto-trans)#crypto map cmap 10 ipsec-isakmp
R1(config-crypto-map)# set peer 172.30.2.2 //对端ip
R1(config-crypto-map)# set transform-set ts //将transfor-set与ipsec策略进行绑定
R1(config-crypto-map)# set pfs group2 //启用完美向前
R1(config-crypto-map)# match address loop //匹配感兴趣流
R1(config)#ip access-list extended loop
R1(config-ext-nacl)# permit ip host 1.1.1.1 host 2.2.2.2 //定义感兴趣流的访问控制列表
以上都配置好之后对于网络设备还需进行下面配置:
1. 在流量送出的接口上应用crypto map
2. 将感兴趣流的目的地址加入到路由表中(不一定非要精确匹配,只要能覆盖即可),然后将流量引导到送出接口
有些情况可能会出现返回的流量从另外的接口进入的情况,流量进入的接口不一定非要有crypto map,但是如果在所有可能返回流量的接口上写上crypto map是有好处的:当流量被crypto map中的感兴趣流匹配后,如果发现是没有被加密的流量,则直接丢弃,这样可以从一定程度上防止spoofing。
IPSEC L2L VPN使用的都是标准的公开的协议,任何厂家的设备只要支持标准的IPSEC VPN都可以实现互通。对于cisco设备默认的ISAKMP SA有效期是86400秒(1天),IPSEC SA有效期是1小时。在不同厂家互联的时候有些时候可能会忽略到有效期的问题,如果有效期不一致则一样没法连通。
R1#sh int fa0/0
FastEthernet0/0 is administratively down, line protocol is down
...<omitted>
5 minute input rate 0 bits/sec, 0 packets/sec
5 minute output rate 0 bits/sec, 0 packets/sec
...<omitted>
R1# conf t
Enter configuration commands, one per line. End with CNTL/Z.
R1(config)#int fa0/0
R1(config-if)#load
R1(config-if)#load-interval ?
<30-600> Load interval delay in seconds
R1(config-if)#load-interval 600
R1(config-if)#do sh int fa0/0
FastEthernet0/0 is administratively down, line protocol is down
...<omitted>
Input queue: 0/75/0/0 (size/max/drops/flushes); Total output drops: 0
Queueing strategy: fifo
Output queue: 0/40 (size/max)
10 minute input rate 0 bits/sec, 0 packets/sec
10 minute output rate 0 bits/sec, 0 packets/sec
...<omitted>
使用clear config all可以快速清空PIX和ASA的所有配置,不需要重新启动。
-----BEGIN PGP MESSAGE-----
Version: GnuPG v1.4.7 (MingW32) - WinPT 1.2.0
hQEMA1/nF3xFtWXLAQf/T6TvO9MQamAlnookI+ZExL4AcWTDs881l4JUeHcYoUgd
xgvN8Yyw/IylnWaLUWqfmkRVMYr6kFvv9qQdom3vnCRavFc3yRQhUFKnby4XPdDE
tMZIjGASLrsG3uTzctLjqsgwDGzc1r3PgHbEkJ/skyWfNrAmxhMTH+Cc+Hknbkao
WDEfhjCtwf6ugsW/0BRhJY2riQQgjibF5FoGhqnCJp0Z/QBObElDOZyWtI0Li2lq
w2qdUiv1ILbDGU1Nz6tyfCYz2gaYCQtvUFmDXFaAKEbx02r5n801uxbaWXp3pGng
Yds1HMQzizOIjlXYOuSQLPhminZYq+UCQbqFrjBH59LBJAEwLuUPaUidIAikOASI
KASiPoUO6go1g3VK2MwOjT860GReidkfzlKZfgdxHiEhj79ktvceOJ/lcKIUbLRA
cLFymxLvEekYAA8ETL9XGZZ0fHFhDN5V2p9RCTLZyVBQCC/aH/h3tfY/raB9Omg1
Tj0UGEKWIphL3a39rko+EoZJCI/CZCK95F9CxmkcKrruqtuZGIsLrWAJbAfiypW7
hcomu+QE24A3Ygi39HY97YqpgKL//iLQ71xE/UWU5RaPVhdkzDErTmtUrAHJU689
hzKKqLY9vOMCvpf2c4njDQ4LOOd7HwBBb52uXgHA0pOHpTbEvC49XAd4xlUgs6/g
Q0336jJ02Hy/U9Rsgd+VcSu/krJBKY7KL0eTJDsWvvjwcD8TMZT3HRPx9eScfKFL
0UFGBEKuFQXuOGnzuUw6bXZ2E/zcPvrcfutxutTVp53k6XAVkHQe7PIeV3tDfLf5
uq1Y/zP8x/ilourkKtdAAPVoa0W/VzF1YJ7zbtAq9SPqAc6fNsQtCKVBWvCLvV8H
OQPyLn67AEsjnpRMMy7MW2cw30LBeDZUUqG3TKeIDN62duHKnKp9I3u/v5xDQwgW
WJbJsJkPXlwiCwMWFFZax3r5fyiBp51yPTYuN7G6myvI+FKyePs=
=8YBr
-----END PGP MESSAGE-----
-----BEGIN PGP MESSAGE-----
Version: GnuPG v1.4.7 (MingW32) - WinPT 1.2.0
hQEMA1/nF3xFtWXLAQf/dtBz5wVlAeKyZILBcVlDyvmunAk1O/EmDL39jXEt9hgZ
PBd5F77lB8lMBhUHl/xqxrH6urZngPnG7TBfuBZbTvfZ+SGrCVlTvMyqV/Spr99t
ZyIU33D1xEM9VFE2Df/reHDxvFw/JXuAaRhFaHRSwq1tkwL9stKJMgjyTfoJMsXW
hoRDnDl2+5TFglSb7l5Z7KadHTImyO0wgdq+n/5mvFHLpgQoPT/v+C1+S3yBdqa6
G+Hm4GyhA6tH7+jRxDg29JfGziIPGNPX9irRa03M2RPRY61XjoNzAHFP9ApFtA+d
kJN7JmAcMGl1pYIsQyzA3rwKM2dBsiiZh9ZeQst0etLpASX1GdKrwpgnJUMs6//4
wrvFN7k8Ddt+lZXW6VmIb1cfEPYWDJrWwi0FUHJoqfw7/Pi74HloX0PifFz50tD5
betig8/XwFbsEdpdYF7t7kAsrrSgFyKP5D4Kgx7CCIxMZn9cchcS+7VytTQVIQAF
hJEl37D9NNDFuQ3FayifwLGwMSRQno4aLz5kieUrGl7hRh5agQlkSVz87OWDAFEb
dkILJY3MSLRUYFqZhsIzbyiiJcy8ya5ivOsRKE3GhvnVdlDq4VAT/eEK3mNzb2p3
FB/yh4JH5wLBDEhaj0peyxnNoKg4G9YoP0vlBqVKOKZMsfEgk7ariivE/1U8swg9
Y/jeTY2vDUyPQnpMSOpb46IIT2QDZApWSjt+IGwuxFkCb0B1IxlqB42OK4rEUI00
J45wGHjZr7teQJgbhS9qSGyH8KXdek1moDl+8x8cprDHRTBC8sEcGTaJOqtygoQf
tHU57vmUWNgFLt5xbMPP3hloMgBIQE58zk2yOTNFuVwmejklEvkrVC9YM98tgZZX
yVixryITiwNrvm1/A//j1Wn0gvN4WdcxCtoEUjZtbEfq2TBMARqMgteKIv9E2HvK
a50zHzD8Ofnj6xH+7a3H2vd+fP0cU+XexMMNM+eCOSTXINWJbOrvuX4pjI6JMib9
77YVPikRp34YCIGZl2/wjgcRGPLhlvUTZhFjDbAzN+F9/KQ=
=azP4
-----END PGP MESSAGE-----