IPSecVPN详解深入浅出简单易懂讲解.docx

上传人:b****7 文档编号:10719154 上传时间:2023-02-22 格式:DOCX 页数:46 大小:1.84MB
下载 相关 举报
IPSecVPN详解深入浅出简单易懂讲解.docx_第1页
第1页 / 共46页
IPSecVPN详解深入浅出简单易懂讲解.docx_第2页
第2页 / 共46页
IPSecVPN详解深入浅出简单易懂讲解.docx_第3页
第3页 / 共46页
IPSecVPN详解深入浅出简单易懂讲解.docx_第4页
第4页 / 共46页
IPSecVPN详解深入浅出简单易懂讲解.docx_第5页
第5页 / 共46页
点击查看更多>>
下载资源
资源描述

IPSecVPN详解深入浅出简单易懂讲解.docx

《IPSecVPN详解深入浅出简单易懂讲解.docx》由会员分享,可在线阅读,更多相关《IPSecVPN详解深入浅出简单易懂讲解.docx(46页珍藏版)》请在冰豆网上搜索。

IPSecVPN详解深入浅出简单易懂讲解.docx

IPSecVPN详解深入浅出简单易懂讲解

IPSecVPN羊解

1.IPSec概述

IPSec(ipsecurity)是一种开放标准的框架结构,特定的通信方之间在IP层通过加密和数据摘要(hash)等手段,来保证数据包在Internet网上传输时的私密性(confidentiality)

完整性(dataintegrity)和真实性(originauthentication)。

IPSec只能工作在IP层,要求乘客协议和承载协议都是IP协议

由^增加的IP头IPSet头]

被封装的原始IP包

0

必须是1P协议

誉须是1F协议

1.1.通过加密保证数据的私密性

★私密性:

防止信息泄漏给XX的个人

★通过加密把数据从明文变成无法读懂的密文,从而确保数据的私密性

1.2.对数据进行hash运算来保证完整性

★完整性:

数据没有被非法篡改

★通过对数据进行hash运算,产生类似于指纹的数据摘要,以保证数据的完整性

对数据和密钥一起进行hash运算

★攻击者篡改数据后,可以根据修改后的数据生成新的摘要,以此掩盖自己的攻击行为。

★通过把数据和密钥一起进行hash运算,可以有效抵御上述攻击。

 

问题:

怎样在双方之间安全地传递密钥?

DH算法的基本原理

生成一个整数pf]生成一个整数q

把p发送到对端>

.—i把q发送到对雄

根据0q生成g■]_根据中g生吨

生成密钥羽I有生成密钥別

把血=扌&发送j刈「厂

到对端:

:

■!

Yb|把妒旷Xb笈送

Key=Yaz:

Xb

=ggX泸Xb)

:

J到对端

Kev=Yb^Xa/上二最后得到的=gC;QCb*Xa)对称密钥

—丿

1.3.通过身份认证保证数据的真实性

★真实性:

数据确实是由特定的对端发出★通过身份认证可以保证数据的真实性。

常用的身份认证方式包括:

Pre-sharedkey,预共享密钥

RSASignature,数字签名

1.3.1.预共享密钥

预共享密钥,是指通信双方在配置时手工输入相同的密钥。

 

本地

远端

Hash

vJ弓生成的Hash>

S

接收到的Hash_L

132.数字证书

★RSA密钥对,一个是可以向大家公开的公钥,另一个是只有自己知道的私钥。

★用公钥加密过的数据只有对应的私钥才能解开,反之亦然。

★数字证书中存储了公钥,以及用户名等身份信息。

本地

Hash

公钥

+身份信息

Hash

数字签

Hash

\数字签名

Internet

解密

数字证书

对祢—★身份信息窸钥

 

2.IPSec框架结构

 

IPSec框架

可选择的算法

ESP

DES

MD5

DHi

AH

3DES

SHA

DH2

 

2.1.IPSec安全协议

网络认证协议,只能进行数据摘要(hash),不能实现数

IPSec安全协议描述了如何利用加密和hash来保护数据安全

★AH(AuthenticationHeader)

据加密

ah-md5-hmac、ah-sha-hmac

★ESP(EncapsulatingSecurityPayload)

摘要(hash)

