IKE 协议(转)

from: http://lulu1101.blog.51cto.com/4455468/817872

IKE 协议

2012-03-26 21:49:50

标签:休闲 ike 职场

IKE 协议简介 

1.       IKE 协议

IPSec  的安全联盟可以通过手工配置的方式建立,但是当网络中节点增多时,手工配置将非常困难,而且难以保证安全性。这时就要使用 IKE(Internet Key Exchange,因特网密钥交换)自动地进行安全联盟建立与密钥交换的过程。

IKE 协议是建立在由 Internet 安全联盟和密钥管理协议 ISAKMP  (Internet   Security Association and Key Management Protocol )定义的框架上。它能够为IPSec 提供了自动协商交换密钥、建立安全联盟的服务,以简化IPSec 的使用和管理。

IKE 具有一套自保护机制,可以在不安全的网络上安全地分发密钥、验证身份、建立 IPSec 安全联盟。

2. IKE 的安全机制

DH (Diffie-Hellman)交换及密钥分发。Diffie-Hellman 算法是一种公共密钥算法。通信双方在不传送密钥的情况下通过交换一些数据,计算出共享的密钥。加密的前提是交换加密数据的双方必须要有共享的密钥。IKE 的精髓在于它永远不在不安全的网络上直接传送密钥,而是通过一系列数据的交换,最终计算出双方共享的密钥。即使第三者(如黑客)截获了双方用于计算密钥的所有交换数据,也不足以计算出真正的密钥。

完善的前向安全性(Perfect Forward Secrecy,PFS)。PFS 是一种安全特性,指一个密钥被破解,并不影响其他密钥的安全性,因为这些密钥间没有派生关系。PFS 是由 DH 算法保障的。

身份验证。身份验证确认通信双方的身份。对于 pre-shared key 验证方法,验证字用来作为一个输入产生密钥,验证字不同是不可能在双方产生相同的密钥的。验证字是验证双方身份的关键。

身份保护。身份数据在密钥产生之后加密传送,实现了对身份数据的保护。

3. IKE 的交换阶段

IKE 使用了两个阶段为 IPSec 进行密钥协商并建立安全联盟:第一阶段,通信各方彼此间建立了一个已通过身份验证和安全保护的通道,此阶段的交换建立了一个ISAKMP 安全联盟,即 ISAKMP SA  (也可称IKE SA);第二阶段,用在第一阶段建立的安全通道为 IPSec 协商安全服务,即为 IPSec 协商具体的安全联盟,建立IPSec SA,IPSec SA用于最终的 IP 数据安全传送。

从下图我们可以看出 IKE 和 IPSec 的关系。

具体安全联盟的建立过程如下图所示:

(1)  当一个报文从某接口外出时,如果此接口应用了IPSec,会进行安全策略的匹

配。

(2)  如果找到匹配的安全策略,会查找相应的安全联盟。如果安全联盟还没有建立,则触发 IKE 进行协商。IKE 首先建立阶段 1 的安全联盟,即IKE SA。

(3) 在阶段 1 安全联盟的保护下协商阶段2 的安全联盟,即IPSec SA。

(4)  使用 IPSec SA 保护通讯数据。

4. IKE 的协商模式

在 RFC2409  (The Internet Key Exchange)中规定,IKE 第一阶段的协商可以采用两种模式:主模式(Main Mode)和野蛮模式(Aggressive Mode )。主模式被设计成将密钥交换信息与身份、认证信息相分离。这种分离保护了身份信息;交换的身份信息受已生成的 Diffie-Hellman 共享密钥的保护。但这增加了3 条消息的开销。

野蛮模式则允许同时传送与 SA、密钥交换和认证相关的载荷。将这些载荷组合到一条消息中减少了消息的往返次数,但是就无法提供身份保护了。

虽然野蛮模式存在一些功能限制,但可以满足某些特定的网络环境需求。例如:远程访问时,如果响应者(服务器端)无法预先知道发起者(终端用户)的地址、或者发起者的地址总在变化,而双方都希望采用预共享密钥验证方法来创建 IKE SA,那么,不进行身份保护的野蛮模式就是唯一可行的交换方法;另外,如果发起者已知响应者的策略,或者对响应者的策略有全面的了解,采用野蛮模式能够更快地创建 IKE SA。

相关配置:

设置安全策略中引用的IKE Peer  (仅用于IKE 协商方式)

对于 IKE 协商方式,无需象手工方式那样配置对等体、SPI 和密钥等参数,IKE 将自动协商这些它们,因而仅需要将安全策略和IKE Peer 关联即可。

在安全策略中引用 IKE Peer    ike-peer peer-name

删除在安全策略中引用的IKE Peer  undo ike-peer peer-name

 

配置IKE协商时的本地 ID

在系统视图下进行下列配置

配置IKE协商时的本地ID   ike local-name router-name

删除本地ID   undo ike local-name

 

指定IKE对端属性

1. 创建 IKE Peer并进入 IKE Peer视图

通过 IKE Peer,可以定义了一系列属性数据来描述 IKE协商所需的参数,包括创建IKE提议、协商模式、ID类型、NAT穿越、共享密钥、对端地址和对端名称等。

