setup-vpn-on-vps & ubuntu下安装pptp

2011年6月4日 | 分类: 翻墙相关 | 标签: , ,

因为有时候要从国外的网盘下点小东西,可是很多优秀的网盘都被墙了,在这里先允许我说两句脏话,fuck gfw,fuck icp备,老子就是不鸟你。

言归正传,我的vps是123system的,放个博客还可以,可惜不能装pptp,于是为了自由又买了buyvm,5.9刀那一个,如果你的是其他vps主机

商,请自行检测。

1、检查VPS是否有必要的支持。如果检查结果没有这些支持的话,是无法安装pptp的。

modprobe ppp-compress-18 && echo ok

如果显示“ok”表明通过。不过接下来还需要做另一个检查:

cat /dev/net/tun

显示结果为下面的文本,表明通过:

cat: /dev/net/tun: File descriptor in bad state

上述两条最好是都通过,不然那就得拼人品了,玩笑,如果不行请联系主机商。

2、安装ppp和iptables。

apt-get install ppp iptables

4、配置pptp。首先我们要编辑/etc/pptpd.conf文件:

nano /etc/pptpd.conf

nano比较简单,修改这个够用了。

把下面字段前面的#去掉即可:

localip 192.168.0.1
remoteip 192.168.0.234-238,192.168.0.245

上面的私有ip设置可以根据自己的需要修改

接下来再编辑/etc/ppp/options.pptpd:

nano /etc/ppp/options.pptpd

去掉ms-dns前面的#,并修改成如下字段:
ms-dns 8.8.8.8
ms-dns 8.8.4.4

5、设置pptp VPN账号密码。我们需要编辑/etc/ppp/chap-secrets这个文件:

nano /etc/ppp/chap-secrets

直接输入如下字段,

你的vpn登录名 pptpd vpn密码 *
比如:m5u pptpd 123456 *

6、修改内核设置,使其支持转发。编辑/etc/sysctl.conf文件:

nano /etc/sysctl.conf

将“net.ipv4.ip_forward”改为1:

net.ipv4.ip_forward=1

同时在“net.ipv4.tcp_syncookies = 1”前面加# :

# net.ipv4.tcp_syncookies = 1

保存退出,并执行下面的命令来生效它:

sysctl -p

7、添加iptables转发规则。

iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j SNAT --to-source 12.34.56.78
(OpenVZ,12.34.56.78为你的VPS的公网IP地址)

#iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE
(XEN)

保存iptables转发规则:

/etc/init.d/iptables save

重启iptables:

/etc/init.d/iptables restart

8、重启pptp服务。

/etc/init.d/pptpd restart

9、设置开机自动运行服务。

cat >>/etc/init.d/iptables<<EOF
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -j SNAT --to-source 12.34.56.78

EOF

如果出现错误619则输入命令

mknod /dev/ppp c 108 0

如果出现错误800则修改/etc/ppp/options.pptpd文件,在require-mppe-128字段前面加#即可。。。

Windows的VPN连接属性改为可选加密

image

现在就可以翻墙了。

原文http://blog.m5u.net/archives/359

 

入手了不少vps了,有xen架构的,也有openvz架构的,偶尔会开放 TUN/TAP 模块。有了这个模块,就可以开始搭建pptpd协议的vpn了。

1、检查VPS是否有必要的支持。如果检查结果没有这些支持的话,是无法安装pptp的。

  • modprobe ppp-compress-18 && echo ok
  • 如果可以,返回ok.
    如果失败,得到如下类似提示,也不用灰心
    FATAL: Module ppp_compress_18 not found.
    FATAL: Could not load /lib/modules/2.6.18-238.9.1.el5.pony5-1/modules.dep: No such file or directory

  • 再试一个命令 cat /dev/net/tun
  • 如果可以,提示如下,有戏了  cat: /dev/net/tun: File descriptor in bad state
    如果返回类似这样的提示 cat: /dev/net/tun: No such file or directory ,抱歉,没机会了
    要不死心的话,试试运气,找服务商发个ticket.问问,能不能启用 TUN/TAP/PPP 模块。

    2、 安装pptp

    这里只写 debian下的vpn安装,  页末有vpn一键安装包下载,含centos 和debian.
    apt-get install pptpd  一个包搞定

    3、配置文件,重头戏来了

  • 编辑 /etc/pptpd.conf 文件
  • 所谓编辑,也就是直接取消最后2行的注释符号 # ,怕和本地原有ip地址有冲突的,可以编辑下网段地址
    localip 192.168.0.1
    remoteip 192.168.10.234-238,192.168.10.245

  • 修改dns,避免dns污染
  • 修改 /etc/ppp/options 文件,用上谷歌dns
    ms-dns 8.8.8.8
    ms-dns 8.8.4.4

  • 开启ip转发
  • 修改 /etc/sysctl.conf 文件
    基本上最后1行 net.ipv4.ip_forward=1
    保存退出,并执行  sysctl -p 命令使转发立即生效:

  • 设置iptables转发规则
  • iptables -t nat -A POSTROUTING -s 192.168.10.0/24 -j SNAT -–to-source “vps的公网ip”
    iptables -A FORWARD -s 192.168.10.0/24 -p tcp -m tcp -tcp-flags FIN,SYN,RST,ACK SYN -j TCPMSS -–set-mss 1356

  • 新增用户
  • 编辑 /etc/ppp/chap-secrets 文件
    test pptpd test *
    类似格式即可,第一个test代表用户名,pptpd代表协议, 第2个test密码,星号表示所有的ip地址都可以接入。当然你也可以指定ip才能接入。

     

    4、 常见vpn错误处理

    如果出现800 错误 修改/etc/ppp/pptpd-options文件,#号注释掉 require-mppe-128 。。。

    如果出现619错误,运行
    mknod /dev/ppp c 108 0
    然后重启 pptpd 服务

     

    5、 参考文章

    debian部分 参考了 http://qiaodahai.com/personal/article/2010/debian-ubuntu-setup-pptp-vpn.htm
    http://hi.baidu.com/digifox/blog/item/f9306a942706ad83a977a42e.html

    6、 pptpd VPN一键包下载

    centos pptpd VPN一键安装包 http://wty.name/centos-install-pptpd-with-a-key-package/
    debian pptpd VPN 一键安装包 http://blog.zxadmin.com/?post=92

    Related posts:

    1. centos vps服务优化
    2. my vps is reachable over IPv6
    3. grub慢
    4. Real Time Sync with Sersync
    5. 普通usb ZC0301 WebCam成功设置为Web Cam Server

    原文http://blog.wanjie.info/2011/05/setup-vpn-on-vps/

    目前还没有任何评论.