封装安全载荷协议,能够进行数据加密和数据

esp-sha-hmac

esp-des、esp-3des、esp-md5-hmac

22IPSec封装模式

IPSec支持两种封装模式:

传输模式和隧道模式

♦传输模式:

不改变原有的IP包头,通常用于主机与主机之间。

原始IP包IP头数据

AH对除了TTL等变化值以外的整个IP包进行h剧运算

ESPIP头一]~ESP头「数据ESPtrailerESPauth

IOTI

IhashI

♦隧道模式:

增加新的ip头,通常用于私网与私网之间通过公网进行通信。

原始TP包

r?

数据

AH

新IP头

AH头

IP头数据

lmsh

ESP

新出头

出F头

山头数据

ESPtrailer

ESPauth

1

hash

3.IPSec与NAT

3.1.AH模式

AH模式无法与NAT—起运行,因为AH对包括IP地址在内的整个IP包进行hash运

 

3.2.ESP模式

 

♦只进行地址映射时,

ESP可与NAT—起工作。

♦进行端口映射时,需要修改端口,而ESP已经对端口号进行了加密和/或hash,所以将无

法进行。

6員匸端口号被加密

7,没法改,真郁阍.

IP头ESP头TCP/UDP端口数据ESPfrailei'ESPautli

11

♦启用IPSecNAT穿越后,会在ESP头前增加一个UDP头,就可以进行端口映射。

「NATr可以改

1口号了*太棒了

>ti

IP头新UDP头

ESP头TCP/UDP端口数据ESPtrailei'ESPautli

加密

4.

IPSec安全通道协商过程

♦需要保护的流量流经路由器,触发路由器启动相关的协商过程。

♦启动IKE(Internetkeyexchange,密钥管理协议)阶段1,对通信双方进行身份认证,并在

两端之间建立一条安全的通道。

♦启动IKE阶段2,在上述安全通道上协商IPSec参数。

♦按协商好的IPSec参数对数据流进行加密、hash等保护。

4.1.IKE密钥交换协议

Internet密钥交换(IKE)解决了在不安全的网络环境(如Internet)中安全地建立或更新共享密钥的问题。

IKE是非常通用的协议,不仅可为IPsec协商安全关联,而且可以为SNMPv3、RIPv2、OSPFv2等任何要求保密的协议协商安全参数。

一、IKE的作用当应用环境的规模较小时,可以用手工配置SA;当应用环境规模较大、

参与的节点位置不固定时,IKE可自动地为参与通信的实体协商SA,并对安全关联库(SAD)

维护,保障通信安全。

二、IKE的机制IKE属于一种混合型协议,由Internet安全关联和密钥管理协议

(ISAKMP)和两种密钥交换协议OAKLEY与SKEME组成。

IKE创建在由ISAKMP定义的框架上,沿用了OAKLEY的密钥交换模式以及SKEME的共享和密钥更新技术,还定义了它自己的两种密钥交换方式。

IKE使用了两个阶段的ISAKMP:

第一阶段,协商创建一个通信信道(IKESA),并对该信道进行验证,为双方进一步的

IKE通信提供机密性、消息完整性以及消息源验证服务;

第二阶段,使用已建立的IKESA建立IPsecSA。

IKE共定义了5种交换。

阶段1有两种模式的交换:

对身份进行保护的“主模式”交

换以及根据基本ISAKMP文档制订的“野蛮模式”交换。

阶段2交换使用“快速模式”交

换。

IKE自己定义了两种交换:

1为通信各方间协商一个新的Diffie-Hellman组类型的“新

组模式”交换;2在IKE通信双方间传送错误及状态消息的ISAKMP信息交换。

1•主模式交换主模式交换提供了身份保护机制,经过三个步骤,共交换了六条消息。

三个步骤分别是策略协商交换、Diffie-Hellman共享值、nonce交换以及身份验证交换(如图2所示)。

I3AKMT

百怫云帀正确

童瞬■式苏正确

2.野蛮模式交换野蛮模式交换也分为三个步骤,但只交换三条消息:

头两条消息协商

策略,交换Diffie-Hellman公开值必需的辅助数据以及身份信息;第二条消息认证响应方;

第三条消息认证发起方,并为发起方提供在场的证据(如图3所示)。

