ipsec-tools设置(又一IPSecVPN)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
ipsec-tools设置(又一IPSecVPN)
ipsec-tools设置(又一IPSec VPN)
实现IPSec要求主机安装上安装ipsec-tools RPM 软件包,Redhat一般默认安装。
rpm -qa |grep ipsec-tools
网络1和网络2想通过IPsec 隧道来彼此连接。
网络1的网络地址在 192.168.10.0/24 范围内,网络2使用 192.168.20.0/24 范围。
网络1的网关IP 地址是192.168.10.1,网络2的网关地址是192.168.20.1。
每个网络间的 IPsec 连接使用一个值为 的预共享钥匙,网络1和网络2都同意让 racoon 自动生成和共享每个 IPsec 路由器之间的验证钥匙。
网络1把IPsec 连接命名为ipsec0,而网络2把 IPsec 连接命名为 ipsec1。
以下是网络1的 IPsec 连接的 ifcfg 文件。
在这个例子中用来识别该连接的独特名称是ipsec0,因此其结果文件被命名为/etc/sysconfig/network-scripts/ifcfg-ipsec0。
TYPE=IPSEC
ONBOOT=yes # 引导时激活
IKE_METHOD=PSK # 使用预共享密钥
SRCGW=192.168.10.10 # 源网关
DSTGW=192.168.20.10 # 目标网关
SRCNET=192.168.10.0/24 # 源网段
DSTNET=192.168.20.0/24 # 目标网段
DST=192.168.1.20 # 网络2VPN Server
的外网IP
以下是预共享钥匙文件(叫做/etc/sysconfig/network-scripts/keys-ipsecX,这里的X 对网络1来说是0,对网络2来说是1),两个工作站都使用它来彼此验证。
该文件的内容应该完全一致,并且只有root用户才应该有读写权。
IKE_PSK=
改变 keys-ipsec0 文件的权限,只有root用户才有读写权。
chmod 600 /etc/sysconfig/network-
scripts/keys-ipsec0
要在任何时候改变验证钥匙,编辑两个IPsec 路由器上的keys-ipsecX 文件。
这两个钥匙必须完全一致才能保证正确的连接性。
以下是 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
以root用户身份启动 IPsec 连接:
service network restart
连接被激活,网络1和网络2能够彼此通信。
使用下面命令可以显示路由信息:
route -n
要测试 IPsec 连接,运行 tcpdump 工具来查看在主机(或网络)间传输的网络分组,并校验它们是否通过IPsec 被加密了。
分组应该包括 AH 头,而且应该被显示为 ESP 分组。
ESP 意味着它被加密了。
例如,要检查网络1的 IPsec 连接,键入:
tcpdump -n -i eth1 host 192.168.1.20 分组应该包含 AH 头,应该为显示为 ESP 分组。
ESP 意味着它被加密了:
如果你的VPN Server和默认网关是同一台机器,则无需下面操作:
由于LServer不是子网的网关,所以必须在L-APP Server上设置路由(或者在网关192.168.10.1上设置下面路由,以避免在内网的每台机器上设置路由):
L-APP Server上路由配置:
route add -net 192.168.20.0 netmask
255.255.255.0 gw 192.168.10.10
由于RServer不是子网的网关,所以必须在R-APP Server上设置路由(或者在网关192.168.20.1上设置下面路由,以避免在内网的每台机器上设置路由):
R-APP Server上路由配置:
route add -net 192.168.10.0 netmask
255.255.255.0 gw 192.168.20.10
测试连通性:
三月 13th, 2009 in Linux服务架设, VPN Server | tags: IPSec, ipsec-tools, racoon, vpn。