VPN实战2:构建IPSec VPN

安全
实现IPSec要求主机安装上ipsec-tools RPM 软件包,Red Hat Enterprise Linux 5一般默认安装。执行下述命令可以看到它的版本号为ipsec-tools-0.6.5-13.el5_3.1。

安装Ipsec-tools

实现IPSec要求主机安装上ipsec-tools RPM 软件包,Red Hat Enterprise Linux  5一般默认安装。执行下述命令可以看到它的版本号为ipsec-tools-0.6.5-13.el5_3.1:

# rpm -qa | grep ipsec

ipsec-tools-0.6.5-13.el5_3.1

配置IPSec VPn

下面以一个实际的例子来讲述如何配置IPSec VPN。假设网络A和网络B想通过 IPsec 隧道来彼此连接。网络A的网络地址在172.1610.1.0/24 范围内,网络B使用 172.1610.2.0/24 范围。网络A的网关 IP 地址是 172.1610.1.1,网络B的网关地址是172.1610.2.1。每个网络间的 IPsec 连接使用一个值为sharekey的预共享钥匙,网络A和网络B都同意让 racoon 自动生成和共享每个 IPsec 路由器之间的验证钥匙。网络A把 IPsec 连接命名为 ipsec0,而网络B把 IPsec 连接命名为 ipsec1。

上述配置可以在Red Hat Enterprise Linux 5系统中使用图形用户界面进行方便地配置,主要步骤如下:

(1)进入IPSec VPN的主界面,具体路径为[系统]——〉[管理]——〉[网络]则弹出如图1所示的对话框;

VPN实战2:构建IPSec VPN

图1  进入IPSec VPN配置主界面

(2)选择新建一个IPSec,并输入该隧道的描述名为securecomm,如图2所示;

VPN实战2:构建IPSec VPN

图2  输入IPSec VPN描述名称

(3)选择IPSec VPN的连接类型,主机对主机加密或者是网络对网络的加密。后一种应用最为广泛,如图3所示,此处选择后一种方式;

VPN实战2:构建IPSec VPN

图3  选择连接类型

(4)选择IPSec VPN的加密模式,即使用何种密钥,此处选择常用的IKA模式,如图4所示;

VPN实战2:构建IPSec VPN

图4 选择采用IKA的自动加密模式

(5)设定IPSec VPN本地网络端的相关配置,如图5所示;

VPN实战2:构建IPSec VPN

图5 设定本地网络配置

#p#

(6)设定IPSec VPN远程网络端的相关配置,如图6所示;

VPN实战2:构建IPSec VPN

图6  设定远程网络配置

(7)设定IPSec共享key的名称,如图7所示;

VPN实战2:构建IPSec VPN

图7  设定IPSec共享key的名称

(8)完成上述步骤后,IPSec VPN已经设置完成,如图8所示,将显示设置的具体信息,以供用户核对;

VPN实战2:构建IPSec VPN

图8 设置完成,显示设置信息

(9)如图9所示,IPSec VPN成功设置完成。

VPN实战2:构建IPSec VPN

图9 设置好的IPSec VPN

以下是网络A的 IPsec 连接的 ifcfg 文件。在这个例子中用来识别该连接的独特名称是 ipsec0,因此其结果文件被命名为 /etc/sysconfig/network-scripts/ifcfg-ipsec0。

TYPE=IPSEC

ONBOOT=false # 引导时不激活

IKE_METHOD=PSK # 使用预共享密钥

SRCGW=172.1610.1.10 # 源网关

DSTGW=172.1610.2.10 # 目标网关

SRCNET=172.1610.1.0/24 # 源网段

DSTNET=172.1610.2.0/24 # 目标网段

DST=192.1610.1.20 # 网络BVPN Server的外网IP

以下是预共享钥匙文件(叫做 /etc/sysconfig/network-scripts/keys-ipsecX,这里的 X 对网络A来说是0,对网络B来说是1),两个工作站都使用它来彼此验证。该文件的内容应该完全一致,并且只有root用户才应该有读写权。

IKE_PSK=yoyotown.com

改变 keys-ipsec0 文件的权限,只有root用户才有读写权。

#chmod 600 /etc/sysconfig/network-scripts/keys-ipsec0

要在任何时候改变验证钥匙,编辑两个 IPsec 路由器上的 keys-ipsecX 文件。这两个钥匙必须 完全一致才能保证正确的连接性。#p#

以下是 IPsec 连接的 /etc/racoon/racoon.conf 配置文件。

# Racoon IKE daemon configuration file.

# See ‘man racoon.conf’ for a description of the format and entries.

path include “/etc/racoon”;

path pre_shared_key “/etc/racoon/psk.txt”;

path certificate “/etc/racoon/certs”;

sainfo anonymous

{

pfs_group 2;

lifetime time 1 hour ;

encryption_algorithm 3des, blowfish 448, rijndael ;

authentication_algorithm hmac_sha1, hmac_md5 ;

compression_algorithm deflate ;

}

include “/etc/racoon/X.X.X.X.conf” # IPSec被激活时自动生成,X.X.X.X为远程VPN Server的外网IP

以下是连接到远程网络时生成的配置文件。该文件的名称为 X.X.X.X.conf。注意,一旦IPsec隧道被激活,该文件会被自动生成。

remote X.X.X.X

{

exchange_mode aggressive, main;

my_identifier address;

proposal {

encryption_algorithm 3des;

hash_algorithm sha1;

authentication_method pre_shared_key;

dh_group 2 ;

}

}

在完成上述操作后,在启动IPsec 连接前,内核中应该启用IP转发。在 shell 提示符下作为root用户来启用 IP 转发:

(1)编辑 /etc/sysctl.conf,把net.ipv4.ip_forward 设置为1。

(2)执行以下命令来启用改变:

#sysctl -p /etc/sysctl.conf

(3)以root用户身份启动 IPsec 连接:

#service network restart

这样,IPSec连接就被激活了,网络A和网络B能够安全地进行通信。

责任编辑:蓝雨泪 来源: TechTarget中国
相关推荐

2011-11-25 13:49:17

2012-09-27 10:21:00

2011-11-29 16:08:30

IPsec VPN

2012-09-26 09:49:44

2011-11-25 13:34:56

IPsec VPNIPsec VPN协议

2011-11-25 13:24:56

2011-11-07 10:49:16

IPsec VPNMPLS VPN

2011-11-29 12:27:54

2010-12-15 11:24:35

2011-11-29 14:50:19

IPSecVPN

2011-05-30 09:27:44

2011-11-29 12:13:21

VPN

2014-11-17 15:47:51

2011-11-25 11:23:29

IPsec VPNIPsec VPN配置

2011-11-29 13:23:29

2011-11-29 12:17:00

2011-11-29 13:42:55

2009-04-08 10:34:00

IPSec VPN协议

2011-11-25 14:15:02

IPsec VPNIPsec VPN配置

2010-04-09 17:41:15

VPN构建
点赞
收藏

51CTO技术栈公众号