备忘:Linode上Centos5.6安装PPTP VPN(非Radius)

2011年6月10日 分类: 网来往事

今日玩弄Linode上的Centos5.6,想安装PPTP VPN,却发现过程颇曲折。搜索相关文章,均无针对Centos5.6,特此备忘,以防万一。

参考文章:Black-Xstar 文章(第二次参考了),linode知识库

技术支持:Linode给力的客服

环境:Linux xxxx.members.linode.com 2.6.18-238.12.1.el5xen #1 SMP Tue May 31 14:42:29 EDT 2011 i686 i686 i386 GNU/Linux (备注:内核已被修改修改过程下文详细说明)

以下开始:

首先,检查环境:

modprobe ppp-compress-18 && echo ok

一般来说,这里都会报错的(我两次测试都报错了),ppp模块没配置完成,暂时放一边呆着。

这里以32位系统为例:

配置前别忘了看下DNS有没有部署上,可以

ping google.com

如果不通,则:

Shell:

echo “nameserver 8.8.8.8″ >>/etc/resolv.conf

再测试,一般来说就通了。(此处参考并修改自洛奇亚博客一文)

咱接着继续:

Shell:

yum install -y ppp iptables

mkdir ~/pptp && cd ~/pptp

 

在本地浏览器打开http://poptop.sourceforge.net/yum/stable/packages/

找到类似pptpd-1.3.4-2.rhel5.i386之类的文件,注意版本号和i386,i386表示x86 32位,x86_64表示64位,这里自行选择,然后复制该文件的地址。

Shell:

wget http://poptop.sourceforge.net/yum/stable/packages/pptpd-1.3.4-2.rhel5.i386.rpm

//链接可能会在未来N个月后失效,按照上面的方法重新获得链接即可。

好了,pptp咱要到了,装吧:

rpm -ivh *.rpm

mv /etc/ppp/options.pptpd /etc/ppp/options.pptpd.bak

vi /etc/ppp/options.pptpd

按下i键,粘贴:

name pptpd
require-pap
require-chap
require-mschap
require-mschap-v2
require-mppe-128
proxyarp
lock
nobsdcomp
novj
novjccomp
nologfd
ms-dns 8.8.4.4
ms-dns 8.8.8.8

 

按下Esc,输入:wq[回车]

Shell:

echo “localip 192.168.8.1 ” >>/etc/pptpd.conf

echo “remoteip 192.168.8.2-40″ >>/etc/pptpd.conf

vi /etc/ppp/chap-secrets

按照上面的方法修改,格式如下:

username1 pptpd password1 *

username2 pptpd password2 *

username3 pptpd password3 *

 

注意最后的星号别漏了

 

Shell:

vi /etc/sysctl.conf

找到

net.ipv4.ip_forward = 0

改成

net.ipv4.ip_forward = 1

Shell:

sysctl -p

service pptpd start

service iptables start

不出意外的话,pptpd的启动会ok,iptables的启动会有failed或者error。别慌,咱接着聊:

Shell:

iptables -A INPUT -p tcp –dport 1723 -j ACCEPT

iptables -A INPUT -p tcp –dport 47 -j ACCEPT

iptables -A INPUT -p gre -j ACCEPT

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

/etc/init.d/iptables save

chkconfig pptpd on
chkconfig iptables on

 

注意,上面如果你修改了网段,对应修改。

 

如果上面的iptables没报错,那么你的配置到此结束,输入:

/etc/init.d/iptables restart

然后配置客户端,调试下就没问题了。

 

但是linode最新的内核是对iptables不兼容的,我们需要做一些修改。

Shell:

cd /boot

ls

这时候应该会列出一些文件,类似:

image

记住类似“2.6.18-238.12.1.el5xen”的文字,放在笔记本中备用。

Shell:

cd ~/pptp

wget -O selinux.sh http://library.linode.com/assets/542-centos5-native-kernel-selinux-enforcing.sh

chmod +x selinux.sh

vi selinux.sh

输入/  粘贴:

kernel /boot/vmlinuz-2.6.18-238.12.1.el5xen root=/dev/xvda

回车,跳转到那一行,把“2.6.18-238.12.1.el5xen ”修改为之前记住的那段文字。

同理,/boot/initrd-2.6.18-238.12.1.el5xen.img中也把相应版本号修改,保存。

