教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 实用模板 >

PPTPL2TP协议详解以及应用部署 - 图文(9)

来源:网络收集 时间:2026-08-23
导读: 在Ubuntu上部署L2TP服务 一、简介 目前流行的L2TP服务都是通过IPSec加密的,正式的叫法应该是L2TP over IPSec。因此,要获得通用性较强的L2TP服务,就需要有IPSec支持。 IPSec提供加密、验证服务,客户端连接服务器

在Ubuntu上部署L2TP服务

一、简介 目前流行的L2TP服务都是通过IPSec加密的,正式的叫法应该是L2TP over IPSec。因此,要获得通用性较强的L2TP服务,就需要有IPSec支持。

IPSec提供加密、验证服务,客户端连接服务器后首先请求IPSec验证,这通常是用PSK进行验证,验证通过后,交由L2TP处理。

L2TP负责对数据进行封包,并启动pppd建立通讯链路。pppd负责用户名、密码的验证。 以上就是建立一个L2TP连接的大致过程,但是其中会用到多种相关的协议或者端口:

o o o o o

协议:UDP,端口500,Internet Key Exchange (IKE) 协议:UDP,端口4500,IPsec NAT-T 协议:UDP,端口1701,L2TP监听

协议:ESP,协议号50,Encapsulated Security Payload 协议:AH,协议号51,Authentication Header

ESP和AH协议用于提供验证、数据完整性以及加密通信等特性。它们可以加密整个数据包,也可以仅加密上层协议头,这取决于IPSec所启用的模式。

IPSec工作在隧道模式(tunnel)时,加密整个数据报;传输模式(transport)时,仅加密IP数据报的头部。

我们配置的IPSec仅向L2TP提供支持,因此工作在传输模式。

二、安装软件包 现在流行的ipsec来自openswan,l2tp来自xl2tpd。本文将以这两个软件包进行讲解如何配置。当提及openswan的时候就是指ipsec,当说到xl2tpd的时候就是指l2tp。希望读者能够明白。

1.搭建环境

o o o o

Ubuntu 10.04 Kernel 2.6.32 Openswan 2.6.37 xl2tpd-1.2.5

/!\\重要:笔者一开始在Ubuntu 11.04上进行实验,Kernel 3.0,IPSec版本2.6.23。这里有几个严重问题:

1. 2.

openswan尚未对3.0内核提供良好支持,某些情况下用iPhone或者win7客户端连接会导致内核奔溃!

2.6.23版本的openswan尚有诸多BUG,即使在Kernel 2.6的环境下,也无法保证100%连接成功。

因此,请至少使用openswan 2.6.37的版本,当前最新版本是2.6.38。源代码可在这里下载:http://download.openswan.org/openswan/,之后需要通过编译完成安装。对于openswan的安装我们将会提供两种不同的方法。

2.通过添加软件库安装openswan

apt-get install python-software-properties add-apt-repository ppa:openswan/ppa apt-get update apt-get install openswan 如果出现Do you want to create a RSA public/private keypair for this host?。我们选择No,这种模式的IPSec通过证书进行验证,而非PSK。

3.通过编译源代码包安装openswan

获取最新软件包: wget http://download.openswan.org/openswan/openswan-2.6.38.tar.gz tar -xzf openswan-2.6.38.tar.gz 编译不同的版本可能会依赖不同的库文件,因此如果你正在编译更高版本的openswan,请务必先阅读README文件。这里我们安装如下库文件: apt-get install libgmp3-dev flex bison 安装这些库会占用大量空间,而且在服务器上编译二进制文件通常不是明智之举!但是有时候服务器架构会与你的测试机完全不同,因此可能你仍然需要在服务器上做这些工作。接下来我们开始编译: make programs install 如果一切顺利,编译工作完成后配置文件及服务会自动安装到合适的地方,也就是和通过apt-get安装没什么两样了。

4.安装xl2tpd

Ubuntu中xl2tpd的版本目前没有发现严重问题。因此安装起来也比较方便: apt-get install xl2tpd 三、开始配置 配置工作分为三部分:IPSec配置、L2TP配置、PPP配置

1.IPSec配置

# /etc/ipsec.conf config setup nat_traversal=yes virtual_private=%v4:10.0.0.0/8,%v4:192.168.0.0/16,%v4:172.16.0.0/12,%v4:25.0.0.0/8,%v6:fd00::/8,%v6:fe80::/10 oe=off protostack=netkey conn L2TP-PSK-NAT rightsubnet=vhost:%priv also=L2TP-PSK-noNAT conn L2TP-PSK-noNAT authby=secret pfs=no auto=add keyingtries=3 # we cannot rekey for %any, let client rekey rekey=no # Apple iOS doesn't send delete notify so we need dead peer detection # to detect vanishing clients dpddelay=10 dpdtimeout=90 dpdaction=clear # Set ikelifetime and keylife to same defaults windows has ikelifetime=8h keylife=1h # l2tp-over-ipsec is transport mode type=transport # left=$IP # # For updated Windows 2000/XP clients, # to support old clients as well, use leftprotoport=17/%any leftprotoport=17/1701 # # The remote user. # right=%any # Using the magic port of \ # a work around required for Apple OSX clients that use a randomly # high port. rightprotoport=17/%any conn passthrough-for-non-l2tp type=passthrough left=$IP leftnexthop=$GATEWAY right=0.0.0.0 rightsubnet=0.0.0.0/0 auto=route 其中,$IP改成你主机以太网卡的IP,$GATEWAY改成该IP所在网段的网关地址,下同。对于下面的密钥文件,你需要将密钥引在引号中。 # /etc/ipsec.secrets $IP %any: PSK \最后我们需要修改某些网络策略,让ipsec正常运行: for each in /proc/sys/net/ipv4/conf/* do echo 0 > $each/accept_redirects …… 此处隐藏:1326字,全部文档内容请下载后查看。喜欢就下载吧 ……

PPTPL2TP协议详解以及应用部署 - 图文(9).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/519506.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)