如何搭建VPN来开服务器

  这个是VPN的搭建问题

  启用路由远程访问

  启用设置NAT防火墙

  新建远程访问策略,具体VPN搭建可百度

  这是简短的教程的是为了快速搭建一个可用的VPN,本文涉及有关VPN的正常使用内容。本简程基于以下硬件条件:

  一台安装了Debian GNU/Linux 5.0的VPS。

  当然理论上所有可以安装pptpd包的*nix系统都可以作为主机,教程中安装方式是基于Debian的apt-get命令,其他发行版请自行对照使用。

  这台VPS的物理位置是Fremont, CA。

  物理位置作为VPN这个应用本身并不重要,在这里提出只是多此一举。

  安装服务器端软件

  # apt-get install pptpd

  Debian的包管理是所有发行版里最好的,所以这条命令打完就安装完毕了我们的pptp服务器端程序。

  配置IP地址范围

  编辑/etc/pptpd.conf,在最后添加如下地址:

  localip 192.168.0.1remoteip 192.168.0.234-238,192.168.0.245

  这两句设置了当外部计算机通过pptp联接到vpn后所能拿到的ip地址范围和服务器的ip地址设置。

  增加一个用户

  编辑/etc/ppp/chap-secrets,在下面增加类似的条目:

  username pptpd password *

  上面内容很好理解,最后那个星号是说允许从任何IP地址联接,如果你想单独设定IP地址也可以。

  重启pptpd服务

  # /etc/init.d/pptpd restar

  理论上到这里一个vpn就已经搭建完毕了。无论你用的是Windows还是OSX,或者是iPhone OS,都可以通过建立一个pptp链接来联入这个VPN。不过你并不能通过这个来上Internet,因为所有的数据都作用于那台pptpd的服务器上,而不会传入拨入的计算机设备上。要上Internet还需要这么干:

  dns解析支持

  编辑:/etc/ppp/options,在里面找一下“ms-dns”项目:

  ms-dns 208.67.222.222 ms-dns 208.67.220.220

  我填写的是OpenDNS的地址,当然你也可以填写电信的DNS。

  允许转发

  编辑/etc/sysctl.conf,看一下net.ipv4.ip_forward参数是不是1。

  net.ipv4.ip_forward=1

  最后的最后,运行一下这条命令来打开iptables的转发支持:

  /sbin/iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE

  注意:来自@LEMONed的消息,只有Xen的VPS可以搭建pptp,OpenVZ的不行。

  引用来自@LEMONed的话:

  因为openvz下只有venet0,没有eth0,而绝大多数的vps都是openvz的,然后绝大多数的openvz vps都没有masqurade,只能搭建openvpn并且要自签证书什么的,根本不能用pptpd。我为了给iphone搭个vpn曾经把这个研究透彻了