Shell:

./selinux.sh

运行后,切换到linode面板:

image

选择Edit,Boot Settings的Kernel修改为pv-grub-x86_32 ,保存,重启。

这里建议用LISH连上母机,可以看见从开机的引导到进入系统的全过程,如果没有异常,会很顺利的进入

重启后:

Shell:

restorecon -Rv /

如果出现错误,或者长时间连不上root的SSH,别慌,切换回原来的内核,重新修改selinux.sh文件,看看哪里弄错了。

正常来说,进入系统后新的内核就被应用了,如下查看:

Shell:

uname -a

回显:

Linux xxxxx.members.linode.com 2.6.18-238.12.1.el5xen #1 ………………

出现之前记住的那段文字,说明修改成功。

然后测试下MPPE是否可用:

modprobe ppp-compress-18 && echo ok

回显ok,说明正常。

Shell:

/etc/init.d/iptables restart

如果没有错误,说明一切正常。如果报错,重新执行:

iptables -A INPUT -p tcp –dport 1723 -j ACCEPT

iptables -A INPUT -p tcp –dport 47 -j ACCEPT

iptables -A INPUT -p gre -j ACCEPT

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

/etc/init.d/iptables save

/etc/init.d/iptables restart

至此完成,连接上打开网页查看是否正常,如果有异常,应该逐级排查,比如:

连接时:

691错:密码错误,检查密码

其他错误:一般都是由于iptables和加密协议类型错误造成,在本地可以对连接配置进行修改,测试用不同的加密类型连接是否会正常。

连上后打不开网页,则ping 8.8.8.8,若不通,则ping 服务器IP,若服务器IP通,8.8.8.8不通,则检查“net.ipv4.ip_forward”部分,如果都通,但是还是打不开网页,则检查DNS配置或者手动指定DNS。

 

大概就是这样了,配置过程很曲折,问题很多,很纠结,也有很多是google不到的,只有和客服不停聊下去,了解到内核的问题才有从下手修改,不然就只能一直用老内核而不能用paravirt内核。网上这里是找不到任何资料的,客服在帮我搞定错误的时候反而给我造成了更大的错误(虽然后来他意识到是自己犯错然后立刻给出解决方案),虽然如此,linode客服的态度也是很赞的,比之前用过的rashost好的多了。(rashost的rebuild是人工的,当初测试环境rebuild很多次,后来客服居然不给rebuild了,承诺的送内存到停止续费还没送。)

 

推荐下linode,如果对灵曦linode很有爱,请用以下邀请码购买,每3个月我将获得20美金返还:

点击这里

这里注册我将不获得返还

标签: ,

