Linux中国 Linux中国门户站!
设为主页 设为主页
收藏本站 收藏本站
 
当前位置 :首页 ->Linux技术 ->网络应用 ->正文

使用Linux L2TP/IPsec VPN 服务器

来源:linux.chinaunix.net 作者:QUSHIQIANG  时间:2007-04-22 点击: [收藏] [投稿]

10、配置Openswan
当你有了支持IPsec的内核,你就需要配置一条或多条IPsec连接。
Openswan文档中的示例假设Road Warrior客户想做“主机到网络”的IPsec连接。这里也这样假设,另一方面你想访问被Openswan网关保护的内网。在“普通”的IPsec(也就是无L2TP)下,你使用left/rightsubnet关键字。
Openswan文档不包括L2TP/IPsec连接。在L2TP/IPSec下用户同样想访问内网,但是完成这样的机制不同。首先,你声明一个 Windows/Macintosh客户与Openswan服务器之间的“主机到主机”IPsec隧道。当这个IPsec连接启动,客户连接到在 Openswan服务器上的L2TP服务。L2TP服务这时将数据包发往内网。在“普通”IPsec下,Openswan不会把它自身向前转发。
10.1 预共享密钥(PSK:Preshared Keys)概述
大多数L2TP/IPsec客户支持两种认证方法:X.509证书和预共享密钥。我假你首先尝试预共享密钥方式,当理解IPsec和L2TP/IPsec客户之怎么样工作时然后再根据你的需要切换到证书方式。
10.1.1 预共享密钥(PSK:Preshared Keys):配置一条IPsec连接
下边是一个Openswan配置文件的示例。它为一个用户定义了一条IPsec连接。 注:如果你想使用这个配置,你需要修改你的ipsec.conf文件(或在你的ipsec.conf文件增加下边这句:include L2TP*.conf)。
conn L2TP-PSK-orgWIN2KXP
        #
        # Use a Preshared Key. Disable Perfect Forward Secrecy.
        #
        authby=secret
        pfs=no
        #
        left=123.123.123.123
        #
        # Required for original (non-updated) Windows 2000/XP clients.
        leftprotoport=17/0
        #
        # The remote user.
        #
        right=234.234.234.234
        rightprotoport=17/1701
        #
        # Authorize this connection, and wait for connection from user.
        #
        auto=ignore
        keyingtries=3
你可以看到,配置比较简单,记住,上边的说明没有leftsubnet和rightsubnet。下边根据多数人的习惯,使用“left”表示服务器(“local”),使用“right”表示Road Warriors。最新的FreeS/WAN、Openswan和Strongwan支持预共享密钥和证书方式使用“right=%any”。
注:默认情况下,配置文件不是有效的(为了安全)。如果你想启用它们,需要把auto=ignore改为auto=add。
10.1.2 指定预共享密钥
将把预共享密钥输入到/etc/ipsec.secrets。
#
# Sample /etc/ipsec.secrets file for server at 123.123.123.123
#
123.123.123.123 234.234.234.234: PSK "thisismytopsecretkey"
123.123.123.123 111.222.111.222: PSK "keyforanotherclient"
# Line below only works on recent versions:

# 123.123.123.123 %any: "keysharedbyallusers"
格式解释:
#源IP指服务器,目标IP指客户。当目标IP地址为0.0.0.0时表示接受任何IP地址。
#新版的软件支持目标为%any。这两种情况适用于Road Warrior
源IP  目标IP :PSK "口令"
10.2 完美安全传送(PFS:Perfect Forward Secrecy)
“完美安全传送”提供特佳的安全。当你启用了PFS,你的敌人(黑客、竞争者等)就不能破解通过IPsec连接传送的数据包,就是他们可以监听加密后的连接并且他们拥有你的密钥(通过黑客、法院指令、第三者等)也不可以。PFS的这个属性就是著名的“阻止第三者”(escrow- foilage)。
上边的示例中有这样一行:
pfs=no
因为苹果和微软的L2TP/IPsec客户没有启用PFS,所以这一行是必需的。另一方面,Openswan默认是启用PFS的。(有人可能思考,为什么苹果和微软默认情况下没有使用PFS?这是因为<插入你中意的3个字母的政府部门>;?)
解决这个互通性的问题非常简单,在FreeS/WAN明确地禁用它。但是这里有FreeS/WAN小组关于它的说明。
FreeS/WAN默认是[pfs=yes]。我们认为没有不的理由;这是更为安全而且成本很小。两个终端的PFS设置必须相同。如果你在 FreeS/WAN的配置文件中ipsec.conf中用pfs=no关闭PFS,但是我们假设有可能你在另一端启用了PFS。这更加安全。
他们大概是对的,因为在这种情况它工作更好。“另一端”指微软客户端或Mac OS X v10.3+。编辑Windows注册表可以启用 MSL2TP客户的PFS。这可能有一点危险,如果要求你的用户来做可能有点难度,因此我们只有每台客户上启用PFS或者在服务器上加一句来关闭PFS。不幸的是我不知道怎么样在Windows 2000/XP或Mac OS X10.3+的图形界面下打开PFS。
注:当客户端请求时Openswan将使用PFS,甚至在Openswan配置文件中指定pfs=no时也会启用。
11 配置L2TP/IPsec客户端
假设现在你已经配置好了Openswan,那么,现在就开始安装并配置L2TP/IPsec客户。这根据你的客户类型(Windows 2000/XP、SoftRemote、Panther、Pocket PC等)不同而不同。

 如果您对本文有任何疑问或者建议,请到讨论区发表您的意见: >> 论坛入口 <<



上一篇:让Linux NAT服务器支持UPnP   下一篇:利用IP 别名托管多个SSL 站点

文章评论】 【收藏本文】 【推荐好友】 【打印本文】 【我要投稿】 【论坛讨论
更多相关文章
Power by linux-cn.com 粤ICP备05006655号