zx367 发表于 2007-12-10 09:58:50

翻译的ROS手册PPTP部分 转自http://www.cnitblog.com/windforce

转自http://www.cnitblog.com/windforce[原创]自己翻译的ROS手册PPTP部分

前一阵用PPTP实现VPN时自己翻译的部分官方手册,也放出来纪念一下~~
英语单词一向记不住几个,好在手册里用到的很是“平易近人”~翻译的不好,不要笑我~~
原文:http://www.mikrotik.com/docs/ros/2.9/interface/pptp
摘要
PPTP(点到点隧道协议)支持基于IP的加密隧道。利用ROS可以实现PPTP客户端和PPTP服务端。

PPTP隧道的一般应用
1 通过INTERNET的安全的路由器-路由器隧道
2 连接(或桥接)本地企业网或局域网(当EOIP启用时)
3 移动或远程客户实现远程介入公司的企业网/局域网(查阅WINDOWS的PPTP设置获取更多信息)
每个PPTP连接包括一个服务端和一个客户端。ROS可以做为客户端也可以做为服务端--或者同时做为服务端和客户端。例如,下面做为客户端的配置可以接入到WIN2K-SERVER,另外的ROS,或者其他提供PPTP服务的路由器

快速设置向导

下面步骤实现在IP地址分别为10.5.8.104(PPTP服务端)和10.1.0.172(PPTP客户端)的两个ROS间建立PPTP隧道~

一、PPTP服务端配置
1、添加一个用户
ppp secret>add name=jack password=pass \
\... local-address=10.0.0.1 remote-address=10.0.0.2
2、开启PPTP服务
interface pptp-server server>set enabled=yes
二、PPTP客户端配置
1、添加PPTP客户端
interface pptp-client>add user=jack password=pass \
\... connect-to=10.5.8.104 disabled=no

规范

要求模块:PPP
要求许可: LEVEL1(1个隧道),LEVEL3(200个隧道),LEVEL5
子目录:/interface pptp-server, /interface pptp-client
standards and Technologies: PPTP(RFC 2637)
硬件需求:无特殊要求

相关文档
1、软件模块管理
2、IP addresses和ARP
3、PPP user AAA
4、EoIP

描述

PPTP是利用点到点协议传输IP数据的安全隧道。PPTP将PPP封装在基于IP的虚拟线路上。PPTP合并了PPP和MPPE(微软点到点加密)来建立加密链路。这个协议的功能是在路由器之间建立一条如同在路由器和PPTP客户端间的方便管理的安全连接。(几乎包括WINDOWS在内的所有操作系统都支持PPTP Client)

PPTP包含PPP的连接认证和计费机制。连接的认证和计费可以通过RADIUS客户端或者本地服务来实现。

支持MPPE 40位RC4和MPPE 128位RC4加密。

PPTP通过TCP1723端口和GRE协议通信(通用路由封装,IP协议 ID47),由IANA制定。通过开启TCP1723端口和允许47号协议通信,PPTP可以与大多数的防火墙和路由器一起使用。

地址伪装/地址转换的IP连接可能会受到限制或无法建立PPTP连接。请查阅本部分后的Mircosoft和RFC链接获得更多信息。

其他资源
http://msdn.microsoft.com/library/backgrnd/html/understanding_pptp.htm
http://support.microsoft.com/support/kb/articles/q162/8/47.asp
http://www.ietf.org/rfc/rfc2637.txt?number=2637
http://www.ietf.org/rfc/rfc3078.txt?number=3078
http://www.ietf.org/rfc/rfc3079.txt?number=3079

PPTP客户端配置

子目录:/interface pptp-client

属性介绍
add-default-route(yes|no; 默认:no)-是否使用本连接的服务端作为默认路由器(网关);
allow(多选:mschap2,mschap1,chap,pap;默认:mschap2,mschap1,chap,pap)-允许客户端使用的认证协议;
connect-to(IP地址)-要连接的PPTP服务器地址
mru(整数;默认:1460)--最大接收单元。最优值是隧道应用接口的MRU值减去40(所以,对于1500比特的以太连接,设置MRU为1460避免分组过小)
mtu(整数;默认:1460)-最大传输单元。最优值是隧道应用的接口的MTU值减去40(所以,对于1500比特的以太连接,设置MTU为1460避免分组过小)
name(连接名;默认:pptp-outN)--接口名称
password(文本;默认:"")-登陆远程服务端的密码
profile(名称;默认:default)-登陆到远程服务端的配置文件
user(文本)-当登陆到远程服务端的用户名

例子

建立一个名称为test2的PPTP客户端,用户名john,密码john,服务端10.1.1.12并作为默认网关;
interface pptp-client>add name=test2 connect-to=10.1.1.12 \
\...user=john add-default-route=yes password=john
interface pptp-client>print
Flags: X - disabled, R - running
0 X name="test2" mtu=1460 connect-to=10.1.1.12 user="john"
    password="john" profile=default add-default-route=yes
