liunx肉鸡上建立VPN的图文方法

花了两天时间研究,感觉pptpd貌似要简单的多,而且成功率挺高.没有平台限制。此文就拿centos最新版5.2来做vpn服务器.为教材,其他发行版都大同小异。

第一步,把需要的工具先wget上去.
          wget http://poptop.sourceforge.net/yum/stable/packages/dkms-2.0.17.5-1.noarch.rpm
          wget http://poptop.sourceforge.net/yum/stable/packages/kernel_ppp_mppe-1.0.2-3dkms.noarch.rpm
           这两个是必须的.不过在centos5x发行版中自带了kernel,5.x就不必下载安装了.centos4x及以下的需要。
          如果是centos 4版本的
         wget http://poptop.sourceforge.net/yum/stable/packages/ppp-2.4.3-7.rhel4.i386.rpm
          wget http://poptop.sourceforge.net/yum/stable/packages/pptpd-1.3.4-1.rhel4.i386.rpm
         CentOS 5的
         wget http://poptop.sourceforge.net/yum/stable/packages/ppp-2.4.4-7.0.rhel5.i386.rpm
         wget http://poptop.sourceforge.net/yum/stable/packages/pptpd-1.3.4-1.rhel5.1.i386.rpm
       -------如果起其他版本则打开http://poptop.sourceforge.net/yum/stable/packages 选择对应的版本号。
              (如不知道肉鸡是那发行版则在shell里输入cat /etc/issue)
         第二步开始安装。

               centos4.x
rpm -ivh dkms-2.0.17.5-1.noarch.rpm
rpm -ivh kernel_ppp_mppe-1.0.2-3dkms.noarch.rpm
rpm -Uvh ppp-2.4.3-7.rhel4.i386.rpm
rpm -ivh pptpd-1.3.4-1.rhel4.i386.rpm

centos5.x
rpm -ivh dkms-2.0.17.5-1.noarch.rpm
rpm -ivh kernel_ppp_mppe-1.0.2-3dkms.noarch.rpm [centos 5.2自带可以不装]
rpm -Uvh ppp-2.4.4-7.0.rhel5.i386.rpm
rpm -ivh pptpd-1.3.4-1.rhel5.1.i386.rpm
              (安装过程中如不成功则看错误信息,大概是肉鸡缺少什么.不过他缺什么, 咋们就补什么.
              如gcc :yum install gcc-c++       zlib-devel :yum install zlib-devel ,发行版不同自动升级的命令 不同,我这里centos是yum)
         第三步.修改需修改的四个文件.
                 1.vi /etc/modprobe.conf 添加alias net-pf-7 ip_gre
              


            2.vi /etc/pptpd.conf 去掉ppp /usr/sbin/pppd前面#
               

                   注释掉logwtmp

   修改下面ip
   

                       3vi编辑 /etc/ppp/options.pptpd
                    修改dns 即拨入后分配的DNS.
             

                    去掉dump注释符.# (网上说也去掉debug的,但是我们不用,毕竟服务器不是自己的)
             最后编辑vi /etc/ppp/chap-secrets给用户权限和分配IP
           

               格式:用户,服务 密码 * (通陪符)
   现在改下防火墙配置。
         vi /etc/sysconfig/iptables 让1723对外开发还有udp的53.



编辑好了以后,重新启动下防火墙好让配置生效 /etc/init.d/iptables restart

此时,就可以正常拨入VPN了.不过,现在拨入进去后只能跟服务器通信 还不能上外网.:)

继续在shell里执行
iptables -t nat -F
iptables -t nat -A POSTROUTING -s xx.xx.xx(拨入后分配的IP) -j SNAT --to xx.xx.xx服务器IP
哈哈,现在退出再拨入 看看是不是能上网了? 嘿嘿
不过现在要是服务器重新启动的话,下次拨入就又不能上网。那咋们保存下防火墙配置/etc/rc.d/init.d/iptables save。
   呵呵
最后编辑下vi /etc/sysctl.conf
把net.ipv4.ip_forward = 0 改成999

最后将pptpd设置为自启动
chkconfig --add pptpd
chkconfig --level 35 pptpd on

嘿嘿,接着清理下日记闪人!。一台高效的VPN肉鸡就这么诞生了!