IPSec을 가상 개인 네트워크 원리와 구성

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

1. 가상 사설망 개요

가상 사설망 기술은 원래, 위험이 발생 가져온 네트워크 보안을 통해 일반 텍스트 데이터 전송을 해결하기 위해 설계

가상 사설망 2. 정의

보호 된 가상 개인 네트워크 연결이 직접 점 링크에 두 지점에 연결 할 수있다 두 엔티티 사이에 설립되어 있지만, 그들은 일반적으로 멀리 이격합니다

모델 및 유형 3 가상 사설망

(1) 가상 사설망 접속 방식
접속 두가지 기본 형태가있다 : 전송 모드와 터널 모드로 분할이

  • (공용 네트워크 또는 개인 네트워크) 전송 모드

IPSec을 가상 개인 네트워크 원리와 구성

가장 중요한 기능의 전송 모드는 전체 가상 사설망 동안, 그리고 IP 헤더에 캡슐화되지 않는다는되는 항상 원본 끝에서 대상 데이터 통신을 위해 원래의 IP 주소를 사용하는 것을 의미한다.

  • 터널 모드 (공중 어드레스 및 사설 어드레스 혼합 환경에 적합)

IPSec을 가상 개인 네트워크 원리와 구성

터널 모드와 전송 모드의 구분이 크게 터널 IP 헤더와 데이터 보호 모드 만 보호 된 데이터 전송 모드

가상 개인 네트워크의 4 종류

  • 사이트 (L2L) 사이트 (LNA LNA에)

사이트 간 VPN 트래픽은 가상 개인 네트워크 게이트웨이간에 두 개 이상의 사이트 간의 터널 모드에 의해 보호되는 트래픽 사이트는 일반적으로 로컬 네트워크 (L2L) 사이의 통신 트래픽을 지칭한다.
도표 :

IPSec을 가상 개인 네트워크 원리와 구성

  • 원격 액세스 가상 개인 네트워크 (라)

등을 단일 사용자 장치에 사용되는 게이트웨이 가상 사설 네트워크 통신 링크, 하나의 사용자 장치 또는 PC 보통 소규모 네트워크 사이에 원격 액세스 가상 사설망

IPSec을 가상 개인 네트워크 원리와 구성

5. 암호화 알고리즘

DES
3DES
AES

암호화 알고리즘, 암호 해독이 제공 할 수없는 경우 데이터 암호화 방법의 다른 형태로 변환, 우리는 모른다

  • 대칭 암호화 알고리즘 (같은 키 정보의 보안 보호를 제공하기 위해 한 사용)

다음과 같은 데이터 암호화 프로세스는 :
1. 송신 및 공유 키 "K"수신
평문 데이터 M 암호문 데이터를 암호화하는 가상 사설망 게이트웨이 암호화 함수 E에 의해 얻어진 2 송신기
3. 데이터 복호화 함수 D를 통해 수신기 복원 문명 텍스트 데이터 "M"

IPSec을 가상 개인 네트워크 원리와 구성

DES 알고리즘

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

3DES算法

理论上将3DES算法就是DES算法的增强版本,因为3DES使用了三个阶段的DES,即同时使用三个不同的56位密钥,所以相当于产生了一个168位的有效密钥长度,这种级别的密钥目前还没有计算机有能力在较短时间内破解,而且其执行效率虽然在软件环境中比较慢,但是在硬件环境中并不明显

AES算法

3DES算法虽然目前为止是安全的,但随着计算机硬件的更新,总有一天也会变的不安全。AES算法比3DES算法更安全,它支持128、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支持1、2、5、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、2、5、14、15、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-128、AES-192、AES-256或不可使用加密算法;
验证方式:MD5或SHA-1;

ISAKMP/IKE阶段2的安全协议

IPSec을 데이터 연결은 데이터 연결 보안 프로토콜을 보호 할 수있다 : 2 개의 프로토콜을 달성하기 위해 함께 사용될 수있다 AH 및 ESP 프로토콜, 암호화 및 인증은 예 ESP 프로토콜의 사용과 같은 데이터가 한 프로토콜에 의해 구현 될 수있다. IP 프로토콜 번호를 사용 ESP (50) IP 프로토콜 번호 51를 사용하여 AH.

8. 구성 IPSec을 가상 개인 네트워크를 달성하기 위해

전제 조건 :
상기와 같이 (1)의 어드레스와 관련된 구성은 PC가 라우터로서 작용한다. 기본 경로를 구성하지 ISP뿐만 아니라, 다른 사람은 기본 경로를 구성해야합니다.
(2) 가상 사설망 IPSEC R2 및 R4에 배치되고, 관심의 요구와 관련된 구성 파라미터가 일치한다.
(3) R5 핑 통신 R1 여부에 대한 검사.
(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
3、将MAP在外部接口应用:
int F0/0
crypto map test-map

R1 및 R5가 마침 상기 가상 사설 네트워크를 통해 통신 할 수있다

액세스 인터넷에 내부 호스트를 해결

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는 액세스 할 수 있습니다

다음 R3 R5 접속 구성은

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

완료! ! ! ! ! ! ! ! ! !

추천

출처blog.51cto.com/14400213/2448338