第三部分安全笔记Word格式.docx
- 文档编号:20707718
- 上传时间:2023-01-25
- 格式:DOCX
- 页数:40
- 大小:205.61KB
第三部分安全笔记Word格式.docx
《第三部分安全笔记Word格式.docx》由会员分享,可在线阅读,更多相关《第三部分安全笔记Word格式.docx(40页珍藏版)》请在冰豆网上搜索。
非对称加密的代表:
RSA、ECC
非对称加密代表RSA--有一对密匙,一个公匙,一个私匙,私匙加密,公匙解密,或者公匙加密,私匙解密
非对称加密可以有两种应用:
1、公钥加密,私钥解密,叫加密
2、私钥加密,公钥解密,叫数字签名
理想的应用方法,用非对称加密法来传送对称加密的密匙,或用在数字签名当中。
用对称加密法来加密实际的数据。
数字签名不但证明了消息内容完整性,还证明了发送方的身份(不可否认性)。
密钥化的HASH--结合密钥生成的消息摘要,被称为加密的消息摘要。
diffie-hellmankeyexchange--DH算法
是一种安全的让通信双方协商出一个共享密匙的方法。
用Pre-shareKey,对方的公匙和自已的私匙产生一个双方都能知道的KEY(也叫共享的密钥),作对称加密用
接收方发送方
g,p是明文传递的,i和r是随机产生的私钥,计算得到的Xi和Xr也是明文交互的公钥
DH算法公式解析:
Xi=gimodp
gisthegenerator应该是加密点自己设备产生的值
pisalargeprimenumber应该是第一,二个包交互的groupnumber
iisaprivatesecretknownonlytotheinitiator加密点自己产生的值,用来作为私钥
Xi加密点计算出的公钥
DHgroup1的长度是768位(产生出的KEY的长度)
DHgroup2的长度是1024位
认证机制--(这里所指的是设备的认证,而不是用户的认证)
现代的基本加密技术要依赖于消息之目标接收者已知的一项秘密,关键的问题是如何保障密钥的安全。
1、用户名和密码
2、OTP(onetimepassword)一次性密码
3、生物认证(指纹、眼膜)
4、预共享密钥
5、数字证书
6、加密临时值
散列机制--用来做完整性检验
散列函数(就是HASH)--把一大堆数据经过计算得到一个较小的、定长的值,散列是一种不可逆函数。
这意味着一旦明文生成散列,就不可能或者说极端困难再将其由散列转换成明文。
HASH的特点:
1、不管输入什么数据,输出是定长的
2、只要输入有一点微小变化,输出就会发生很大的变化,也就是雪崩效应
3、不可逆
HASH的算法:
1、md5提供128位的输出md5是验证,不是加密技术,用来做Hash
2、SHA提供160位的输出
HMAC--使用散列的消息认证编码,或者叫密钥化的HASH,是一种使用HASH来进行认证的机制。
可以用来做预共享密钥的认证。
IPsec的组成--IPsec协议集包括三个协议:
1、internetkeyexchange(IKE)密匙交换协议
协议双方使用的算法,密匙,协商在两个对等体之间建立一条安全遂道的参数,协商完成再用下面的方法封装报文。
IKE动态的,周期性的在两个PEER之间更新密钥
2、encapsulatingsecutitypayload(ESP)封装安全负载
可以对数据包认证,加密,封装,IP中协议号--50,通常使用3DES来进行加密
3、authenticationheader(AH)
只提供认证,封装,不提供加密,明文传送,IP中协议号--51
IPsecVPN的两种模式--
一、传输模式:
不产生新的IP头,在原包头之后插入一个字段,当通信点等于加密点用这种方法
原始IP头|(ESP或AH)|Data
二、通道模式:
产生一个新IP包头,当通信点不等于加密点用这种方法,site-to-site的VPN就是这种模式,因为通信点的IP头通常不是一个公网上可路由的头部,而新的IP头用的是两个peer之间的IP地址。
新IP头|(ESP或AH)|原始IP头|Data
通信点:
实际通信的设备
加密点:
进行加密的设备
ESP封装中只对原始IP分组进行完整性检验
AH封装中进行完整性检验还包括新的IP头
---------------------------------------------------------------------------
IKE密匙交换协议
IKE的作用:
用于在两个peer之间协商安全建立IPsec隧道的协议
1、协商协议参数
2、交换公共密钥
3、对双方进行认证
4.在交换后对密钥进行管理
也是由三个不同的协议组成:
1、ISAKMP--定义了信息交换的体系结构,包括两个IPsec对等体间分组形式和状态转变(定义封装格式和协商包交换的方式--安全的协商)
2、SKEME--定义如何通过公共密钥技术(DH算法)实现密钥交换。
3、Oakley--提供IPsec对各种技术的支持,例如对新的加密技术,并没有具体的定义实用什么样的技术
ISAKMP基于UDP,源目端口都是500
Site-to-SiteIPsecVPN的协商过程,分两个阶段
要想在两个站点之间安全的传输IP数据流,它们之间必须要先进行协商,协商它们之间所采用的加密算法,封装技术以及密钥。
这个协商过程是通过IKE来完成的,IKE协商分两个阶段运行:
阶段一:
在两个对等体设备之间建立一个安全的管理连接。
没有实际的数据通过这个连接。
这个管理连接是用来保护第二阶段协商过程的安全。
阶段二:
当对等体之间有了安全的管理连接之后,它们就可以接着协商用于构建安全数据连接的安全参数,这个协商过程是安全的,加密的。
协商完成后,将在两个站点间形成安全的数据连接。
用户就可以利用这些安全的数据连接来传输自已的数据了。
第一阶段:
建立ISAKMPSA协商的是以下信息:
1、对等体之间采用何种方式做认证,是预共享密钥还是数字证书。
2、双方使用哪种加密算法(DES,3DES,AES)
3、双方使用哪种HMAC方式,是MD5还是SHA
4、双方使用哪种Diffie-Hellman密钥组
5、使用哪种协商模式(主模式或积极模式)
6、还要协商SA的生存期
第二阶段:
建立IPsecSA协商的是以下信息:
1、双方使用哪种封装技术,AH还是ESP
2、双方使用哪种加密算法
4、使用哪种传输模式,是隧道模式还是传输模式
5、还要协商SA的生存期
第一阶段的协商过程总共有6条消息:
1、消息1和消息2用于peer之间协商Proposal(用于后续协商包安全的策略集)
ISAKMP包含有ISAKMP头、SA负载、提议负载、转换负载等字段
具体是要协商四个东东:
加密机制、散列机制、DH组、认证机制
2、消息3和消息4个包通过DH算法计算key
两端的peer先各自生成自已的私匙和公匙,同时还产生临时值。
然后再使用消息3或消息4将各自的公匙和临时值进行交换。
交换完公匙后,每个peer先根据对方的公匙和自已的私匙生成一个共享秘密(使用DH算法),再根据共享秘密、对方和自已的临时值、预共享密钥产生出三个SKEYID:
SKEYID_a--此密匙被用于提供后续IKE包(第5-9个包)的数据完整性以及源认证
SKEYID_e--此密匙被用于对后续IKE包(第5-9个包)进行加密
SKEYID_d--以密匙d为基础来计算后续IPseckey
消息3和4的ISAKMP包含以下字段:
ISAKMP包头、密匙交换负载(KE)、临时值负载
现在,双方加密点已经协商成功了各种密钥和参数,后续的IKE协商包就可以在一个安全的环境下来传输了
3、消息5和消息6用于两个peer之间进行认证,这两个消息是用SKEYID_e进行过加密的。
每个peer根据一大堆东东(包括SKEYID-a、预共享密钥、标识ID)生成一个Hash值,再将这个值和自已的标识ID(通常是IP或主机名)发送给对方。
当然,使用的就是消息5或消息6。
每个peer收到对方的ID和Hash值后,先根据对方的ID找到对方的公匙,再计算本地Hash值,如果本地Hash值和对方的Hash值一样,就表示认证成功。
这一步完成后,IKESA被建立,主模式认证完成
第二阶段的协商过程总共有3条消息:
1、第一、二条信息是两个peer之间协商形成IPsecSA的封装协议(ESP/AH)、模式(Transport/tunnel)、加密算法,还要互发用DH重新生成的新的公匙和临时值,以及其它一些参数,像SPI、ID等等。
2、第三条消息通常由发起者发送给响应者,起一个确认的作用,也用来验证通信信道的有效性
第三条信息发送前,两端的peer必须先用和DH相关的信息(新的私钥和对方公钥)生成一个新的DH共享秘密,然后用该值和SKEYID_d以及其他一些参数一起来生成最终加解密的KEY。
SA--安全联盟
"
安全联盟"
是构建IPsec的基础,SA是两个通信实体经协商建立起来的一种协定,它们决定了用来保护数据包安全的IPsec协议、转码方式、密钥、以及密钥的有效存在时间等等。
任何IPsec实施方案始终会构建一个SA数据库(SADB),由它来维护IPsec协议用来保障数据包安全的SA记录。
SA是单向的--如果两个主机(比如A和B)正在通过ESP进行安全通信,那么主机A就需要有一个SA,即SA(OUT),用来处理外发的数据包,另外还需要有一个不同的SA,即SA(IN)用来处理进入的数据包。
主机A的SA(OUT)和主机B的SA(IN)将共享相同的加密参数(比如密钥)。
SA还是"
与协议相关"
的。
每种协议都有一个SA,如果两个主机间同时使用ESP和AH,对于ESP和AH会生成不同的SA。
SADB--安全关联数据库,包含双方协商的IKE和IPsec安全信息
SPD-安全策略数据库
至于SPD检索的输出,则可能有以下这几种情况:
∙丢弃这个包。
此时包不会得以处理,只是简单的丢掉。
(PC上能够采用)
∙绕过安全服务。
在这种情况下,IP层会在载荷内增添IP头,然后分发IP包
∙应用安全服务。
在这种情况下,假如已建立一个SA,就会返回指向这个SA的指针;
假如尚未建立SA,就会调用IKE,将这个SA建立起来;
如果SA已经建立,SPD内便会包含指向SA或SA集束的一个指针(具体由策略决定)。
如果策略的输出规定强行将IPSec应用于数据包,那么在SA正式建立起来之前,包是不会传送出去的
选择符(感兴趣流)-应用SPD的依据,主机和路由器处理方式不同
选择符利用ACL来定义,包括:
源地址,目的地址,协议,上层端口,名字
SPI-安全参数索引,是一个32位的值,用来标识用于处理数据包的特定的那个安全联盟。
或者这样理解,用于唯一定义一条单向的IPsec通道。
这个号码存在于ESP包头中,通道两端必须一致。
SA分为两种:
1、IKE(ISAKMP)SA协商对IKE数据流进行加密以及对对等体进行验证的算法
2、IPsecSA协商对对等体之间的IP数据流进行加密的算法
对等体之间的IKESA只能有一个;
对等体之间的IPsecSA可以有多个
PFS--完善转发安全性,是一种IKE协商中发起者可以向响应者提供建议的属性,是一种强制对等体双方在快速模式交换中产生新的DH秘密的属性。
这允许使用新的DH秘密生成用于加密数据的加密密钥。
配置实例:
步骤:
1、configurecryptoACL配置感兴趣流,需要加密的流量就是感兴趣流。
2、establishISAKMPpolicy第一阶段的策略
3、configureIPsectransformset第二阶段的策略
4、configurecryptomap
5、applycryptomaptotheinterface在接口下应用
6、configureinterfaceACL确定在外网接口放行哪些流量
一、定义感兴趣流:
ipaccess-listextendedVPN
permitip172.16.1.00.0.0.255172.16.2.00.0.0.255
二、IKE第一阶段
cryptoisakmpenable//防火墙需要开启
cryptoisakmppolicy10
encryptiondes
hashmd5
authenticationpre-share
group2
cryptoisakmpkeyciscoaddress202.100.1.2pre-sharekey的定义
三、IKE第二阶段
cryptoipsectransform-setMYSETesp-desesp-md5-hmac
modetunnel
四、把感兴趣流与转换集映射一下
cryptomapMYMAP100ipsec-isakmp
setpeer202.100.1.2设置VPN对等体的地址
settranform-setMYSET设置转换集
matchaddressVPN感兴趣流和转换集的绑定
五、MAP与接口绑定
ints0
cryptomapMYMAP
六、设定接口只允许跑VPN流量,在接口入设置
access-list101permitudpanyanyeqisakmp
access-list101permitespanyany
access-list101permitip172.16.2.00.0.0.255172.16.1.00.0.0.255由于ACL会二次查找,所以还要放行私网的流量
debugcryptoisakmp第一阶段debug
debugcryptoipsec第二阶段debug
showcryptoisakmppolicy
showcryptoisakmpsa第一阶段的SA
showcryptoipsecsa第二阶段的SA
showcryptoengineconnectionsactive
showcryptomap
cryptoipsecsecurity-associationlifetime[seconds|kilobytes]第二阶段的一个协商时间,也就是说多长时间后重新协商密匙。
也可按已发了多少流量来进行协商。
哪个数值先到就先起效。
crytoisakmpkeepalive103
IPsec通道的终结:
当流量超过上限后或者超时自动终结
clearcryptoisakmp清第一阶段
clearcryptosa清第二阶段
clearcryptosession在新版的IOS中,用这条命令全清
配置IPsec-VPN的注意点:
1、路由
2、感兴趣流量
3、策略
4、调用
接口设定ACL:
设定接口只允许跑VPN流量,在接口入设置
access-list101permitudphost202.100.1.2host202.100.1.1eqisakmp
access-list101permitesphost202.100.1.2host202.100.1.1
R1:
ints1/0
ipaccess-group101in
注意:
在老IOS中,对包解密后还会再匹配一次访问列表,新的IOS中就不会,所以在老的IOS中要加入一条
access-list101permitip172.16.2.00.0.0.255172.16.1.00.0.0.255
R1#ping172.16.2.2source172.16.1.1
Typeescapesequencetoabort.
Sending5,100-byteICMPEchosto172.16.2.2,timeoutis2seconds:
Packetsentwithasourceaddressof172.16.1.1
*Mar100:
55:
40.767:
IPSEC(sa_request):
(keyeng.msg.)OUTBOUNDlocal=202.100.1.1,remote=202.100.1.2,<
==由ping包的触发,开始建立IPSEC通道
local_proxy=2.2.2.0/255.255.255.0/0/0(type=4),
remote_proxy=3.3.3.0/255.255.255.0/0/0(type=4),
protocol=ESP,transform=esp-desesp-sha-hmac(Tunnel),
lifedur=3600sand4608000kb,
spi=0x5E39E570(1580852592),conn_id=0,keysize=0,flags=0x400B
ISAKMP:
receivedkemessage(1/1)<
===IKE的第一阶段
40.771:
ISAKMP(0:
0):
SArequestprofileis(NULL)
localport500,remoteport500
setnewnode0toQM_IDLE
Findadupsaintheavltreeduringcallingisadb_insertsa=628E53B8
2):
CannotstartAggressivemode,tryingMainmode.
40.775:
Lookingforamatchingkeyfor202.100.1.2indefault:
success
foundpeerpre-sharedkeymatching202.100.1.2
constructedNAT-Tvendor-07ID
constructedNAT-Tvendor-03ID
constructedNAT-Tvendor-02ID
Input=IKE_MESG_FROM_IPSEC,IKE_SA_REQ_MM
OldState=IKE_READYNewState=IKE_I_MM1
IKE第一阶段的第一个包的交换
beginningMainModeexchange<
==开始使用Mainmode
sendingpacketto202.100.1.2my_port500peer_port500(I)MM_NO_STATE发协包到对方PEER"
202.100.1.2"
源端口:
500目标端口:
500
40.963:
receivedpacketfrom202.100.1.2dport500sport500Global(I)MM_NO_STATE
40.967:
Input=IKE_MESG_FROM_PEER,IKE_MM_EXCH
OldState=IKE_I_MM1NewState=IKE_I_MM2
IKE第一阶段的第二个包的交换
processingSApayload.messageID=0
processingvendoridpayload
*M.!
!
Successrateis80percent(4/5),round-tripmin/avg/max=12/12/12ms
R1#ar100:
40.971:
vendorIDseemsUnity/DPDbutmajor245mismatch
vendorIDisNAT-Tv7
40.971
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第三 部分 安全 笔记