團3.塁座模武亦换狀碎换圉

3.快速模式交换快速模式交换通过三条消息建立IPsecSA:

头两条消息协商IPsecSA

的各项参数值,并生成IPsec使用的密钥;第二条消息还为响应方提供在场的证据;第三

条消息为发起方提供在场的证据(如图4所示)。

发起方传送

另一个散列值

圈4•,趨模式交换状态辂换閤

4.新组模式交换通信双方通过新组模式交换协商新的Diffie—Hellman组。

新组模式

交换属于一种请求/响应交换。

发送方发送提议的组的标识符及其特征,如果响应方能够接

5.ISAKMP信息交换参与IKE通信的双方均能向对方发送错误及状态提示消息。

这实

际上并非真正意义上的交换,而只是发送单独一条消息,不需要确认(如图6所示)。

42

IKE阶段1

HostB

协商建立IKE安全协商建立IKE安全

通道所使用的参数通道所使用的参数

♦协商建立IKE安全通道所使用的参数,包括:

加密算法、Hash算法、DH算法、身份认证方法、存活时间

PolicyZD3DES2HADH1

Pre-sharelifetime

♦上述IKE参数组合成集合,称为IKEpolicy。

IKE协商就是要在通信双方之间找到相同的policy。

协商建立IKE安全k协商建宜IKE安仝

通il所使用的参数通道所恢用的参数

交换对称密钥・:

交换对称密钥

双方身份认证,二双方身俏认证

建立IKE安全通逍.——■建立IKE安全通道

43IKE阶段2

加密算法、Hash算法、安全协议、封装模式、存活时间

IVajisform10

Transform20

DES

3DES

MD5

SHA

ESP

ESP

Tunnel

Tunnel

lifetime

lifetime

IKE与IPSec安全参数的比较

44IPSecSA

♦PSecSA(安全关联,SecurityAssociation)

SA由SPD(securitypolicydatabase)和SAD(SAdatabase)组成。

/

SPD

SPI加密Hash

封装模式liletiine

两端成功协商IPSec参数/

加密算法/

hush算法/

封装模式

SAD

lifetime

SPT|目的IP地址

安全协仪

|~安全协谏

IPSecSA(安全关联,SecurityAssociation):

♦SPI(SecurityParameterIndex),由IKE自动分配

♦发送数据包时,会把SPI插入到IPSec头中

♦接收到数据包后,根据SPI值查找SAD和SPD,从而获知解密数据包所需的加解密算法、

hash算法等。

♦一个SA只记录单向的参数,所以一个IPSec连接会有两个IPSecSA。

♦使用SPI可以标识路由器与不同对象之间的连接。

Internet

□口□□□口口口口口

□□□□□□□□LiUDDCOD

□□□□□

口口仃□口

屯5

*f192.168.12.1SPW9

ESP/DESfMD5tunn创28800

192.168.24

SPM2

ESP/3DES/SHAtunnel28800//

 

♦达到lifetime以后,原有的IPSecSA就会被删除

 

♦如果正在传输数据,

系统会在原SA超时之前自动协商建立新的

SA,从而保证数据的传输

不会因此而中断。

4.5.IPsecSA示例

Routerlttshcryptolpsecsainterface:

Ethernet9/1

Crypto财ptag:

(localaddr.192,1^6,2.1

localid^nt(addr/nasK/prot/port):

(1»-17.36-141/2&5.25S.255.255/0/0)remoteident(adtfr/md^k/prot/port):

(10.17-37.152/2SS.2S5-255.255/0/0)current_peer:

192

〔中间習略)

inboundespsas:

5pi:

0xftC9O2&86(28fl512?

942)tr^nsforniresp-d^s.

inusesettings-

sLot:

O,connid:

2f)Q0tflow_id:

1,cryptomap:

nijn^p

satiming:

remainingke^lifetime(k/sec)2(U607999/357U)[Usize:

8b^tes

rpplaydetectionsupport:

H

outbound?

5p5as:

spi;0MCFECD65O(3m^e50$?

transform?

esp-d^5T

inhepsettings^^lunra&L,>

slot:

0TconnId:

2001,Flouid:

2.cryptonap:

树yntapsatiming:

renwiningkpi|lifetime(l

CJ<6D7999/3574)[0size:

8bytes

replaydetectionsupport;H

5.Ipsecphase1andphase2

(一)IPSecVPN隧道的建立过程分为两个阶段:

第一个阶段:

分为两种模式主模式(MainMode和野蛮模式(又称主动模式

Aggressive)

第二个阶段:

快速模式(QuickMode)区别:

主模式与野蛮模式的区别:

(1)野蛮模式协商比主模式协商更快。

因为主模式需要交互6个消息,而野蛮模式只需要交互3个消息;

(2)主模式协商比野蛮模式协商更严谨、更安全。

因为主模式在“消息5&消息6”中对ID信息进行了加密。

而野蛮模式由于受到交换次数的限制,ID消息在“消息1&消息2”中以明文的方式发送给对端。

即主模式对对端身份进行了保护,而野蛮模式则没有。

(二)两个阶段分别完成任务:

(1)第一个阶段IKE设置,有三个任务需要完成:

(a)协商一系列算法和参数(这些算法和参数用于保护隧道建立过程中的数据);(b)必须计算出两边使用的加密KEY值,例如,两边使用3DES算法加密,3DES

算法则需要一个密码,这个密码两端必须一样,但又不能在链路上传递。

(c)对等体的验证,如何才能知道对端就是我要与之通信的对端。

这里验证有三种方法:

预共享、数字签名和加密临时值。

上面一系列过程都是IKE(Internet密钥交换协议,大多数厂商都把这个叫做

VPNsGateway)这个协议来实现。

对于第一阶段需要注意以下几点:

(a1)只有remotevpn和easyvpn是积极模式的,其他都是用主模式来协商的;

(a2)让IKE对等体彼此验证对方并确定会话密钥,这个阶段用DH进行密钥交

换,创建完IKESA后,所有后续的协商都将通过加密和完整性检查来保护。

(a3)第一阶段帮助在对等体之间创建了一条安全通道,使后面的第二阶段过程协商受到安全保护。

(2)第二阶段:

协商IPSecSA使用的安全参数,创建IPSecSA(SA可以加密两个对等体之间的数据,这才是真正的需要加密的用户数据),使用AH或ESP来加密IP数据

流。

至此IPSecVPN隧道才真正建立起来。

(三)综上,有如下结论:

第一阶段作用:

对等体之间彼此验证对方,并协商出IKESA,保护第二阶段中IPSecSA

协商过程;

第二阶段作用:

协商IPSec单向SA,为保护IP数据流而创建;

 

(四)举例验证:

以主模式,AH协议来简单分析一下IPSecVPN链接建立的过程(附带

文):

第一个阶段三个任务,分别用6个消息来完成,每两个为一组,这些消息的具体格式

取决于使用的对等体认证方法,使用预共享密钥进行验证的主模式(

6条)协商过程使用

ISAKMP消息格式来传递(基于UDP,端口号为500)。

6条消息如下:

乩6:

肌纠士”1.1,3

"L1.S

n

1.1.2

*10.L.1.3

'Lrzult.■rj1tlt_..1

HHUcde)

13&8.7421U^OCHM).1.L3

10.1.1.2

UAK4Lh

ldci3.tltyProtec.ticn

:

MainMade)

375.75598200110.1.L2

10.1.1.3

儡KM貝

Jlc沾Xltd?

SFS7F195TM1IDHL1.3

】SLI»2

ISAKW?

IdentityPtartecticni|

MainM:

d<;

39S.7f33ZK»ilD.LL2

0.1.:

.3

:

久KX?

.=:

」仇.It.L....

ALViLd-j

:

mooiio.1.:

355.

7^52500110.1,1.:

10h1.L3

ISAKMF

rdrnT:

i7

?

rrwecrl:

n

Miln

Mode■-

36e.

Z;2:

0300i10.1.1.3

10.L.1.2

L7AU1?

iGtality

PxG^ec.ti;n

JJg

373.

7D9582Q0110.儿1.2

10.3

ISAKMP

rc^T-ir

?

y「-rt*-Ji

Main

M讣

338.

75393700410.1.13

10.1.1.t

I5AKMF

lGf-it;tyr

Frciecti:

n

M±:

3

Mice

“8

+■1?

10.1.1.2

剁騎!

苏。

Etejontrirr⑵EObiishMO也匸肌螢ptur"(3160bits)

IJL..匕7:

一」;;_门L.,,JJiJr上J:

..Jy二u1..:

一.7.7一二1.W

fflJrrttmeiProtoc咽Src;1・3尊・D则m】・】』【10,L」二^^件斥■苦输旳TFT也址

刑~.乂0ht”皿r;HJ:

广干.D书希.拔_7:

?

'

因imemnsemntFAsswiaTlansadNeyManajjeni'eniFratocol口^丁刿部分

第一阶段

>■预共手密钥

O证书

T林數:

1-39

模式

处证豊洼')

:

t-H;

―—_—一一一一

DPD

SH^

MD5

¥1

SHA

2d

3DES

V

3DES

V

DES

V

DHGroup2

V

DHGroupZ

V

DHGroups

V

◎主穆式O野宙種式

10800_秒]12^86400*缺省值-10800)

