同时建立 PPTP 和 L2TP 服务器

首先我们先看一下 PPTP 和 L2TP 的建立,同样是在 PPP 的目录下, interface 菜单中,选择 PPTP-Server 和L2TP-Server 并启用服务:

在 L2TP 服务器配置下多了 Use IPsec 选项,这是在 RouterOS 6.16 后加入的 IPsec 选项,方便 windows 客户端的连接, Default-Profile 类型选择 default-encryption, Autentication 认证方式也可以选择相同方式。

这里我们举一个实例,我们建立了一个主机的 VPN 服务,同时启用 PPTP 和 L2TP 方式,分配远程 IP 为192.168.89.2-192.168.89.254 的地址池,我用 192.168.89.1 做为 VPN 隧道的本地 IP。

首先我进入 ip pool 中配置地址池:

配置好地址池后,在PPP Profiles 中使用默认的default-encryption 组规则,配合本地IP 地址192.168.89.1,在远程 remote-address 种配置之前添加号的地址池 VPN,设置 DNS 为 119.6.6.6,其他配置参数如下:

在 limits 选项中,配置相应的 Idle-timeout(空闲超时时间) 为 10 分钟、 Rate-limit(带宽) 为 1M 上行和2M 下行,配置 Only-one(帐号是否唯一性):

在 PPP secret 中配置用户, 账号 yus,密码 yus, service 参数用于选择 VPN 类型,这里设置为默认 any 这样支持 L2TP 和 PPTP 登陆方式, profile 为 default-encryption:

配置完成后,我们便可以通过 PPTP 或者 L2TP 连接 RouterOS 的 VPN 服务,在 windows 下可以通过 PPTP的方式直接连接 RouterOS 的 VPN 服务, 由于 windows 要求 L2TP 进行 IPsec 的加密方式连接, 所以需要在L2TP 配置 IPsec 密钥, 如果不考虑使用 IPsec 的 L2TP 连接,可以修改 windows 注册表。

Windows 配置在 VPN 属性中,选择“安全”, VPN 类型选择“使用 IPsec 的第 2 层隧道协议( L2TP/IPsec)”,点击“高级设置”,设置“使用预共享的密钥作为身份验证”

L2TP 的 Windows 注册表修改
这里介绍的是在 Windows 下不使用 IPsec 的 L2TP 连接,后面有提到如何配置 RouterOS 使用 L2TP/IPsec的 Windows 连接。这里介绍修改 windows 的 L2TP 注册表,缺省的 Windows XP L2TP 传输策略不允许 L2TP传输不使用 IPSec 加密。可以通过修改 Windows XP 注册表来禁用缺省的行为,手工修改:

1) 进入 Windows XP 的开始 运行里面输入―Regedit,打开―注册表编辑器,定位―HKEY_Local_Machine \ System \ CurrentControl Set \ Services \ RasMan \Parameters ‖ 主键。
2) 为该主键添加以下键值:

  • 键值: ProhibitIpSec
  • 数据类型: reg_dword
  • 值: 1

修改后即可通过 windows 正常连接到 L2TP 服务。 在 RouterOS 6.16 后加入了 L2TP 服务中配置 IPsec 的选项,简化了 IPsec 配置操作,所以现在修改注册表会用到的人很少。
注: PPTP 和 L2TP 的连接端口都是固定的无法自定义,但 OVPN 和 SSTP 隧道 VPN 的连接端口可以自己定义,这有助于受到网络环境限制,采取灵活处理方法。