IPSec 虚拟专用网原理与配置

*  博文大纲
*  虚拟专用网实现的各类安全特性
*  理解ISAKMP/IKE两个阶段的协商创建过程

1.虚拟专用网概述算法

虚拟专用网技术起初是为了解决明文数据在网络上传输所带来安全隐患而产生的,数据库

2.虚拟专用网的定义安全

虚拟专用网就是在两个实体之间创建的一种受保护的链接,这两个能够经过点到点的链路直接相连,但一般状况下它们会相隔较远的距离网络

3.虚拟专用网的模式与类型ide

(1)虚拟专用网的链接模式
有两种基本的链接模式:分为传输模式和隧道模式,函数

  • 传输模式(适用与公有网络或私有网络)

IPSec 虚拟专用网原理与配置

传输模式一个最显著的特色就是,在整个虚拟专用网的过程当中,IP包头并无被封装进去,这就意味着从源端到目的端数据始终使用原有IP地址进行通讯。测试

  • 隧道模式(适用公有地址和私有地址混合环境)

IPSec 虚拟专用网原理与配置

隧道模式与传输模式的区别明显,隧道模式保护IP包头与数据,传输模式只保护数据ui

4.虚拟专用网的类型加密

  • 站点到站点(L2L ) (Lna to Lna)

站点到站点虚拟专用网就是经过隧道模式在虚拟专用网网关之间保护两个或多个站点之间的流量,站点的流量一般是指局域网之间(L2L)的通讯流量。
如图:设计

IPSec 虚拟专用网原理与配置

  • 远程访问虚拟专用网(Ra)

远程访问虚拟专用网一般用于单用户设备与虚拟专用网的网关之间的通讯链接,单用户设备通常为一台PC或小型办公网络等

IPSec 虚拟专用网原理与配置

5.加密算法

DES
3DES
AES

加密就是一种将数据转化成另外一种形式的过程,若是不了解加密算法,解密是不可能得

  • 对称加密算法(使用同一密钥对信息提供安全得保护)

数据加密过程以下:
1.发送方和接收方共享密钥“k”
2.发送方得虚拟专用网网关经过加密函数E将明文数据M加密为密文数据
3.接收方经过解密函数D将数据还原文明文数据“M”

IPSec 虚拟专用网原理与配置

DES算法

DES算法曾经在虚拟专用网领域应用很广,属于IBM公司的研发产品,其密钥长度为64位,其中8位用于奇偶校验,因此实际有效长度为56位。虽然该算法目前没有找到更好的方法破解,可是经过一些技术手段已经能够在较短的时间内破解DES算法,因此在实际工程实施过程当中已经不建议使用该种算法

3DES算法

理论上将3DES算法就是DES算法的加强版本,由于3DES使用了三个阶段的DES,即同时使用三个不一样的56位密钥,因此至关于产生了一个168位的有效密钥长度,这种级别的密钥目前尚未计算机有能力在较短期内破解,并且其执行效率虽然在软件环境中比较慢,可是在硬件环境中并不明显

AES算法

3DES算法虽然目前为止是安全的,但随着计算机硬件的更新,总有一天也会变的不安全。AES算法比3DES算法更安全,它支持12八、192和256为密钥程度,有效的密钥长度可达千位。更重要的是,AES算法那采用更为高效的编写方法,对CPU的占有lv较少,因此诸如IPSec 虚拟专用网等实际工程的实施过程当中趋向于使用AES来提供更好的加密功能

  • 非对称加密算法

1)算法原理

非对称算法使用公钥和私钥两个不一样的密钥进行加密和解密。用一个密钥加密的数据仅能被另外一个密钥解密,且不能从一个密钥推算出另外一个密钥。非对称加密算法数据加密、解密过程如图:

IPSec 虚拟专用网原理与配置

算法的优、缺点

非对称加密算法最大的优点就在于其安全性。目前为止,尚未任何一种方式能够在合理的时间范围内破解该算法。

非对称加密的算法也不是完美的,因为其计算过程复杂,它的计算效率要比对称加密算法低不少。

DH算法

经常使用的非对称算法有RSA、DSA、DH。前两种算法经常使用于验证功能,而DH算法通常被用来实现IPSec中的internet密钥交换(IKE)协议。

6.数据报文验证

数据报文验证包括两个方面:数据库来源验证(身份验证)和报文完整性验证。

MD5和SHA

MD5(信息——摘要算法)在REC 1321中有明确规定,它建立了一个128位的数字签名,是目前HMAC功能中最为普遍的一种算法

7.IPSec 虚拟专用网

