> Linux服务器 > VPN >

centos6.4 安装vpn

1.你所需要的软件 
pppd    ppp拨号服务器
pptpd   在pppd拨号的基础上增加pptpd的支持

2.确定你的内核是否支持mppe

modprobe ppp-compress-18 && echo ok 
如果显示ok,那么恭喜,你的内核已经具备了mppe支持。请到第4部分


3.升级内核支持mppe

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

dkms是一个新的软件,能让你在不编译内核的基础上,外挂一些内核的模块。
kernel_ppp_mppe就是mppe支持的内核模块了。

rpm -ivh dkms-2.0.17.5-1.noarch.rpm
rpm -ivh kernel_ppp_mppe-1.0.2-3dkms.noarch.rpm

以上二个是为CENTOS加载MPPE[MICROSOFT的加密协议] ..不安装的话就不能使用加密连接
ok后重起你的系统

4.安装ppp

yum install ppp
或者
rpm -Uvh  ppp-2.4.2-b3.i386.rpm 

5.安装pptpd


(1)使用yum安装
# vim /etc/yum.repos.d/Doylenet.repo

[doylenet]
name=Doylenet custom repository for CentOS
baseurl=http://files.doylenet.net/linux/yum/centos/5/i386/doylenet/
gpgcheck=1
gpgkey=http://files.doylenet.net/linux/yum/centos/RPM-GPG-KEY-rdoyle
enabled=1

# yum update
# yum install pptpd

(2)rpm下载安装

wget ftp://ftp.ntua.gr/pub/net/poptop/pptpd/pptpd-1.3.1/pptpd-1.1.3-4.i386.rpm
rpm -ivh  pptpd-1.1.3-4.i386.rpm 
注意32位或者64位版本,否则吃大亏!鄙人就是在64位服务器上装了32位的pptpd,就给搞了很长时间才发现!!!!

6.配置你的pppd和pptpd

/etc/pptpd.conf中需要配置的地方只有几个

option /etc/ppp/options.pptpd

# logwtmp 如果日志里出现类似以下问题一定要注释掉logwtmp!!!!

#Jun 21 15:39:55 center pppd[1374]: /usr/lib/pptpd/pptpd-logwtmp.so: wrong ELF class: ELFCLASS32
#Jun 21 15:39:55 center pppd[1374]: Couldn't load plugin /usr/lib/pptpd/pptpd-logwtmp.so

localip 192.168.9.1
remoteip 192.168.9.11-30

配置/etc/ppp/options.pptpd
name pptpd
refuse-pap
refuse-chap
refuse-mschap
require-mschap-v2
require-mppe-128
proxyarp
lock
nobsdcomp
novj
novjccomp
nologfd
idle 2592000
ms-dns 8.8.8.8
ms-dns 8.8.4.4

编辑 /etc/ppp/chap-secrets

添加一个测试用户

# Secrets for authentication using CHAP
# client     server   secret      IP addresses
     test      pptpd    test           *

第一个test是用户,第二个test是密码 ,*表示任意ip

 

配置文件/etc/sysctl.conf
# vim /etc/sysctl.conf
修改以下内容开启ip转发:
net.ipv4.ip_forward = 1
保存、退出后执行:
sysctl -p


7.打开防火墙端口

 

将Linux服务器的1723端口和47端口打开,并打开GRE协议。

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 -A POSTROUTING -t nat -s 192.168.9.0/24 -o eth0 -j MASQUERADE
iptables -A INPUT -p UDP --dport 53 -j ACCEPT   ##这个最蛋疼,开始没注意,能连接上怎么都打不开网页,搞了半天才发现DNS端口没有打开,差点昏死过去!!
service iptables save

8.测试pptpd

如果是默认安装,你在任意路径打pptpd就可以了。
如果成功,你就会在 
/var/log/messages里面看到
Feb 10 09:51:46 kdfng pptpd[926]: MGR: Manager process started

Feb 10 09:51:46 kdfng pptpd[926]: MGR: Maximum of 100 connections available

 

 

9.Win7下PPTP VPN客户端设置

直接看图:

PPTP VPN服务器接入常见问题总结:

1、VPN客户端拨入时出现721错误:

这种情况大数多原因为客户系统,如果为WINXP并且安装了SP2,则可能会出现这种情况,解决方法为:修改注册表HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlClass{4D36E972-E325-11CE-BFC1-08002bE10318},其中其中 是 WAN 微型端口 (PPTP) 驱动程序的网络适配器,在此项中新建一个DWORD 值ValidateAddress,然后设置为0即可。
服务器端PPP协议配置不正确也会导致此类错误。

2、VPN客户端拨入时出现800错误:

这种情况大数多原因为客户系统连接服务器时使用域名,因临时DNS无法解析而出现这种错误,可更换DNS试一下,如果还是出错此类错误,则可能是无法连接到VPN服务器,可能是VPN服务器关闭或出现故障,也可能是客户电脑上的防火墙阻止了VPN连接请求,可关闭防火墙试一下。
有些使用中转服务器连接到VPN服务器的客户端,也可能出现此类错误,原因为中转服务器中转功能出现故障。

3、VPN客户端拨入时出现619错误:

这种情况大数多原因为客户机连接Internet的网关(如家庭宽带路由或公司上网网关路由或防火墙)NAT-T功能关闭或对VPN支持性不好,主要是对GRE及PPTP协议的NAT-T不支持。可打开网关路由的NAT-T功能,如果还是出现错误,则需要更换网关设备,现在市面上大多数设备已经支持。

4、VPN客户端拨入时出现691错误:

这种情况大数多原因为客户机连接VPN服务器异常中断,因多数服务器限制一个帐户同时只有一个人使用,所以一旦异常断开,则需等待3分钟左右。有些VPN服务器没有设置异常断线检查功能也可能导致用户一旦异常断开后很长时间不能连接。所以解决办法为在服务器上设置异常断线检查程序或功能。

5、VPN客户端拨入时出现733错误:

这种情况大数多原因为客户机拨入VPN服务器后无法获取IP地址,可修复DHCP服务器或设置静态IP地址或地址池。

6、VPN客户端拨入时出现734 ppp链接控制协议终止:

这种情况多数为VPN服务器配置有问题,如果是PPP配置有问题,不支持MPPE加密或支持度不好。请重新编译PPP及MPPE相关程序。对于用于游戏代理的用户,可不使用加密(需在服务器端不要求加密)。

7、VPN客户端拨入时出现718错误:

拨入时用户名和密码出错误,有时也因为服务器端认证服务出现故障


(责任编辑:IT)