1、检查服务器是否有必要的支持。如果检查结果没有这些支持的话,是不能安装pptp的。命令:

modprobe ppp-compress-18 && echo ok

这条执行执行后,显示“ok”则表明通过。不过接下来还需要做另一个检查,输入指令:

cat /dev/net/tun

如果显示如下信息,说明通过,如果不支持,可以给vps商发ticket开通tun,大部分美国vps商都可以支持:

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

上面的两个只要一条通过,就能安装×××(pptp)


2、安装PPTPD

对于32位CentOS,执行

wget http://acelnmp.googlecode.com/files/pptpd-1.3.4-1.rhel5.1.i386.rpm

rpm -ivh pptpd-1.3.4-1.rhel5.1.i386.rpm

对于64位CentOS,执行

wget http://acelnmp.googlecode.com/files/pptpd-1.3.4-1.rhel5.1.x86_64.rpm

rpm -ivh pptpd-1.3.4-1.rhel5.1.x86_64.rpm

 上面两个是el5内核的rpm包,如果是el6,执行

rpm -Uvh http://poptop.sourceforge.net/yum/stable/rhel6/i386/pptpd-1.3.4-2.el6.i686.rpm

如果想要从yum直接安装,可以 

rpm -Uvh http://poptop.sourceforge.net/yum/stable/pptp-release-current.noarch.rpm

yum search pptpd


3、修改配置

编辑PPTP配置文件 /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/pptpd.conf ,内容如下:

option /etc/ppp/options.pptpd

logwtmp

localip 192.168.254.1

remoteip 192.168.254.100-254


其中localip与remoteip定义了客户端连接×××服务器后被分配到的内网IP地址,可根据需要自己修改。

现在对用户认证文件 /etc/ppp/chap-secrets 进行配置,内容如下:

testuser pptpd testpwd * 

testuser、testpwd对应修改为自己希望的×××登录用户名和密码

将 /etc/sysctl.conf 文件中net.ipv4.ip_forward设置为 1 (如果没有,则按照格式新建一行):

net.ipv4.ip_forward = 1 

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

# net.ipv4.tcp_syncookies = 1

保存退出。执行 

/sbin/sysctl -p 

使之生效。




防火墙:

iptables -I INPUT -p gre -j ACCEPT

iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 1723 -j ACCEPT

iptables -I FORWARD -s 192.168.254.0/24 -j ACCEPT

iptables -I FORWARD -d 192.168.250.0/24 -j ACCEPT

iptables -t nat -A POSTROUTING -s 192.168.254.0/24 -j SNAT --to-source 192.168.0.88(192.168.0.88 为vpn服务器)



linux客户端连接(PPTP)vpn

环境
Ubuntu 12.04.4
pptp version 1.7.2

安装
apt-get install pptp-linux

创建连接帐号
sudo pptpsetup --create myvpn --server xxx.xxx.xxx.xxx --username xxx --password xxxxx --encrypt

连接×××

#打开vpn
pon myvpn
#查看当前路由规则
route
#删除老的default
route del default
#创建新的路由规则
route add default gw 192.168.250.1

关闭×××

#关闭vpn
poff myvpn
#查看当前路由规则
route
#删除刚加的default规则(关闭vpn时,刚加的默认路由已经删除,此步可忽略)
route del default
#还原以前的路由规则
route add default gw 121.197.7.254