请在系统视图下进行下列配置。

创建IKE Peer并进入IKE Peer视图  ike peer peer-name

删除指定的IKE Peer  undo ike peer peer-name

2.       配置 IKE协商模式

请在 IKE Peer视图下进行下列配置。

配置IKE协商方式  exchange-mode  { main | aggressive }

恢复缺省IKE协商方式  undo exchange-mode

缺省情况下,采用主模式进行 IKE协商。

3.       配置 IKE安全提议

请在 IKE Peer视图下进行下列配置。

配置IKE安全提议  ike-proposal proposal-number

取消IKE安全提议  undo ike-proposal

缺省情况下,采用主模式时使用已配置的所有 IKE 安全提议,采用野蛮模式时使用

缺省的 IKE安全提议。

4. 配置对端 ID类型

当进行 IKE交换时,可以使用对端的 IP地址作为 ID,也可以使用对端名称作为 ID。

请在 IKE Peer视图下进行下列配置。

配置IKE Peer的ID类型  local-id-type { ip | name }

恢复缺省的ID类型  undo local-id-type

缺省情况下,IKE Peer采用的本端 ID类型为 IP地址形式。

5. 配置 IPSec是否需要 NAT穿越

请在 IKE Peer视图下进行下列配置。

使能IPSec的 NAT穿越  nat traversal

禁止IPSec的 NAT穿越  undo nat traversal

缺省情况下,禁止 NAT穿越功能。

6. 配置身份验证字

如果选择了 Pre-shared key验证方法。需要为每个对端配置预共享密钥。建

立安全连接的两个对端的预共享密钥必须一致。

请在 IKE Peer视图下进行下列配置。

配置与对端共享的 pre-shared key  pre-shared-key key

删除身份验证字  undo pre-shared-key

7. 配置对端 IP地址

请在 IKE Peer视图下进行下列配置。

配置对端地址或地址段  remote-address low-ip-address [ high-ip-address ]

删除配置的对端地址  undo remote-address

8. 配置对端名称

在野蛮模式下,可以使用 remote-name命令配置对端名称。

请在 IKE Peer视图下进行下列配置。

配置对端名称  remote-name name

删除配置的对端名称  undo remote-name

 

创建IKE安全提议

IKE提议定义了一套属性数据来描述 IKE协商怎样进行安全通信。配置 IKE提议包括创建 IKE提议、选择加密算法、选择验证方法、选择验证算法、选择 Diffie-Hellman组标识和设置安全联盟生存周期。

用户可以按照优先级创建多条 IKE 提议,但是协商双方必须至少有一条匹配的 IKE提议才能协商成功。

采用主模式时:若在协商发起方的 ike peer中指定 IKE提议,IKE协商时将只发送指定的 IKE提议,响应方在自己的IKE提议配置中寻找与发送方指定的 IKE提议相匹配的 IKE提议,如果没有匹配的则协商失败;若发起方的 ike peer中不指定 IKE提议,IKE协商时将发送发起方所有的 IKE提议,响应方在自己的 IKE提议配置中依次寻找与发送方的IKE提议相匹配的 IKE提议。

采用野蛮模式时:若在协商发起方的 ike peer中指定 IKE提议,同采用主模式的情况;若发起方的 ike peer中不指定 IKE提议, IKE协商时将只发送发送方默认的 IKE提议,响应方也会用默认的 IKE提议匹配。

IKE显示与调试

IKE 提供以下命令显示当前所有安全联盟的状态和每个 IKE 提议配置的参数。display 命令可在所有视图下进行下列操作,debugging 和 reset 命令只能在用户视图下操作。

显示当前已建立的安全通道  display ike sa [ secp [ slot/card/port  ] ]

查看IKE Peer的配置情况 display  ike  peer [  name  peer-name ] [  secp [ slot/card/port  ] ]

删除当前已建立的安全通道 reset ike sa  connection-id  ] [  secp slot/card/port  ] ]

显示每个IKE提议配置的参数  display ike proposal [ secp [ slot/card/port  ] ]

打开IKE的调试信息 debugging  ike {  all | error |  exchange | message |  misc | transport  } [  secp slot/card/port  ] ]

关闭IKE的调试信息  undo  debugging  ike {  error |  exchange | message |  misc | transport } [  secp [ slot/card/port  ] ]

时间: 2024-12-10 02:42:49

IKE 协议(转)的相关文章

安全协议系列(五)---- IKE 与 IPSec(中)

在上一篇中,搭建好了实验环境.完整运行一次 IKE/IPSec 协议,收集相关的输出及抓包,就可以进行协议分析.分析过程中,我们将使用 IKE 进程的屏幕输出和 Wireshark 抓包,结合相关 RFC,利用 python 进行验证计算.先看协议的一次完整运行(过滤掉无关报文,如下图) 下面是 RFC 5996 中对 IKEv2 协议的规范说明 由上可知,IKEv2 协议由两个阶段的交互过程(即两个来回,共四个报文)组成.第一阶段称为 IKE_SA_INIT 交换.第二阶段称为 IKE_AUT