37 条评论 于 “备忘:Linode上Centos5.6安装PPTP VPN(非Radius)”

  1. 2011年6月10日23:38
    1

    路过来抱抱><话说还一起提供正常注册渠道灵曦真HD呢

    Safari 5.0.5 Safari 5.0.5 Mac OS X 10.6.7 Mac OS X 10.6.7
    • 灵曦
      2011年6月10日23:41
      2

      恩哈~抱抱~话说HD是什么呢….

      Google Chrome 12.0.742.91 Google Chrome 12.0.742.91 Windows 7 Windows 7
      • 2011年6月10日23:43
        3

        厚道!

        Safari 5.0.5 Safari 5.0.5 Mac OS X 10.6.7 Mac OS X 10.6.7
        • 灵曦
          2011年6月10日23:44
          4

          ~\(≧▽≦)/~必须的~!

          Google Chrome 12.0.742.91 Google Chrome 12.0.742.91 Windows 7 Windows 7
  2. 2011年6月10日23:54
    5

    其实,用 http://www.rockia.com/2010/10/easy-installation-of-pptp-vpn-server-on-centos 这个方法也是挺好的,一劳永逸。 /haha

    Google Chrome 12.0.742.91 Google Chrome 12.0.742.91 Mac OS X 10.6.7 Mac OS X 10.6.7
    • 灵曦
      2011年6月11日12:34
      6

      正如我qq中说的,这个方法主要针对linode最新的内核特地修改的,而不仅仅是配置vpn。

      Wordpress App 2.7.2 Wordpress App 2.7.2 iPhone iPhone
  3. 2011年6月10日23:59
    7

    好长的技术文,可惜俺是小白,看不懂。你建立vpn用来做什么?

    UC Browser 7.8.0.87 UC Browser 7.8.0.87 Samsung SGH-i780 Samsung SGH-i780
  4. 2011年6月11日00:00
    8

    实用性的文章啊,等偶换到Linode主机后可以用做参考…
    对偶来说这个主机的价格有些偏高了呢,最低档的配置又不太想买…一直在犹豫中…

    Safari 5.0.5 Safari 5.0.5 Mac OS X 10.6.7 Mac OS X 10.6.7
    • 2011年6月11日00:16
      9

      其实即使是最低档的配置也足够用啊,我看Candy Love目前的流量,应该也无法一个月用完200GB流量吧?除非你还要用来支持别的站。 :P /haha

      Firefox 4.0.1 Firefox 4.0.1 Mac OS X 10.6 Mac OS X 10.6
      • 2011年6月11日00:23
        10

        嗯,只是博客的话200GB是肯定用不掉的…
        GD主机国内访问的速度实在是太纠结了。

        Safari 5.0.5 Safari 5.0.5 Mac OS X 10.6.7 Mac OS X 10.6.7
    • 灵曦
      2011年6月11日12:35
      11

      考虑合租是个不错的选择,只是linode付款稍微麻烦。

      Wordpress App 2.7.2 Wordpress App 2.7.2 iPhone iPhone
      • 2011年6月11日12:43
        12

        合租的话偶可能会考虑softlayer的主机…它的访问速度还是很快的…
        可惜的是找不到合租对象啊…
        话说,付款的话不能用信用卡么?

        Safari 5.0.5 Safari 5.0.5 Mac OS X 10.6.7 Mac OS X 10.6.7
        • 灵曦
          2011年6月11日13:05
          13

          付款只能用信用卡才杯具>_<

          Wordpress App 2.7.2 Wordpress App 2.7.2 iPhone iPhone
          • 2011年6月11日13:08
            14

            唔…有家人担保的化申请一张就可以啦,附属卡也可以…
            不行的话可以考虑下虚拟信用卡什么的…

            Safari 5.0.5 Safari 5.0.5 Mac OS X 10.6.7 Mac OS X 10.6.7
            • 灵曦
              2011年6月11日13:19
              15

              唔…过几年到大学再申请好了…

              Wordpress App 2.7.2 Wordpress App 2.7.2 iPhone iPhone
  5. 2011年6月11日00:15
    16

    上次openvpn一直没成功

    Sogou Explorer Sogou Explorer Windows XP Windows XP
    • 灵曦
      2011年6月11日12:36
      17

      openvpn只要环境满足,配置肯定不出问题的

      Wordpress App 2.7.2 Wordpress App 2.7.2 iPhone iPhone
  6. 2011年6月11日00:53
    18

    /huaix 你懂的~ 你懂的~~
    我要,我要~~

    Firefox 4.0.1 Firefox 4.0.1 Windows 7 Windows 7
  7. 2011年6月11日15:13
    19

    好吧____校园网ping 8.8.8.8根本没反应______话说8.8.8.8什么的根本就不存在吧___恩恩,都是脑补出来的呢__WWwwwWWwwww

    Maxthon 3.0 Maxthon 3.0 Windows 7 Windows 7
    • operation
      2011年6月11日20:59
      20

      8.8.8.8 人家禁ping了。只提供DNS解析服务。

      Firefox 3.6.3 Firefox 3.6.3 Windows XP Windows XP
      • 灵曦
        2011年6月11日21:00
        21

        不是吧,我这边还是正常的。。

        Google Chrome 12.0.742.91 Google Chrome 12.0.742.91 Windows 7 Windows 7
  8. 2011年6月12日02:17
    22

    好吧,咱承认Linux神马的完全不会用,咱是只会Basic的渣 /nnmm

    Google Chrome 12.0.742.91 Google Chrome 12.0.742.91 Windows 7 Windows 7
  9. 2011年6月23日01:10
    23

    好吧,我是来看loli的

    Google Chrome 12.0.742.100 Google Chrome 12.0.742.100 GNU/Linux x64 GNU/Linux x64
    • 灵曦
      2011年6月24日23:51
      24

      我木有什么好看的!!

      Google Chrome 12.0.742.100 Google Chrome 12.0.742.100 Windows 7 Windows 7
      • 2011年6月25日00:02
        25

        我由没说看你, /youpie

        Google Chrome 12.0.742.100 Google Chrome 12.0.742.100 Windows 7 x64 Edition Windows 7 x64 Edition
  10. 2011年6月23日01:12
    26

    /baiyan 我的神仙啊,我是评论中唯一一个用Linux的

    Google Chrome 12.0.742.100 Google Chrome 12.0.742.100 GNU/Linux x64 GNU/Linux x64
    • 灵曦
      2011年6月24日23:51
      27

      唉,只是比较少人拿linux做桌面系统啦。用linux的人肯定在80%以上。MACOS不算的

      Google Chrome 12.0.742.100 Google Chrome 12.0.742.100 Windows 7 Windows 7
  11. 2011年6月26日01:52
    28

    之前都在研究Web服务器,VPN还真的没弄过。。
    有时间我也弄一个。最近在学Linux网络安全

    Google Chrome 12.0.742.100 Google Chrome 12.0.742.100 Windows 7 x64 Edition Windows 7 x64 Edition
  12. 2011年6月27日21:47
    29

    配置了一圈下来某人还是觉得xl2tpd比pptpd难配置很多……pvgrub受教了~其实可以把完整教程的写给Linode,如果被采用的话貌似有奖励的说。

    Firefox 4.0.1 Firefox 4.0.1 Windows 7 Windows 7
    • 灵曦
      2011年6月27日21:49
      30

      l2tp在cisco的路由上配置会比较方便的,其实如果你认真看了的话会发现我这批本来就是修改自linode知识库文章。

      Google Chrome 12.0.742.100 Google Chrome 12.0.742.100 Windows 7 Windows 7
  13. 2011年6月30日12:36
    31

    你什么时候搬到linode了?这个可是贵族VPS,quality贵族,price也贵族。。。

    TheWorld Browser TheWorld Browser Windows 7 Windows 7
  14. kingmove
    2011年8月31日10:35
    32

    你好,我遇到的情况基本跟你一样,但是我进入boot目录,怎么看不到任何文件呢?

    Google Chrome 13.0.782.218 Google Chrome 13.0.782.218 Windows 7 Windows 7
    • 灵曦
      2011年8月31日12:58
      33

      这是我在linode测试的,你也是linode的吗?

      Google Chrome 13.0.782.218 Google Chrome 13.0.782.218 Windows 7 Windows 7
  15. kingmove
    2011年8月31日16:34
    34

    是的,已经解决了,你的文章给了我很大的帮助,谢谢!

    Google Chrome 13.0.782.218 Google Chrome 13.0.782.218 Windows 7 Windows 7
  16. 水水
    2011年9月26日00:12
    35

    打扰一下大大哦~我按照您的教程一步一步配置下来了,非常成功~~
    可是到了您说到的,关于linode最新内核不支持的的地方,运行
    Shell:

    cd /boot

    ls

    时没有您说的应该可以看到的一些文件,请问我有可能是那些地方出错了呢?
    在设置前我木有进行任何比较大的改动,仅仅yum update了一下,以及按照鸟哥私房菜的设置尝试了一下ntp,其他的都是一丝不苟按照您的教程办下来的~~目前已经提交了ticket~不过如果灵曦大有任何关于我可能犯的错误的思路的话,请不吝赐教哦~~
    PS:俺用的是linode最最最便宜20刀一月的款型~

    Google Chrome 14.0.835.186 Google Chrome 14.0.835.186 Windows 7 x64 Edition Windows 7 x64 Edition
    • 灵曦
      2011年9月26日22:18
      36

      其实下面的设置都是为了iptables设定的,你试试service iptables restart看看会不会报错,如果不会就可以告一段落了,如果会并且/boot下没有那些文件的话,建议提交个ticket给客服,问问看如何在最新的centos中挂载iptables,客服会给出具体的解决方案的~

      Google Chrome 14.0.835.186 Google Chrome 14.0.835.186 Windows 7 Windows 7
  17. 2011年10月3日09:35
    37

    学习下!!!!

    360Safe Explorer 360Safe Explorer Windows 7 x64 Edition Windows 7 x64 Edition

灵曦:请留下点什么嗯~

/qy /sy /hx /hp /cj /hz /yang more »