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  ] ]

IKE 协议(转)的更多相关文章

  1. IKE协议

    IKE协议 一. +IKE(Internet Key Exchange)因特网密钥交换协议 +为IPSec提供了自动协商交换密钥.建立安全联盟的服务 +通过数据交换来计算密钥 IKE(Internet ...

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

    在上一篇中,搭建好了实验环境.完整运行一次 IKE/IPSec 协议,收集相关的输出及抓包,就可以进行协议分析.分析过程中,我们将使用 IKE 进程的屏幕输出和 Wireshark 抓包,结合相关 R ...

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

    IKE/IPSec 属于网络层安全协议,保护 IP 及上层的协议安全.自上个世纪末面世以来,关于这两个协议的研究.应用,已经非常成熟.协议本身,也在不断地进化.仅以 IKE 为例,其对应的 RFC 编 ...

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

    当今社会,电子商务大行其道,作为网络安全 infrastructure 之一的 -- SSL/TLS 协议的重要性已不用多说.OpenSSL 则是基于该协议的目前应用最广泛的开源实现,其影响之大,以至 ...

  5. ipsec协议(转)

    from:http://lulu1101.blog.51cto.com/4455468/816875 ipsec协议 2012-03-25 23:40:28 标签:休闲 ipsec协议 职场 IPSe ...

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

    〇 前言 这怕是最后一篇关于IKE,IPSEC的文字了,因为不能没完没了. 所以,我一直在想这个标题该叫什么.总的来说可以将其概括为:IKE NAT穿越机制的分析. 但是,同时它也回答了以下问题: ( ...

  7. 浅析Internet上使用的安全协议

    Internet上使用的安全协议 网络安全是分层实现的,从应用层安全到数据链路层安全. 一.运输层安全协议:安全套接字SSL 1.1.简介 SSL 是安全套接层 (Secure Socket Laye ...

  8. IPSec协议框架

    文章目录 1. IPSec简介 1.1 起源 1.2 定义 1.3 受益 2. IPSec原理描述 2.1 IPSec协议框架 2.1.1 安全联盟 2.1.2 安全协议 报文头结构 2.1.3 封装 ...

  9. 密钥交换协议之IKEv2

    1. IKEv2 1.1 IKEv2简介 IKEv2(Internet Key Exchange Version 2,互联网密钥交换协议第 2 版)是第 1 版本的 IKE 协议(本文简称 IKEv1 ...

随机推荐

  1. 梯度消失(vanishing gradient)与梯度爆炸(exploding gradient)问题

    (1)梯度不稳定问题: 什么是梯度不稳定问题:深度神经网络中的梯度不稳定性,前面层中的梯度或会消失,或会爆炸. 原因:前面层上的梯度是来自于后面层上梯度的乘乘积.当存在过多的层次时,就出现了内在本质上 ...

  2. IIS配置中出现HRESULT:0X80070020错误

    Win7 IIS启动失败.手工启动它,提示:“另一个程序正在使用此文件,进程无法访问!” 此时是因为另一个程序占用了IIS的端口号,IIS一般用的是80端口,是谁占用了这个端口呢? 方法如下:开始菜单 ...

  3. 3D打印机开源、免费分层软件介绍

    分层软件,就是把3D模型按照层厚设置按照Z轴方向分层,并得到G代码,供设备使用.基本上3D打印机都自带了控制软件,对于想自己开发3D打印机的朋友来说,已经有很多国外的免费或者开源的分层软件可以直接使用 ...

  4. WordPress 在function.php 文件中方法中the_XXX方法失效

    最近在使用WP给客户做一个企业网站,却出现从未遇到的问题. 事件是这样子的:我在function.php文件里写了一个根据分类ID获取文章的文章,因为该方法里的html元素是在多个页面共用的 但我在i ...

  5. Ubuntu14设置静态IP的地方

    sudo vim /etc/network/interfaces 修改如下部分: auto eth0iface eth0 inet staticaddress 192.168.0.117gateway ...

  6. (转)【风宇冲】Unity3D教程宝典之Blur

    原创文章如需转载请注明:转载自风宇冲Unity3D教程学院                   BlurBlur模糊其实理解了以后非常简单.核心原理就是 1个点的颜色 并不用该点的颜色,而是用该点周围 ...

  7. CodeForces 569B Inventory 货物编号

    原题: http://codeforces.com/contest/569/problem/B 题目: Inventory time limit per test1 second memory lim ...

  8. LCX端口内网映射转发

    这几天在渗透一家奶茶店的时候, 使用溢出攻击获得了奶茶店shell, 截屏以后发现该电脑有安装sqlserver, 但是数据库无法远程连接, 所以我决定使用端口映射工具突破端口连接限制: 我的机器地址 ...

  9. Android缓存处理

    Android缓存: 採用缓存,能够进一步大大缓解数据交互的压力,又能提供一定的离线浏览.下边我简略列举一下缓存管理的适用环境: 1. 提供网络服务的应用 2. 数据更新不须要实时更新.哪怕是3-5分 ...

  10. Java并发编程 - 基本概念

    在开始我们的并发编程前,我们必须预热一下,一些基本概念必须了解. 1. 同步(Synchronous) / 异步(Asynchronous) 同步和异步都指一次方法调用. 同步:方法开始后,调用者必须 ...