1)流量触发IPSec
通常来讲,IPSec创建过程是由对等体之间发送的流量触发的,一旦有虚拟专用网流量通过虚拟专用网网关,链接过程便开始创建,固然,手动配置也能够实现这一过程,在配置设备实现此步骤前,网络工程师须要明确哪些流量须要被“保护”。

2)创建管理链接(阶段1)
IPSec使用ISAKMP/IKE阶段1来构建一个安全的管理链接,这里须要注意的是,这个管理链接只是一个准备工做,它不被用来传输实际的数据。在配置设备实现此步骤前,网络工程师须要明确设备如何实现验证,使用何种加密机认证算法,使用哪一种DH组等问题。

3)创建数据链接(阶段2)

PSec基于安全的管理链接协商创建安全的数据链接,而ISAKMP/IKE阶段2就是用来完成这个任务的,数据链接用于传输真正的用户数据。在配置设备实现此步骤前,网络工程师须要明确使用何种安全协议,针对具体的安全协议应使用加密或验证算法,以及数据的传输模式(隧道模式或传输模式)等问题。

通过IPSec创建的三部曲后,虚拟专用网流量即可以按照协商的结果被加密/解密了,可是虚拟专用网链接并非一次性的,不管是管理链接仍是数据库链接都有一个生存周期与之关联,一旦到期链接便会被停止。若是须要继续传输虚拟专用网数据,链接还须要从新被构建,这种设计主要是处于安全性的考虑。

ISAKMP/IKE阶段1

三个任务:
* 协商采用任何方式创建管理链接
* 经过DH算法共享密钥信息
* 对等体彼此进行身份验证

ISAKMP/IKE阶段1创建过程

SAKMP/IKE传输集就是一组用来保护管理链接的安全措施,主要包括如下几个方面:

加密算法:DES、3DES和AES;
HMAC算法:MD5或SHA-1;
设备验证的类型:预共享密钥;
DH密钥组:Cisco支持一、二、五、7(Cisco路由器不支持密钥组7);
管理链接的生存周期;

配置安全策略
ISAKMP/IKE策略包含如下参数:策略的序列号、加密算法、散列算法、验证方法、DH组、生存周期等

R1(config)#crypto isakmp policy 1
//用于创建创建ISAKMP/IKE的管理链接策略;
//每一个策略对应一个序列号,范围从1~10000,数值越低,优先级越高;
R1(config-isakmp)#encryption des
//用于指定管理链接创建的最后两个报文(身份验证)采用何种加密算法(des、3des、aes)
R1(config-isakmp)#hash sha
//指定了验证过程采用的散列算法(sha、md5)
R1(config-isakmp)#authentication pre-share
//指定设备身份验证的方式{pre-shara(预共享密钥)| rsa-encr | rsa-sig}
R1(config-isakmp)#group 1
//用于指定DH密钥组,默认使用DH1;
//组号也大,算法越安全,占用设备的资源也就越多。范围(一、二、五、1四、1五、16)
R1(config-isakmp)#lifetime 86400  
//指定管理链接的生存周期,默认值为86400s(24小时)
R1#show crypto isakmp policy
//查看配置安全策略的相关配置
Global IKE policy
Protection suite of priority 1      //这里都是策略1指定的各项参数
        encryption algorithm:   DES - Data Encryption Standard (56 bit keys).
        hash algorithm:         Secure Hash Standard
        authentication method:  Pre-Shared Key
        Diffie-Hellman group:   #1 (768 bit)
        lifetime:               86400 seconds, no volume limit
Default protection suite             //这里则显示了设备默认的配置参数
        encryption algorithm:   DES - Data Encryption Standard (56 bit keys).
        hash algorithm:         Secure Hash Standard
        authentication method:  Rivest-Shamir-Adleman Signature
        Diffie-Hellman group:   #1 (768 bit)
        lifetime:               86400 seconds, no volume limit

配置预共享密钥

R1(config)#crypto isakmp key 0 123456 address 192.168.1.1
//其中0表示明文,6表示密文
//123456就是密钥的具体内容
//192.168.1.1就是对端与之共享密钥的对等体设备地址
//IP地址后面若是不加子网掩码的话,默认使用32位掩码
R1#show crypto isakmp key                   //查看预共享密钥的配置
Keyring               Hostname/Address                   Preshared Key
//明文状态下,若是是密文状态下,密钥内容将不会显示
default               192.168.1.1                        123456

ISAKMP/IKE阶段2

ISAKMP/IKE阶段2主要是在两个IPSec对等体间创建数据链接,其主要完成如下任务:

定义对等体间须要保护何种流量;
定义用来保护数据的安全协议;
定义传输模式;
定义数据链接的生存周期及密钥刷新的方式;

IPSec对等体通常是经过ACL来匹配那些须要加密传输的虚拟专用网流量。

