前一阵用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、添加一个用户
[admin@PPTP-Server]ppp secret>add name=jack password=pass \
\... local-address=10.0.0.1 remote-address=10.0.0.2
2、开启PPTP服务
[admin@PPTP-Server]interface pptp-server server>set enabled=yes
二、PPTP客户端配置
1、添加PPTP客户端
[admin@PPTP=-Client]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并作为默认网关;
[admin@MikroTik]interface pptp-client>add name=test2 connect-to=10.1.1.12 \
\...user=john add-default-route=yes password=john
[admin@MikroTik]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
[admin@MikroTik] interface pptp-client> enable 0
PPTP客户端监测
命令:/interface pptp-client monitor
属性描述
encoding(文本)--在此连接中使用加密和编码(如果是非对称的,用'/'隔开)
status(文本) - 客户端的状态
Dialing - 尝试建立连接
Verifying password... - 连接已经建立,正在验证密码
Connected - 已连接
Terminated - 接口未启用或另一方未建立连接
uptime(时间) - 显示连接时间天,小时,分钟,秒
例子
一个建立连接的例子:
[admin@MikroTik]interface pptp-client>monitor test2
uptime:4h35s
encoding:MPPE 128bit,stateless
status:Connected
[admin@MikroTik]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服务器
[admin@MikroTik]interfece pptp-server server>set enabled=yes
[admin@MikroTik]interface pptp-server server>print
enabled:yes
mtu:1460
mru:1460
authentication:mschap2,mschap1
keepalive-timeout:30
default-profile:default
[admin@MikroTik]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用户添加静态通路:
[admin@MikroTik] interface pptp-server>add user=ex1
[admin@MikroTik] 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
[admin@MikroTik] 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服务器上为客户端建立用户
[admin@HomeOffice]ppp secret>add name=ex service=pptp password=lkjrht
local-address=10.0.103.1 remote-address=10.0.103.2
[admin@HomeOffice]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=""
[admin@HomeOffice]ppp secret>
然后将用户添加到PPTP服务列表
[admin@HomeOffice] interface pptp-server>add user=ex
[admin@HomeOffice] interface pptp-server>print
Flags: X - disabled, D - dynamic, R - running
# NAME USER MTU CLIENT-ADDRESS UPTIME ENCODING
0 pptp-in1 ex
[admin@HomeOffice] interface pptp-server>
最后,开启服务。
[admin@HomeOffice] interface pptp-server server>set enabled=yes
[admin@HomeOffice] interface pptp-server server>print
enabled:yes
mtu:1460
mru:1460
authentication:mschap2
default-profile:default
[admin@HomeOffice] interface pptp-server server>
增加PPTP客户端到远程office路由器:
[admin@RemoteOffice] interface pptp-client>add connect-to=192.168.80.1 user=ex \
\... password=lkjrht disabled=no
[admin@RemoteOffice] interface pptp-client>print
Flags: X - disabled, R -runing
0 R name="pptp-out1" mtu=1460 mru=1460 connect-to=192.168.80.1 user="ex"
password="lkjrht" profile=default add-default-route=no
[admin@RemoteOffice] interface pptp-client>
这样,一条PPTP隧道就在两个路由器间建立了。这条隧道在在路由器之间象以太网似的点到点连接,路由器的IP分别是10.0.103.1和10.0.103.2。他允许两个路由器通过第三方网络“直接”的连接。
图2
令本地企业网可以在PPTP隧道路由,必须增加这些路由规则:
[admin@HomeOffice] >ip route add dst-address 10.150.1.0/24 gateway 10.0.103.2
[admin@RemoteOffice] > ip route add dst-address 10.150.2.0/24 gateway 10.0.103.1
在PPTP服务端可以使用用户配置的路由参数转换:
[admin@HomeOffice] 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==""
[admin@HomeOffice] ppp secret> set 0 routes="10.150.1.0/24 10.0.103.2 1"
[admin@HomeOffice] 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"
[admin@HomeOffice] ppp secret>
测试PPTP隧道连接:
[admin@RemoteOffice]> /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网络
[admin@RemoteOffice]> /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
本例中的路由器
[RemoteOffice]
Internet地址 192.168.81.1/24
局域网地址 10.150.1.254/24
客户端计算机可以通过Internet访问路由器.
在PPTP服务器上建立用户:
[admin@RemoteOffice] ppp secret> add name=ex service=pptp password=lkjrht
local-address=10.150.1.254 remote-address=10.150.1.2
[admin@RemoteOffice] 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==""
[admin@RemoteOffice] ppp secret>
将用户添加到PPTP服务列表:
[admin@RemoteOffice] interface pptp-server> add name=FromLaptop user=ex
[admin@RemoteOffice] interface pptp-server> print
Flags: X - disabled, D - dynamic, R - running
# NAME USER MTU CLIENT-ADDRESS UPTIME ENC...
0 FromLaptop ex
[admin@RemoteOffice] interface pptp-server>
启用PPTP服务:
[admin@RemoteOffice] interface pptp-server server> set enabled=yes
[admin@RemoteOffice] interface pptp-server server> print
enabled: yes
mtu: 1460
mru: 1460
authentication: mschap2
default-profile: default
[admin@RemoteOffice] interface pptp-server server>
最后,启用局域网接口的proxy APR功能
[admin@RemoteOffice] interface ethernet> set Office arp=proxy-arp
[admin@RemoteOffice] interface ethernet> print
Flags: X - disabled, R - running
# NAME MTU MAC-ADDRESS ARP
0 R ToInternet 1500 00:30:4F:0B:7B:C1 enabled
1 R Office 1500 00:30:4F:06:62:12 proxy-arp
[admin@RemoteOffice] interface ethernet>
中间是一段windows中建立PPTP客户端~~
问题解答
问:我使用了防火墙,无法建立PPTP连接
答:确保TCP连接端口1723在你的两个站点间可以双向通行.并且需要允许IP协议47通过.
posted on 2006-03-17 13:10
wf 阅读(3714)
评论(1) 编辑 收藏 引用 所属分类:
Computer Tech.