xdays

VPN-基于pptp配置及问题

先说下应用场景:学校里是用硬件集中认证的的方式来控制学生公寓上网的,如果不通过认证仅能通过IP访问校园网的资源。原先的应对方案是在机房(无需通过认证即可访问外网)用squid假设proxy服务器,既然是代理限制也很明显,有些不支持代理的应用就不能用了,比如一些游戏和网络电视等。自接触VPN以来感受其强大特性,宿舍通过拨VPN到机房网络,既然已经属于机房的网络了访问外网也就不是问题了。

实施步骤:

1)目前优先选取的是pptp VPN,因为它配置简单,况且仅需要几个连接,对性能也没什么要求。

2)配置步骤见另一篇文章VPN-基于pptp的简单配置

拓扑图如下:

pptpd-vpn-top

出现的问题:

按照上述步骤配置完成,客户端可以拨到VPN Server获取地址,但仅可以访问部分网站,校园网内的网站可以,百度谷歌可以,新浪人人等不可以。

自己的尝试:因为之前用的是proxy,这次就想到把proxy和VPN结合起来,不让VPN Server去执行nat而仅仅是做为代理用,下面是测试结果

  • 不拨VPN直接用proxy可以正常访问外网
  • 拨VPN不用proxy可以访问部分网站
  • 拨VPN,然后去掉Server的nat功能,用proxy,仅能访问部分网站,貌似proxy在VPN没有起作用

这个问题比较困扰我,前后总共也得折腾了三四天了,关于pptp协议原理的介绍也都很含糊,只好作罢,留待以后继续研究了。

VPN-基于pptp的简单配置

上学期用squid实现了宿舍不用客户端代理上网,但是如果不是全局代理好多软件不支持代理就有很多限制。这学期对vpn有了一点了解,发现这才是解决客户端的终极方法。它类似宽带拨号上网,没有任何限制,并且用户管理方便。但是在一个下午的激情努力下,我终于被教程中的概念搞晕了。因为要抓紧学习NP的内容,确实没有很大精力搞这个,所以请周丰杰帮忙,这里表示感谢。这里先把配置记录下,至于这其中的原理和详细过程,我想留待以后研究吧。

pptp的运行原理

实验拓扑图

pptpd-vpn-top

安装软件包

需要安装的软件包有ppp,iptables和pptpd,我用的centos5.5默认包含了ppp和iptables,在有些没有加载ppp模块的系统用modprobe挂上ppp_mppe模块;另外pptpd没有包含在源中,要用wget http://acelnmp.googlecode.com/files/pptpd-1.3.4-1.rhel5.1.i386.rpm下载后安装。

配置pptpd服务

配置如下:

--------------pptp.conf--------------//pptpd的主配置文件
option /etc/ppp/options.pptpd包含pptp选项
logwtmp
localip ...