ISAKMP/IKE阶段2创建过程

SA链接由三个要素定义:

安全参数索引(SPI):用于惟一标识每条SA链接;
安全协议的类型:IPSec定义了两种安全协议,即AH(认证头协议)和ESP(封装安全载荷协议);
目的IP地址;

ISAKMP/IKE阶段2的传输集

数据链接的传输集定义了数据链接时如何被保护的。与管理链接的传输集相似,对等体设备能够保存一个或多个传输集,但其具体内容不一样:

安全协议:AH协议、ESP协议;
链接模式:隧道模式、传输模式;
加密方式:对于ESP而言,有DES、3DES、AES-12八、AES-19二、AES-256或不可以使用加密算法;
验证方式:MD5或SHA-1;

ISAKMP/IKE阶段2的安全协议

IPSec的数据链接能够经过安全协议实现对数据链接的保护:AH协议和ESP协议,能够经过其中的一个协议来实现数据的加密和验证,如使用ESP协议;也可使用两个协议一块儿来实现。AH使用IP协议号51,ESP使用IP协议号50。

8.配置实现IPSec 虚拟专用网

要求:
(1)如上图所示,配置相关的地址,使用路由器充当PC机。除了ISP不用配置默认路由,其余都须要配置默认路由。
(2)分别在R2和R4上配置Ipsec虚拟专用网,注意配置相关的参数须要一致。
(3)在R1上ping R5 测试是否能通讯。
(4)使用NAT实现,内部主机能访问ISP。

IPSec 虚拟专用网原理与配置

先配置IP,r1,r2,r4,r5都作下一跳
如r1:

ip route 0.0.0.0 0.0.0.0 192.168.1.1

在r2上配置管理链接

crypto isakmp policy 1
 encr aes               加密算法
 hash  sha          认证算法
 authentication pre-share   声明设备认证方式为“预先共享密钥”
 group 2            采用DH算法的强度为group2
 lifetime 10000         管理链接生存周期

crypto isakmp key benet.123 address 201.0.0.2 配置“预先共享密钥”

access-list 101 permit ip 192.168.1.0 0.0.0.255 192.168.2.0 0.0.0.255 (虚拟专用网保护的流量)

crypto ipsec transform-set test-set ah-sha-hmac esp-aes  (数据链接协商参数)

crypto map test-map 1 ipsec-isakmp   将数据链接相关配置设定为MAP
 set peer 201.0.0.2         虚拟专用网对端地址
 set transform-set test-set         数据传输采用的传输集
 match address 101          匹配的ACL
将MAP在外部接口应用:
int F1/0
crypto map test-map

在r4上配置

crypto isakmp policy 1
 encr aes               加密算法
 hash  sha          认证算法
 authentication pre-share   声明设备认证方式为“预先共享密钥”
 group 2            采用DH算法的强度为group2
 lifetime 10000         管理链接生存周期

crypto isakmp key benet.123 address 201.0.0.2  配置“预先共享密钥”
access-list 101 permit ip 192.168.2.0 0.0.0.255 192.168.1.0 0.0.0.255 (虚拟专用网保护的流量)

crypto ipsec transform-set test-set ah-sha-hmac esp-aes  (数据链接协商参数)

crypto map test-map 1 ipsec-isakmp   将数据链接相关配置设定为MAP
 set peer 200.0.0.1         虚拟专用网对端地址
 set transform-set test-set         数据传输采用的传输集
 match address 101          匹配的ACL
三、将MAP在外部接口应用:
int F0/0
crypto map test-map

作完上面 r1与r5能够经过虚拟专用网互通

解决内部主机访问internet

access-list 102 deny   ip 192.168.1.0 0.0.0.255 192.168.2.0 0.0.0.255(拒绝虚拟专用网的流量)
access-list 102 permit ip any any (放行全部流量)

注明:当有NAT和虚拟专用网时,先匹配NAT,后匹配虚拟专用网。因此要拒绝虚拟专用网的流量。

ip nat inside source list 102 interface FastEthernet1/0 overload

接口上启用nat功能:
  int  f0/0
    ip nat  inside

   int  f1/0
    ip nat  outside

这时r1就能访问r3了

r5访问r3配置以下

access-list 102 deny   ip 192.168.2.0 0.0.0.255 192.168.1.0 0.0.0.255(拒绝虚拟专用网的流量)
access-list 102 permit ip any any (放行全部流量)

ip nat inside source list 102 interface FastEthernet0/0 overload

接口上启用nat功能:
  int  f1/0
    ip nat  inside

   int  f0/0
    ip nat  outside

完成!!!!!!!!!!

相关文章
相关标签/搜索