安全协议系列(五)---- IKE 与 IPSec(上)

IKE/IPSec 属于网络层安全协议,保护 IP 及上层的协议安全.自上个世纪末面世以来,关于这两个协议的研究.应用,已经非常成熟.协议本身,也在不断地进化.仅以 IKE 为例,其对应的 RFC 编号从 RFC 2407/2408/2409 演化成 RFC 4306,再演化为 RFC 5996,最新版本是 RFC 7296. 为什么要分成两个协议呢?这两个协议有什么区别?从密码学角度看,IKE 用于密钥交换,IPSec 用于保护后续的通信.而保护通信的密钥,就来自 IKE 协议运行的结果.(在

安全协议系列(四)----SSL与TLS

当今社会,电子商务大行其道,作为网络安全 infrastructure 之一的 -- SSL/TLS 协议的重要性已不用多说.OpenSSL 则是基于该协议的目前应用最广泛的开源实现,其影响之大,以至于四月初爆出的 OpenSSL Heartbleed 安全漏洞(CVE-2014-0160) 到现在还余音未消. 本节就以出问题的 OpenSSL 1.0.1f 作为实例进行分析:整个分析过程仍采用[参考 RFC.结合报文抓包.外加工具验证]的老方法.同时我们利用 OpenSSL 自带的调试功能,来

ipsec协议(转)

from:http://lulu1101.blog.51cto.com/4455468/816875 ipsec协议 2012-03-25 23:40:28 标签:休闲 ipsec协议 职场 IPSec 协议简介 IPSec (IP Security)协议族是IETF 制定的一系列协议,它为 IP 数据报提供了高质量的.可互操作的.基于密码学的安全性.特定的通信方之间在 IP 层通过加密与数据源验证等方式,来保证数据报在网络上传输时的私有性.完整性.真实性和防重放. 说明: 私有性(Confid

strongswan——IKE建立过程

strongswan的主进程为charon进程,负责IKE SA.IPSec SA建立.拆除.更新及其他相关的操作. charon进程默认通过socket-default插件与内核交互,用于IKE协议报文的收发.socket-default插件被编译为动态库,charon进程启动的时候,在初始化阶段动态加载.如下图 Socket-default通过poll机制阻塞等待内核收到的IKE协议报文.,如下图 如果使用的内核是裁剪过或二次开发的内核,要特别注意是否支持poll机制.比如说,如果仅支持se

[ipsec] 特别硬核的ike/ipsec NAT穿越机制分析

〇 前言 这怕是最后一篇关于IKE,IPSEC的文字了,因为不能没完没了. 所以,我一直在想这个标题该叫什么.总的来说可以将其概括为:IKE NAT穿越机制的分析. 但是,同时它也回答了以下问题: (1)IKE协议交互消息概述.(2)为什么IKE除了端口500还用了端口4500 .(3)IKE MOBIKE是什么. (4)迷之端口500和迷之端口4500 .(5)IKE/IPsec为什么要将端口500换成端口4500. (6)ike/ipsec为什么使用了两个端口. 另外,本篇的所有内容与讨论仅

网络安全协议(1)

网络安全协议 TCP/IP协议族在设计时并没有考虑到安全性问题,信息在传输过程中的安全性无法保证,接收方无法确认发送方的身份,也无法判定接收到的信息是否与原始信息相同. 因此,网络安全研究人员在链路层.网络层和传输层开发了相应的安全补充协议,期望在各个层次上分别达到保密性.完整性和不可抵赖性的安全目标.802.1X和EAP协议用于在链路层上实现发送方身份认证,IPSec和SSL分别在网络层和传输层利用密码技术实现了三个基本安全目标,802.11i协议族定义无线局域网WLAN的加密和完整性检测机制

Internet上使用的安全协议

Internet上使用的安全协议 网络安全也是分层实现的,从应用层安全到数据链路层安全. 一.运输层安全协议:安全套接字SSL 1.1.简介 SSL 是安全套接层 (Secure Socket Layer),可对万维网客户与服务器之间传送的数据进行加密和鉴别. SSL 在双方的联络阶段协商将使用的加密算法和密钥,以及客户与服务器之间的鉴别. 在联络阶段完成之后,所有传送的数据都使用在联络阶段商定的会话密钥. SSL 不仅被所有常用的浏览器和万维网服务器所支持,而且也是运输层安全协议 TLS (T

12. Application-specific scanners (特定应用程序扫描器)

ike-scan是使用IKE协议发现.指纹和测试IPsec VPN服务器的命令行工具. 它通过向网络中的每个主机发送特制的IKE数据包来扫描VPN服务器的IP地址. 运行IKE的大多数主机都会响应,识别他们的存在.然后该工具保持静默并监视重传的数据包 .这些重传响应被记录,显示和匹配一组已知的VPN产品指纹. ike-scan可以从包括Checkpoint,Cisco,Microsoft,Nortel和Watchguard在内的制造商提供VPN. Amap是确定什么应用程序在给定端口上侦听的好工