interface pptp-client> enable 0

PPTP客户端监测
命令:/interface pptp-client monitor
属性描述

encoding(文本)--在此连接中使用加密和编码(如果是非对称的,用'/'隔开)
status(文本) - 客户端的状态
Dialing - 尝试建立连接
Verifying password... - 连接已经建立,正在验证密码
Connected - 已连接
Terminated - 接口未启用或另一方未建立连接
uptime(时间) - 显示连接时间天,小时,分钟,秒

例子
一个建立连接的例子:
interface pptp-client>monitor test2
uptime:4h35s
      encoding:MPPE 128bit,stateless
      status:Connected
interface pptp-client>

建立PPTP服务器

子目录: /interface pptp-server server

描述

PPTP服务器为每个连接的PPTP客户端建立一个动态接口。PPTP连接的数量取决于你拥有的许可等级。Level1允许1个客户端,Level3和Level4达到200客户端,Level5和Level6不限制数量。
建立PPTP用户,你可以参考PPP安全和PPP配置手册。也可以用ROS作为RADIUS客户端记录PPTP用户,具体内容请查阅手册。

属性描述

authentication(多选:pap|chap|mschap1|mschap2;默认:mschap2) - 认证机制
default-profile - 使用默认配置文件
enabled(yes|no ;默认:no) - 是否开启PPTP服务器
keepalive-timeout(时间;默认:30) - 设置路由器发送相邻“保持活动”包的时间片。如果在时间片中没有流量或没有活动响应(如 2*keepalive-timeout),未响应的客户端将被宣告断开
mru (整数;默认:1460) - 最大接受单元。最优值为隧道工作接口的MRU值减去40(所以对于1500-byte的以太连接,设置1460避免分组过小)
MTU(整数;默认:1460) - 最大传输单元。。。。。。。。。。。。。。。。

例子
启用PPTP服务器

interfece pptp-server server>set enabled=yes
interface pptp-server server>print
            enabled:yes
                  mtu:1460
                  mru:1460
       authentication:mschap2,mschap1
    keepalive-timeout:30
      default-profile:default
interface pptp-server server>

PPTP服务端连接

子目录:/interface pptp-server

描述

在PPTP服务器配置中有两种连接-静态连接和动态连接。当用户数据库或者default-profile正确设置了local-address和remote-address就可以建立动态连接。当添加静态连接后,default-profile应该为缺省值,只有PPP用户(在/ppp secret)能够配置。注意两种情况中PPP用户都必须正确配置。

属性描述

client-address(IP地址) - 显示已连接客户端的IP地址(这里无法设置)
encoding (文本) - 在此连接中使用的加密和编码(用'/'隔开)
mtu(整数) - 客户端的MTU(这里无法设置)
name(名称) - 接口名称
uptime(时间) - 显示连接时间
user(名称) - 静态配置或者动态添加的用户名


例子

为ex1用户添加静态通路:
interface pptp-server>add user=ex1
interface pptp-server>print
Flags: X - disabled, D - dynamic, R - running
#       NAME             USER         MTU      CLIENT-ADDRESS      UPTIME   ENCODING
0   DR <pptp-ex>         ex            1460       10.0.0.202         6m32s   none
1       pptp-in1         ex1         
interface pptp-server>

在这个例子中ex是已经连接的用户。


PPTP 应用实例


路由-到-路由安全隧道实例

下面是个利用通过Internet的加密PPTP隧道连接2个企业网络的例子。

图1

在这个例子中有两个路由器
[本地Office]

本地企业网地址:10.150.2.254/24
本地接入Internet:192.168.80.1/24

[远程Office]

远程接入Internet: 192.168.81.1/24
远程企业网地址:10.150.1.254/24

路由器接入不同的ISP。其中一个路由器通过Internet可以访问另一个路由器。

在PPTP服务器上为客户端建立用户

ppp secret>add name=ex service=pptp password=lkjrht
local-address=10.0.103.1 remote-address=10.0.103.2
ppp secret>print detail
Flags: X - disabled
0      name="ex" service=pptp caller-id="" password="lkjrht" profile=default
       local-address=10.0.0103.1 remote-address=10.0.103.2 routes=""
ppp secret>

然后将用户添加到PPTP服务列表

interface pptp-server>add user=ex
interface pptp-server>print
Flags: X - disabled, D - dynamic, R - running
#    NAME       USER       MTU      CLIENT-ADDRESS      UPTIME   ENCODING
0   pptp-in1    ex
interface pptp-server>

最后,开启服务。

interface pptp-server server>set enabled=yes
interface pptp-server server>print
            enabled:yes
                mtu:1460
                mru:1460
   authentication:mschap2
    default-profile:default
interface pptp-server server>

增加PPTP客户端到远程office路由器:

interface pptp-client>add connect-to=192.168.80.1 user=ex \
\... password=lkjrht disabled=no
interface pptp-client>print
Flags: X - disabled, R -runing
0R name="pptp-out1" mtu=1460 mru=1460 connect-to=192.168.80.1 user="ex"
       password="lkjrht" profile=default add-default-route=no

interface pptp-client>

这样,一条PPTP隧道就在两个路由器间建立了。这条隧道在在路由器之间象以太网似的点到点连接,路由器的IP分别是10.0.103.1和10.0.103.2。他允许两个路由器通过第三方网络“直接”的连接。

图2


令本地企业网可以在PPTP隧道路由,必须增加这些路由规则:

>ip route add dst-address 10.150.1.0/24 gateway 10.0.103.2
> ip route add dst-address 10.150.2.0/24 gateway 10.0.103.1

在PPTP服务端可以使用用户配置的路由参数转换:

ppp secret> print detail
Flags: X - disabled
0   name="ex" service=pptp caller-id="" password="lkjrht" profile=default
      local-address=10.0.103.1 remote-address=10.0.103.2 routes==""

ppp secret> set 0 routes="10.150.1.0/24 10.0.103.2 1"
ppp secret> print detail
Flags: X - disabled
0   name="ex" service=pptp caller-id="" password="lkjrht" profile=default
      local-address=10.0.103.1 remote-address=10.0.103.2
      routes="10.150.1.0/24 10.0.103.2 1"

ppp secret>

测试PPTP隧道连接:

> /ping 10.0.103.1
10.0.103.1 pong: ttl=255 time=3 ms
10.0.103.1 pong: ttl=255 time=3 ms
10.0.103.1 pong: ttl=255 time=3 ms
ping interrupted
3 packets transmitted, 3 packets received, 0% packet loss
round-trip min/avg/max = 3/3.0/3 ms

测试通过PPTP隧道连接到localhomeoffice网络

> /ping 10.150.2.254
10.150.2.254 pong: ttl=255 time=3 ms
10.150.2.254 pong: ttl=255 time=3 ms
10.150.2.254 pong: ttl=255 time=3 ms
ping interrupted
3 packets transmitted, 3 packets received, 0% packet loss
round-trip min/avg/max = 3/3.0/3 ms

要在这条安全隧道上桥接局域网,请查阅手册的'EoIP'实例部分.限制隧道的最大速度,请参考'Queues'部分.


通过PPTP隧道连接到远程客户端

下面的实例说明了如何通过加密的PPTP隧道连接一台计算机到远程办公室网络,分配给计算机一个和远程网络相同网络号的地址(不使用EoIP隧道的桥接技术)

关于建立PPTP客户端,请参考你所使用软件的手册.

图3

本例中的路由器


Internet地址 192.168.81.1/24
局域网地址10.150.1.254/24

客户端计算机可以通过Internet访问路由器.

在PPTP服务器上建立用户:

ppp secret> add name=ex service=pptp password=lkjrht
local-address=10.150.1.254 remote-address=10.150.1.2
ppp secret> print detail
Flags: X - disabled
0   name="ex" service=pptp caller-id="" password="lkjrht" profile=default
      local-address=10.150.1.254 remote-address=10.150.1.2 routes==""

ppp secret>

将用户添加到PPTP服务列表:

interface pptp-server> add name=FromLaptop user=ex
interface pptp-server> print
Flags: X - disabled, D - dynamic, R - running
#   NAME               USER         MTU   CLIENT-ADDRESSUPTIME   ENC...
0   FromLaptop         ex
interface pptp-server>

启用PPTP服务:
interface pptp-server server> set enabled=yes
interface pptp-server server> print
            enabled: yes
                mtu: 1460
                mru: 1460
   authentication: mschap2
    default-profile: default
interface pptp-server server>

最后,启用局域网接口的proxy APR功能

interface ethernet> set Office arp=proxy-arp
interface ethernet> print
Flags: X - disabled, R - running
#    NAME               MTU   MAC-ADDRESS       ARP
0R ToInternet         150000:30:4F:0B:7B:C1 enabled
1R Office               150000:30:4F:06:62:12 proxy-arp
interface ethernet>


中间是一段windows中建立PPTP客户端~~



问题解答

问:我使用了防火墙,无法建立PPTP连接

答:确保TCP连接端口1723在你的两个站点间可以双向通行.并且需要允许IP协议47通过.

hcb 发表于 2007-12-10 12:18:59

楼主辛苦了,坛子里太需要楼主这样的人了, 希望再接再厉,能不能弄点双线策略方面的教程呢?

andy_wwh 发表于 2007-12-10 12:26:03

多谢

lzzl551 发表于 2009-4-3 04:48:13

好东西,都来顶上去,翻译的太好了,简单易懂
页: [1]
查看完整版本: 翻译的ROS手册PPTP部分 转自http://www.cnitblog.com/windforce