一、简介
Poptop ,官方网站上的定义是The PPTP Server for Linux,就是利用PPTP(Point to Point Tunneling Protocol,点到点隧道协议)通过Internet访问VPN(Virtual Private Network,虚拟局域网),它允许远程用户安全、花费低廉地从Internet上的任何地方访问公司内部网络。
依据连接方式划分,VPN可以分为Lan to Lan模式和client to Lan模式两种。前者可以将两个彼此独立的局域网连接起来,就像同属于一个局域网内一样,可以利用OpenVPN来实现。而后者就该用到Poptop了。
PPTP使用了client-server模式来建立VPN连接。大多数微软操作系统都内置了PPTP客户端,所以就不需要安装第三方客户端软件,这就比其他VPN技术有了便于安装的优势。有关PPTP的详细描述见RFC 2367。
在Poptop出现以前,并没有使用PPTP客户端连接Linux主机的方法存在。使用Poptop,Linux主机可以立即在一个PPTP VPN环境下进行工作。
最新版本支持Windows 95/98/Me/NT/2000/XP PPTP客户端和Linux PPTP客户端。
Poptop属于自由软件,遵守GNU GPL许可证。
官方网站:http://www.poptop.org/
下载地址:http://sourceforge.net/projects/poptop/
安装环境
Fedora core 2(kernel 2.6.5-1.358)
二、安装
首先到http://sourceforge.net/project/showfiles.php?group_id=44827 下载下面4个安装文件。
dkms-2.0.2-1.noarch.rpm
kernel_ppp_mppe-0.0.4-3dkms.noarch.rpm
ppp-2.4.3-0.cvs_20040527.2.fc2.i386.rpm
pptpd-1.2.1-1.i386.rpm
依次进行安装完毕后,修改配置文件。
三、修改配置文件
这里需要修改如下3个配置文件。
/etc/pptpd.conf
/etc/ppp/options.pptpd
/etc/ppp/chap-secrets
如果你对这3个配置文件中的各个参数不太了解的话,可以到/usr/share/doc/pptpd-1.2.1/samples里面,这个目录存放了相关的sample文件可以阅读。
/etc/pptpd.conf
#指定pptp使用的选项文件
option /etc/ppp/options.pptpd
#把所有的debug信息写入系统日志/var/log/messages
debug
#使用/var/log/wtmp记录客户连接和断开。
Logwtmp
#服务器VPN虚拟接口将分配的IP地址
localip 10.100.1.1
#客户端VPN连接成功后将分配的IP。注意这里一共指定了36个IP地址,如果又超过36个客户进行连接时,超额的客户将无法连接成功。
remoteip 10.100.0.200-210,10.100.0.230-254
注意:为了安全性起见,localip和remoteip尽量不要同一个网段。
/etc/ppp/options.pptpd
#相当于身份验证时的域,一定要和/etc/ppp/chap-secrets中的内容对应,下面会讲到。
name pptpd
#传输加密。ppp-2.4.2以上的版本只支持MPPE加密,内核模块为 ppp_mppe.o
#拒绝pap身份验证
refuse-pap
#拒绝chap身份验证
refuse-chap
#拒绝mschap身份验证
refuse-mschap
#采用mschap-v2(Microsoft Challenge Handshake Authentication Protocol, Version 2)身份验证方式
require-mschap-v2
#注意在采用mschap-v2身份验证方式时要使用MPPE进行加密
require-mppe-128
#给客户端分配DNS地址和WINS服务器地址
ms-dns 202.99.96.68
#ms-wins 10.0.0.4
#启动ARP代理,如果分配给客户端的IP地址与内网网卡在一个子网就需要启用ARP代理。
Proxyarp
/etc/ppp/chap-secrets
#VPN客户账号和密码。
# Secrets for authentication using CHAP
# client server secret IP addresses
“username1” pptpd “password1” *
“username2” pptpd “password2” 10.100.0.201
注意:后面的IP地址栏可以知道次用户登陆后讲分配的IP地址,如果不具体指定,请用*号代替。
启动NAT转发
echo "1" >; /proc/sys/net/ipv4/ip_forward
/sbin/depmod -a
/sbin/modprobe ip_tables
/sbin/modprobe iptable_nat
/sbin/modprobe ip_nat_ftp
/sbin/modprobe ipt_LOG
四、启动pptpd
/sbin/service pptpd start
五、Windows客户端配置
这里我们以Win2000为例,讲一讲如何连接到Linux PPTP主机。
1、 打开“控制面板”->;“网络连接”->;“新建连接”,在弹出的“网络连接向导”窗口中,点击“下一步”。
2、 在下一个页面选择“通过Internet连接到专用网络”,再点击“下一步”。
3、 然后输入VPN主机名(可以是IP地址或者域名),再点击“下一步”。
4、 创建此连接,选择“所有用户使用此连接”,再点击“下一步”。
5、 输入连接名称,如“VPN”,再点击“完成”。
6、这时会生成一个名为“VPN”新连接,点击这个图标,会弹出登陆窗口,输入账号密码后登陆即可。
VPN连接成功后,通过观察连接的“详细信息”(这里用的是WinXP),可以看到身份验证采用了“MS CHAP 2”,加密方式采用了“MPPE 128”,看来我们的配置起作用了。
图1
六、常见问题
1、 在Win2000下连接VPN成功后,发现只能访问公司内网,而无法同时访问公网。
答:这是因为当连接VPN成功后,路由表发生了变化,Default Gateway变成了VPN给用户分配的那个IP地址,自然无法访问公网。解决方法是手工修改本机路由表,首先取消Default Gateway,然后添加一条公司内网的路由指向即可。举例如下:
在client端,连接成功后在DOS里面执行
//删除pptp建立的默认网关
route delete 0.0.0.0 mask 0.0.0.0 10.100.0.201
//增加一条指向公司内网的路由
route add 10.100.0.0 mask 255.255.255.0 10.100.0.201
后就能同时访问内网和公网了。
注意:
10.100.0.0是公司内网的网段
10.100.0.201是client端通过VPN连接成功后获得的IP地址
你也可以把这2个命令写出一个.bat文件,每次连接VPN成功后执行一下就可以啦。
关于这个问题,推荐大家看看发表于《网管员世界》2004年第10期的一篇文章
《一个VPN客户端的路由故障解决及深入探讨》
http://www.firewallcn.net/article_view.asp?id=31
2、如果客户端安装了IPX协议和NETBEUI协议,那么在连接的时候会弹出如下图所示的错误信息,但是点击“接收”后仍能连接成功。
图2
答:我看了一下 Microsoft’s PPTP FAQ
http://www.microsoft.com/ntserver/ProductInfo/faqs/PPTPfaq.asp
里面写得很清楚
because PPTP supports multiple protocols (IP, IPX, and NetBEUI), it can be used to access a wide variety of existing LAN infrastructures.
看来PPTP是支持IPX and NetBEUI协议的,可是为什么协商不成功呢,目前原因不明。不过不会影响正常使用。
3、使用Windows XP连接VPN成功后,在传输“大块”数据时会出现数据堵塞,导致数据传输失败。
答:这是一个比较复杂的问题。首先,发现问题的过程是这样的:笔者使用一台WinXP的电脑(简称主机A)连接公司的VPN成功后,访问内网的一个基于B/S的CRM系统(简称主机B)时,发现首页可以显示(页面比较简单,包含的数据量较小),输入账号密码登陆后,发现只能显示页面顶部的一点点内容,而下面大部分内容无法显示。而换一台Win2000的电脑登陆,内容就可以完全显示出来。登陆到Linux VPN主机上,利用tcpdump对数据传输过程进行抓包分析,发现:每当B向A传输大于1396字节的数据时,VPN主机就会反馈B如下信息
注意:
10.100.0.200:VPN主机的内网网卡的IP地址
10.100.0.100:主机A的IP地址
10.100.0.203:主机B通过VPN获取的IP地址
21:54:21.953848 IP 10.100.0.200 >; 10.100.0.100: icmp 556: 10.100.0.203 unreachable -
need to frag (mtu 1396)
可以看到VPN主机向提供web服务的主机B返回了一个ICMP不可达的差错报文。其含义是VPN主机收到了一个需要分片才能通过的数据包,而这个数据包在其IP头部又设置了不能分片(DF)的标志。所以该数据包不能通过VPN主机。
根据TCP/IP协议,在建立TCP连接时,传输双方都要指明自己的mss(最大报文长度)大小,然后选取双方之中最小的那个mss,以避免在随后的数据传送过程中出现数据包分片传输的情况。通过抓包分析,主机B的mss为1460字节,主机A的mss为1357字节。两者取小所以双方协商的结果确定mss为1357字节,也就是说以后进行TCP数据传输时,数据包的最大传输单元MTU不能超过1397(mss+20字节的IP头部+20字节的TCP头部),同时在IP头部设置了不能分片(DF)的标志。
然后在VPN主机上执行netstat –i,观察各个网络接口的路径MTU值为多少。观察结果如下:
Iface MTU
eth0 1500 //外网网卡接口
eth1 1500 //内网网卡接口
lo 16436 //本机回环接口
ppp0 1396 //WinXP VPN接入通道接口
可以看到ppp0接口的路径MTU为1396字节,也就是说如果一个数据包想要通过这个接口的话,一定不能大于1396字节,如果大于这个值,会出现两种结果:
1、如果这个数据包的IP头部没有设置不能分片(DF)的标志,那么VPN主机就把这个数据包分片,使其数据包大小小于1396字节,然后允许其通过。
2、反之,如果这个数据包的IP头部设置不能分片(DF)的标志,那么VPN主机就会返回一个ICMP不可达的差错报文。同时丢弃这个数据包。
问题就出在这里,主机A和主机B协商的mss为1357字节,也就是说其TCP数据包的MTU为1397,而ppp0允许的路径MTU却为1396,主机A的MTU居然大于ppp0的路径MTU!当主机B向主机A发送了一个1397字节的数据包时,自然不能通过ppp0接口了。回到发现问题的那个情况,首页之所以能够显示成功,是因为首页包含的数据较小,传输时只需要一个没有超过1396字节的IP数据包就可以了,所以能够显示出来,而登陆成功后的页面包含的数据较大,需要分为多个IP数据包进行传输。这里可以假设一下,开头的一个IP数据包因为没有超过1396字节因而通过,而随后的IP数据包因为其大小为1397字节,超过了路径MTU,所以不予通过。反映到页面,就是登陆页面下面的大部分内容无法显示了。
我们再来看看用安装了Win2000主机C连接VPN又是什么状况呢?通过抓包发现,主机C提出的mss为1360(可以推算出其MTU为1400),而执行netstat –i,发现此时的ppp0的MTU为1496,路径MTU大于主机C的MTU,这个结果是正常的。
大家一定会问,何主机B提出的MTU小于路径MTU,这个问题只能问问微软了,我查了一些英文资料,说这是WinXP本身系统的一个问题。
知道了问题的原理,那让我们来看看如何进行解决吧。解决方法很简单,就是借助iptalbes,设定主机B进行协商时提出的mss为1356。即在iptables里面加入一条规则:
/sbin/iptables -A FORWARD -p tcp --syn -s 10.100.0.203 -j TCPMSS --set-mss 1356
因为mss是在TCP连接建立开始时,通过带有syn标志的IP数据包进行传输的,所以我们在iptables里面规定,在转发数据时,只要发现带有syn标志并且源地址为主机B的IP数据包时,将其mss设定为1356字节,这样就与ppp0接口的路径MTU向匹配了,数据自然就可以畅通无阻啦。
后记:写这篇文章花了许多心思,尤其是后面的常见问题部分,如果大家有问题的话可以到我的网站来讨论。http://www.shaof.com
水若寒 回复于:2004-11-29 19:07:24
安装环境
RHAS3(kernel 2.4.21-4.EL)
二、安装
首先到http://sourceforge.net/project/showfiles.php?group_id=44827 下载下面4个安装文件。
dkms-2.0.2-1.noarch.rpm
kernel_ppp_mppe-0.0.4-3dkms.noarch.rpm
ppp-2.4.3-0.cvs_20040527.2.fc2.i386.rpm
pptpd-1.2.1-1.i386.rpm
安装ppp-2.4.3-0.cvs_20040527.2.i386.rpm时出错,无法继续.请帮忙!
[root@yf165 pptp]# rpm -ivh ppp-2.4.3-0.cvs_20040527.2.i386.rpm
warning: ppp-2.4.3-0.cvs_20040527.2.i386.rpm: V3 DSA signature: NOKEY, key ID b56a8bac
Preparing... ########################################### [100%]
file /usr/sbin/chat from install of ppp-2.4.3-0.cvs_20040527.2 conflicts with file from package ppp-2.4.1-14
file /usr/sbin/pppd from install of ppp-2.4.3-0.cvs_20040527.2 conflicts with file from package ppp-2.4.1-14
file /usr/sbin/pppdump from install of ppp-2.4.3-0.cvs_20040527.2 conflicts with file from package ppp-2.4.1-14
file /usr/sbin/pppstats from install of ppp-2.4.3-0.cvs_20040527.2 conflicts with file from package ppp-2.4.1-14
file /usr/share/man/man8/chat.8.gz from install of ppp-2.4.3-0.cvs_20040527.2 conflicts with file from package ppp-2.4.1-14
file /usr/share/man/man8/pppd.8.gz from install of ppp-2.4.3-0.cvs_20040527.2 conflicts with file from package ppp-2.4.1-14
file /usr/share/man/man8/pppdump.8.gz from install of ppp-2.4.3-0.cvs_20040527.2 conflicts with file from package ppp-2.4.1-14
file /usr/share/man/man8/pppstats.8.gz from install of ppp-2.4.3-0.cvs_20040527.2 conflicts with file from package ppp-2.4.1-14
[root@yf165 pptp]#
cnriver 回复于:2004-11-29 20:17:30
楼主在win98下成功访问vpn服务器(mppe128加密)吗?
tjyihui 回复于:2004-11-29 21:40:46
to cnriver
因为条件所限,单位没有Win98的电脑,所以无法进行试验。
to 水若寒
看了一下你贴出来的报错信息,好像你的系统已经安装过ppp套件(ppp-2.4.1-14 )所以安装时才会产生冲突,你可以先查看一下系统是否已经安装了ppp,查看方法为:
rpm -qa | grep ppp
如果安装过,就先把它卸载掉,然后再进行安装。
水若寒 回复于:2004-11-29 22:10:06
我用升级安装搞定了,但在能过用户名和密码检查后,在注册计算机时出现734错误.
好好先生 回复于:2004-11-30 10:29:42
不错,如果再支持MPPC就更完善了……
KindGeorge 回复于:2004-11-30 10:43:19
非常好
tjyihui 回复于:2004-11-30 20:07:06
对PPTP VPN又有了新的研究方向
在Linux下配置过PPTP VPN服务器的朋友一定会发现,PPTP本身的帐户以及密码的管理是相当“弱智”的,仅仅把账号和密码保存在一个配置文本文件里,安全性和管理性都相当差劲。为了改变这种情况,本人特意在网上查询了一些资料,发现完全可以结合RADIUS((Remote Authentication Dial In User Service,远程认证拨号用户服务)和mysql数据库进行帐户管理,同时结合Apache、PHP来进行web前端管理。
RADIUS还真是不简单,在身份认证领域应用相当的广泛,我们完全可以借助它来实现对网络接入身份验证的管理,比如大家所熟知的ADSL、校园网、FTTB等等。本人近期将就这个方面进行研究。
Red_Crow 回复于:2004-12-01 08:47:13
经典
xuxinye 回复于:2004-12-01 09:57:00
请教各位 我按照教程建好VPN后 怎样设置数据压缩??
tjyihui 回复于:2004-12-01 16:42:39
to xuxinye
推荐你一篇文章
PoPToP PPTP + MPPE 128bit Encryption + MPPC Compression VPN Server
http://gfxcafe.com/VPN Howto.html简单的说就是下下载一个用来支持MPPE/MPPC的Linux内核补丁,然后对内核进行编译。我正在做这方面的试验,成功之后会把过程贴出来和大家分享。
xuxinye 回复于:2004-12-01 17:42:46
感谢 期待ing
harryliu 回复于:2004-12-02 10:11:20
我在RHAS3中,按照说明来安装.也是在安装第三个文件时出现了问题.
# rpm -ivh ppp-2.4.3-0.cvs_20040527.2.fc2.i386.rpm
warning: ppp-2.4.3-0.cvs_20040527.2.fc2.i386.rpm: V3 DSA signature: NOKEY, key ID b56a8bac
error: Failed dependencies:
libpcap.so.0.8.3 is needed by ppp-2.4.3-0.cvs_20040527.2
从上面的现象看,是说我的系统中没有libpcap.so.0.8.3这个环境
而我到网上寻找了一个下午都没有找到能生成libpcap.so.0.8.3的文件.
不知各位高手能否指点一下.应如何才能生成libpcap.so.0.8.3
我目前只能生成libpcap.so.0.6.2
:(
tjyihui 回复于:2004-12-02 12:00:48
to harryliu
你可以在你的RHAS3上配置一下YUM,让YUM自动为你下载安装所需的套件,很方便的。
YUM(Yellow Dog UpdaterModified)是一个自动更新、安装和删除RPM软件包的管理程序,它会自动计算软件包的管理程序,并判断哪些软件应该安装,哪些软件则不必安装。
hnez 回复于:2004-12-03 13:54:58
我已收藏
hnez 回复于:2004-12-03 14:02:58
这里的加密是MPPE 128bit
可是压缩是无,(我以前以为加密压缩是一回事!呵呵)
>
水若寒 回复于:2004-12-03 19:30:27
再请教:
我按照http://www.samba.hk/?q=node/172#comment-50里的步骤做内核编译,现在已经做完了make bzImage,但我的系统不是用LILO启动,现在不知道怎样才能用新的内核启动,现在我应该怎样做呢?请各位不吝赐教!谢谢!!
现在我查看的grub.conf是这样的,是不是在这里改什么就可以了?
还是用make install还是什么?我是新手,不清楚这些!
# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE: You have a /boot partition. This means that
# all kernel and initrd paths are relative to /boot/, eg.
# root (hd0,0)
# kernel /vmlinuz-version ro root=/dev/hda2
# initrd /initrd-version.img
#boot=/dev/hda
default=0
timeout=10
splashimage=(hd0,0)/grub/splash.xpm.gz
title Quick Linux (2.4.21-4.EL)
root (hd0,0)
kernel /vmlinuz-2.4.21-4.EL ro root=LABEL=/
initrd /initrd-2.4.21-4.EL.img
title DOS
rootnoverify (hd1,0)
chainloader +1
tjyihui 回复于:2004-12-04 09:14:53
编译内核不止
make menuconfig
make bzImage
这两步,还有其他的步骤要进行呢,推荐你看看一篇介绍编译内核的文章
http://linux.vbird.org/linux_basic/0540kernel.php
qhzz 回复于:2005-02-25 17:27:42
感谢楼主的文章,帮忙了
andyo 回复于:2005-04-01 13:27:38
安装环境
linux 9.0
[root@linuxgk pptp]# rpm -ivh ppp-2.4.3-4.rhl9.i386.rpm
warning: ppp-2.4.3-4.rhl9.i386.rpm: V3 DSA signature: NOKEY, key ID b56a8bac
Preparing... ########################################### [100%]
file /usr/sbin/chat from install of ppp-2.4.3-4.rhl9 conflicts with file from package ppp-2.4.1-10
file /usr/sbin/pppd from install of ppp-2.4.3-4.rhl9 conflicts with file from package ppp-2.4.1-10
file /usr/sbin/pppdump from install of ppp-2.4.3-4.rhl9 conflicts with file from package ppp-2.4.1-10
file /usr/sbin/pppstats from install of ppp-2.4.3-4.rhl9 conflicts with
file from package ppp-2.4.1-10
file /usr/share/man/man8/chat.8.gz from install of ppp-2.4.3-4.rhl9 conflicts with file from package ppp-2.4.1-10
file /usr/share/man/man8/pppd.8.gz from install of ppp-2.4.3-4.rhl9 conflicts with file from package ppp-2.4.1-10
file /usr/share/man/man8/pppdump.8.gz from install of ppp-2.4.3-4.rhl9 conflicts with file from package ppp-2.4.1-10
file /usr/share/man/man8/pppstats.8.gz from install of ppp-2.4.3-4.rhl9
conflicts with file from package ppp-2.4.1-10
[root@linuxgk pptp]# rpm -ivh pptpd-1.2.3-1.i386.rpm
error: Failed dependencies:
ppp >;= 2.4.3 is needed by pptpd-1.2.3-1
[root@linuxgk pptp]# rpm -qa |grep ppp
kpppload-1.04-46
kernel_ppp_mppe-0.0.5-2dkms
ppp-2.4.1-10
rp-pppoe-3.5-2
[root@linuxgk pptp]# rpm -e ppp
error: Failed dependencies:
ppp >;= 2.3.13 is needed by (installed) rp-pppoe-3.5-2
ppp >;= 2.3.7 is needed by (installed) wvdial-1.53-9
[root@linuxgk pptp]#
lihn 回复于:2005-04-01 13:41:05
为什么我连接成功后不能ping任何地址?
andyo 回复于:2005-04-01 14:36:00
安装环境
linux 9.0
[root@linuxgk pptp]# rpm -ivh ppp-2.4.3-4.rhl9.i386.rpm
warning: ppp-2.4.3-4.rhl9.i386.rpm: V3 DSA signature: NOKEY, key ID b56a8bac
Preparing... ########################################### [100%]
file /usr/sbin/chat from install of ppp-2.4.3-4.rhl9 conflicts with file from package ppp-2.4.1-10
file /usr/sbin/pppd from install of ppp-2.4.3-4.rhl9 conflicts with file from package ppp-2.4.1-10
file /usr/sbin/pppdump from install of ppp-2.4.3-4.rhl9 conflicts with file from package ppp-2.4.1-10
file /usr/sbin/pppstats from install of ppp-2.4.3-4.rhl9 conflicts with
file from package ppp-2.4.1-10
file /usr/share/man/man8/chat.8.gz from install of ppp-2.4.3-4.rhl9 conflicts with file from package ppp-2.4.1-10
file /usr/share/man/man8/pppd.8.gz from install of ppp-2.4.3-4.rhl9 conflicts with file from package ppp-2.4.1-10
file /usr/share/man/man8/pppdump.8.gz from install of ppp-2.4.3-4.rhl9 conflicts with file from package ppp-2.4.1-10
file /usr/share/man/man8/pppstats.8.gz from install of ppp-2.4.3-4.rhl9
conflicts with file from package ppp-2.4.1-10
[root@linuxgk pptp]# rpm -ivh pptpd-1.2.3-1.i386.rpm
error: Failed dependencies:
ppp >;= 2.4.3 is needed by pptpd-1.2.3-1
[root@linuxgk pptp]# rpm -qa |grep ppp
kpppload-1.04-46
kernel_ppp_mppe-0.0.5-2dkms
ppp-2.4.1-10
rp-pppoe-3.5-2
[root@linuxgk pptp]# rpm -e ppp
error: Failed dependencies:
ppp >;= 2.3.13 is needed by (installed) rp-pppoe-3.5-2
ppp >;= 2.3.7 is needed by (installed) wvdial-1.53-9
[root@linuxgk pptp]#
我是个新手,请教了.
andyo 回复于:2005-04-01 15:29:08
安装不了ppp,pptpd也装不了,我想卸掉我系统的ppp,要怎样才能卸掉呢?
andyo 回复于:2005-04-04 09:33:34
已经搞定,还有一点问题请教.
我用win2000虚拟拨号可拨上去,ping也可ping通,但我用DrayTek 2200e的pptp拨号就拨不上去,大家有没有用路由器的pptp拨上去过的,说说你们的经验.
andyo 回复于:2005-04-04 10:23:58
大家有没有路由器连接 linux vpn server 的案例,共享出来给大家参考一下嘛.
yenakata 回复于:2005-04-05 22:18:18
发现安装时有较多问题都是由于libpcap包的版本问题引起的,提醒!!!
sailer_sh 回复于:2006-01-25 17:05:34
引用:原帖由 tjyihui 于 2004-11-30 20:07 发表
对PPTP VPN又有了新的研究方向
在Linux下配置过PPTP VPN服务器的朋友一定会发现,PPTP本身的帐户以及密码的管理是相当“弱智”的,仅仅把账号和密码保存在一个配置文本文件里,安全性和管理性都相当差劲。为 ...
请问你从哪里看到pptp能够支持RADIUS认证方式?我还想知道pptp还支持什么认证方式?
tianyaamy 回复于:2007-05-09 18:54:21
根据楼主的文章,我的也成功了,我用的系统是:
[root@ns etc]# uname -a
Linux ns.tianyaamy.cn 2.6.18-8.el5 #1 SMP Fri Jan 26 14:15:21 EST 2007 i686 i686 i386 GNU/Linux
我的操作系统是红帽最新的SERVR版,本身系统已经集成了PPP的软件,我的详细安装请前住我的Q群,谢谢楼主的文章!
http://user.qzone.qq.com/153190423
|