Linode安装VPN(pptpd)详解

    1. 环境说明

    面对天朝强大的GFW,我们能做的只有科学上网,下面列举安装科学上网软件的环境.

    Linode VPS

    CentOS 5.6

    pptpd 1.3.4

    因为pptpd需要MPPE的支持,所以首先检测系统是否符已经编译了MPPE,执行如下shell,如果返回CONFIG_PPP_MPPE=y表示可以安装pptpd,如果没有请更换版本.

    1. zgrep MPPE /proc/config.gz

    2. 安装安装pptpd

    pptpd需要iptables支持,所以需要安装iptables.如果您的服务器上已经安装了iptables,默认系统一般都已经安装成功,那么只安装pptpd.

    由于pptp没有存放在CentOS的源中,所以用yum命令安装返回的是找不到安装包.

    安装pptp需要使用rpm命令直接从网站上下载并安装,这里要注意的是,pptp分为32bit版和64bit版,大家可以根据需要下载.

    1. rpm -ivh http://acelnmp.googlecode.com/files/pptpd-1.3.4-1.rhel5.1.i386.rpm
    2. rpm -ivh http://acelnmp.googlecode.com/files/pptpd-1.3.4-1.rhel5.1.x86_64.rpm

    3.设置pptpd解析用的dns(把ms-dns前的#号去掉,#号代表注释,填上opendns的服务器地址)

    1. vi /etc/ppp/options.pptpd
    2. ms-dns 208.67.222.222
    3. ms-dns 208.67.220.220

    4.设置拨号时候用的:用户名、拨号方式、用户密码、来源ip地址(用户名和密码可以随便设置,拨号方式只能填pptpd,来源ip用*号代表不限制)

    1. vi /etc/ppp/chap-secrets
    2. linuxeye pptpd 123456 *

    5.设置本地ip和远端ip(本地ip就是你等一下建立拨号后分配给你的,远端ip是分配给服务器的)

    1. vi /etc/pptpd.conf
    2. localip 192.168.1.1
    3. remoteip 192.168.1.2-20

    6.设置ip转发状态为生效,然后立即载入(和第9步的NAT转发有关)

    1. vi /etc/sysctl.conf
    2. net.ipv4.ip_forward = 1
    3. /sbin/sysctl -p

    7.启动pptpd服务,并且设置为开机启动

    1. /sbin/service pptpd start
    2. chkconfig pptpd on

    8.启动iptables规则,设置NAT转发,然后保存

    1. /sbin/service iptables start
    2. /sbin/iptables -t nat -A POSTROUTING -o eth0 -s 192.168.1.0/24 -j MASQUERADE
    3. service iptables save

    配置过程中问题如下:

    1. 启动防火墙报错Setting chains to policy ACCEPT: security raw nat mangle fi[FAILED]

    问题主要是iptables版本和内核对不上导致的,linode使用的是自己修改过的内核.

    第一个问题的修复需要在/etc/init.d/iptables,找到set_policy函数,添加一个security选项,如下123-128行.

    1. 120     for i in $tables; do
    2. 121         echo -n “$i ”
    3. 122         case “$i” in
    4. 123            security)
    5. 124                $IPTABLES -t security -P INPUT $policy \
    6. 125                    && $IPTABLES -t security -P OUTPUT $policy \
    7. 126                    && $IPTABLES -t security -P FORWARD $policy \
    8. 127                    || let ret+=1
    9. 128                 ;;
    10. 129             raw)
    11. 130                 $IPTABLES -t raw -P PREROUTING $policy \
    12. 131                     && $IPTABLES -t raw -P OUTPUT $policy \
    13. 132                     || let ret+=1
    14. 133                 ;;

    2. 配置好后,一直不能拨号成功

    开始在公司一直不能拨号成功,然后用手机成功,Google后发现是PPTP穿透没有开启,这个一定要开启。

    本文参考 阿土’s Blog ,谢谢!

    • 本文由 发表于 2012-10-18
    • 转载请务必保留本文链接:https://linuxeye.com/202.html
    Linode CentOS7开启Google TCP-BBR优化算法 Linux

    Linode CentOS7开启Google TCP-BBR优化算法

    Linux在4.9版本的内核新增了一款TCP拥塞控制技术:BBR,Linode最新内核也更新到4.9,但是没有把BBR编译进去,下面是教程是替换Linode CentOS7内核,并开启Google T...
    Linode 12周年,从Xen迁移到KVM Linux

    Linode 12周年,从Xen迁移到KVM

    12周岁的时候,Linode正式宣布退出给予Xen虚拟的VPS平台,推出基于KVM虚拟的VPS。从现在开始用户已经在系统后台可以选择升级过度到KVM,当然也可以暂时不升级到KVM,不过之后Linode...
    CentOS 6、7下pptp vpn一键安装脚本 脚本

    CentOS 6、7下pptp vpn一键安装脚本

    之前有折腾过《CentOS 6、7下IPSEC/L2TP VPN一键安装脚本》,不稳定、不支持IOS,因此换成pptp,并已经添加到《lnmp一键安装包》。这个脚本可以单独使用,直接复制或下载执行即可...
    CentOS 6、7下IPSEC/L2TP VPN一键安装脚本(openswan+xl2tpd) 脚本

    CentOS 6、7下IPSEC/L2TP VPN一键安装脚本(openswan+xl2tpd)

    概念性的东西这里不再赘述,网上有太多,一键安装脚本也有很多,但是很多不能用,能用的也仅仅只是在CentOS6下使用,CentOS7基本没看到这些安装脚本。于是花了一些时间来折腾测试,写这个脚本方便以后...
    匿名

    发表评论

    匿名网友

      • avatar xiaoma

        请你这个文章https://linuxeye.com/202.html,最后说PPTP穿透没有开启是什么意思,是指路由器的功能,还是PPTPd这个服务有这个穿透功能呢

          • avatar yeho

            @ xiaoma 路由器功能

              • avatar xiaoma

                @ yeho 谢谢回答 :mrgreen: ,想再请教一下,现在是一部份用户(IP)可以拔入,一部份不能拔入的情况,比如我联通的网络可以拔入,但是移动的网络就不行了,这个情况是不是说明移动的网络的用户在连接的线路中有不支持PPTP穿透的设备吗?这个问题自己是不是没法解决?