本文转自:http://blog.csdn.net/ownfire/article/details/8051349
PPTP VPN 一键安装包
wget http://soft.kwx.gd/vpn/pptpd.sh
sh pptpd.sh
自行安装流程
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
上面的两个只要一条通过,就能安装VPN(pptp)
1、准备环境
PPTPD要求Linux内核支持mppe,一般来说CentOS安装时已经包含了;下面安装ppp与iptables:
1 |
yum install ppp iptables |
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
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定义了客户端连接VPN服务器后被分配到的内网IP地址,可根据需要自己修改。
现在对用户认证文件 /etc/ppp/chap-secrets 进行配置,内容如下:
1 |
testuser pptpd testpwd * |
* testuser、testpwd对应修改为自己希望的VPN登录用户名和密码
将 /etc/sysctl.conf 文件中net.ipv4.ip_forward设置为 1 (如果没有,则按照格式新建一行):
1 |
net.ipv4.ip_forward = 1 |
同时在“net.ipv4.tcp_syncookies = 1”前面加# 变成:
# net.ipv4.tcp_syncookies = 1
保存退出。执行
1 |
/sbin/sysctl -p |
使之生效。
4、设置iptables转发
/etc/init.d/iptables start
/sbin/iptables -t nat -A POSTROUTING -o eth0 -s 192.168.254.0/24 -j MASQUERADE
/etc/init.d/iptables save
/etc/init.d/iptables restart
* 注意,上面的192.168.254.0应该与之前设置的网段对应。
5、去除加密(部分VPS不支持加密)
编辑/etc/ppp/options.pptpd(vim /etc/ppp/options.pptpd),在require-mppe-128前面加个#(# require-mppe-128);
VPN连接属性里,加密方式选择为可选加密,并允许未加密的密码。
最后重启下PPTPD即可:
6、设置开机启动
1 |
chkconfig pptpd on |
2 |
chkconfig iptables on |
重启计算机即可进行连接,并且能够正常上网。
如果重启服务器后,无法连接VPN,首先检查服务器的PPTP服务1723端口是否已打开(注意设置防火墙允许此端口);如果可以连接VPN,但是无法正常上网,则检查iptables是否正常转发。
iptables -A INPUT -m state –state NEW -m tcp -p tcp –dport 1723 -j ACCEPT
service iptables save
service iptables restart
评论