原文作者: Mansur
原文链接: http://nbma.info/getvpn/
Group Encrypted Transport VPN,思科私有技术
用于内网(全局可路由)加密的VPN,不是互联网VPN(peer无法直接路由)
目前的场景是用于加密MPLS VPN,因为MPLS本身只是加标签,并没有加密
封装格式
copy原始IP头部,然后内部用ESP加密IP数据报文,不影响QoS
1 2 3 | +———-—+———-+————–+ | 原始IP头部 | esp头部 | 加密原始IP报文 | +———–+——–+————–+ |
原理
组成员Group Member向密钥服务器Key Server注册,KS上配置策略,产生一个ipsec sa,向同一组的GM推送sa和感兴趣流。
组内成员可以实现any-to-any通讯,支持单播和组播
KS:验证组成员,管理安全策略,产生组密钥,分发策略和密钥,并不能加解密数据
GM:加密设备,组播参与者,在安全和不安全区域执行路由。
GETVPN最好有组播环境,这样KS只向一个组播地址分发即可。
GDOI: Group Domain of Interpretation 公有协议,用于KS和GM之间通讯,和其他厂商兼容,UDP848
KSCP: Cooperative Protocol 协作协议,思科私有,用于主KS和备份KS通讯
协商过程
GM <—-> KS:ike第一阶段协商,验证GM,6个包工作在UDP848,不是UDP500,生成IKE SA
GM ——> KS:使用ike sa加密,提供group ID
GM <—— KS:使用ike sa加密,发送安全策略 .
GM ——> KS:使用ike sa加密,确认
GM <—— KS:使用ike sa加密,发送TEK,KEK
…..
GM <—— KS:使用KEK加密,周期更新密钥,rekey sa的密钥
…..
TKE 用于GM之间加密,ipsec sa的密钥
配置
KS配置
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 | #生成rsa密钥,用于前面rekey, ip domain name nbma.info crypto key gemerate ras label GETVPN_KEY modulus 1024 exportable #ike第一阶段,所有ks和gm的预共享密钥 crypto isakmp policy 10 authentication pre-share crypto isakmp key PRE-KEY address 10.1.1.1 crypto isakmp key PRE-KEY address 10.1.1.2 crypto isakmp key PRE-KEY address 10.1.1.254 #感兴趣流 ip access-list ex GETVPN_traffic primit ip 10.1.0.0 0.0.255.255 10.1.0.0 0.0.255.255 #rekey更新流量 ip access-list ex GETVPN_muiltucast primit udp host 10.1.1.1 eq 848 host 239.1.1.1 eq 848 #定义转换集和profile crypto ipsec transform-set TRANS esp-3des esp-md5-hmac crypto ipsec profile IPSPROF set transform-set TRANS #GDOI组,组名本地有效 crypto gdoi group GDOI_GROUP #所有的KS,GM的id要一致 identity number 66666 #指定本地作为KS服务器 server local address ipv4 10.1.1.1 #指定rsa用于签名 rekey authentication mypubkey rsa GETVPN_KEY #如果用单播rekey还需要敲:rekey transport unicast #对rekey的加密算法(可选,默认3des) rekey algorithm aes 256 #rekey更新流量 rekey address ipv4 GETVPN_muiltucast # 配置ipsec sa sa ipsec 1 match address ipv4 GETVPN_traffic profile IPSPROF reply time windows-size 3 |
GM配置
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | crypto isakmp policy 10 authentication pre-share #只需要配置主备ks的预共享密钥 crypto isakmp key PRE-KEY address 10.1.1.1 crypto isakmp key PRE-KEY address 10.1.1.2 crypto gdoi group GDOI-GROUP identity number 66666 server address ipv4 10.1.1.1 server address ipv4 10.1.1.2 crypto map GDOI-MAP 10 gdoi set group GDOI-GROUP inerface e0/0 crypto map GDOI-MAP |
其他命令
1 2 3 4 5 6 7 8 9 10 11 | #在ks上查看GM注册信息 show crypto gdoi ks member #在gm上查看gdoi show crypto gdoi #在GM上设置bypass流量,只能deny ip access-list external GM-ACL deny ip 10.1.0.0 0.0.255.255 10.1.2.0 0.0.0.255 crypto map GDOI-MAP 10 gdoi match address GM-ACL |
主备KS配置
手动同步。手敲相同的配置,包括rsa密钥对,感兴趣流,转换及,ipsec sa的lifetime
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | #在KS1上 crypto gdoi group GDOI_GROUP server local redundancy peer address ipv4 10.1.1.2 local priority 100(越大越优先) #导出KS1的key crypto key export rsa GETVPN_KEY pem terminal 3des csico123 #在KS2上导入密钥 crypto key import rsa GETVPN_KEY pem terminal 3des csico123 复制公钥 复制私钥 quit #(策略-略) crypto gdoi group GDOI_GROUP server local redundancy peer address ipv4 10.1.1.1 local priority 75 |
评论