O开启⑥关闭

(1)准备工作:

在前2条消息发送之前,发送者和接受者必须先计算出各自的cookie(可以防重放和

DOS攻击),这些cookie用于标识每个单独的协商交换消息。

 

cookie――RFC建议将源目的IP、源目的端口、本地生成的随机数、日期和时间进行散列操作。

Cookie成为留在IKE协商中交换信息的唯一标识,实际上cookie是用来防止

DOS攻击的,它把和其他设备建立IPSec所需要的连接信息不是以缓存的形式包存在路由

器里,而是把这些信息HASH成个cookie值。

(2)1&2消息:

消息1:

由发送方(协商发起端)发起,携带一些参数,发送方向接收方发送一条包含

一组或多组策略提议(Raisecom工业路由器中是多组),在策略提议中包括5元组信息:

加密算法一一DES;

散列算法一一MD5-HMAC;

DHDiffie-Hellman组-2;

认证方式一一预共享;

IKESA寿命。

DPC

如下是Raisecom中高级选项配置的策略:

*TmRiV39)

0

0证為|

(认证方式采用“预共享”方式)

(对于DPD,具体作用不知道,默认是关闭)

F面简要介绍一下上述五元组信息:

(a)协商模式:

可以选择主模式(MainMode)或者野蛮模式(Aggressive)。

当选择主模式时,只能使用IP地址作为ID的类型。

当用户端设备的IP地址为动态获取的情况时,需要选择野蛮模式。

IKE野蛮模式相对于主模式来说更加灵活,可以选择根据协商发起端的IP地址或者ID来查找对应的身份验证字,并最终完成协商。

(b)验证方法AH(AuthenticationHeader):

身份验证确认通信双方的身份。

目前在IKE提议中,仅可用pre-shared-key(预共享密钥)身份验证方法,使用该验证方法时必须配置身份验证字,并且两端的密钥要完全一致。

(c)加密算法:

包括DES和3DES加密算法;DES算法采用56bits的密钥进行加密,3DES算法采用112bits的密钥进行加密;AES128(AdvancedEncryptionStandard,即高级加密标准)采用128bits的密钥进行加密;AES192

(AdvancedEncryptionStandard,即高级加密标准)采用192bits的密钥进行加密;AES256(AdvancedEncryptionStandard,即高级加密标准)采用256bits的密钥进行加密;一般来说,密钥越长的算法强度越高,受保护数据越难被破解,但消耗的计算资源会更多。

(d)Diffie-Hellman组标识(DH):

用户可以选择Group1即768bit或Group2即1024bit。

(e)ISAKMP-SA生存周期:

IKE使用了两个阶段为IPSec进行密钥协商并建立安全联盟。

第一阶段,通信各方彼此间建立了一个已通过身份验证和安全保护的通道,即ISAKMP

安全联盟(ISAKMPSA);第二阶段,用在第一阶段建立的安全通道为IPSec协商安全服务,

即为IPSec协商具体的安全联盟,建立IPSecSA,IPSecSA用于最终的IP数据安全传送。

ISAKMP-SA生存周期可以设定为60-604800之间的一个整数。

(f)定时发送keepalive报文(不是必须携带):

IKE通过ISAKMPSA向对端定时发

送KeepAl

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 语文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1