科学上网:CentOS VPS下安装PPTP搭建VPN服务器

早前在 VPS 上配置了 Shadowsocks Server 用来科学上网"╮( ̄▽ ̄"")╭",这个东西的好处就是有简单易用的客户端,可以用 PAC 模式自动过滤代理。
然而!!iPhone(未越狱)上只有一个长的像浏览器的 Shadowsocks 客户端,并不能用作系统代理,所以秉承爱折腾的优良传统,香菇谷歌来了 搭建 PPTP 协议 VPN 的方法,于此整理备忘~

本文修改自:系统运维 » CentOS VPS下安装PPTP搭建VPN服务器(http://www.osyunwei.com/archives/1269.html

1、检查系统内核是否支持MPPE补丁

modprobe ppp-compress-18 &&echo success

显示success说明系统支持MPPE补丁,如果不支持,需要先安装kernel-devel

yum install kernel-devel

2、检查系统是否开启TUN/TAP支持

cat /dev/net/tun

如果这条指令显示结果为下面的文本,则表明通过:

cat: /dev/net/tun: File descriptor in bad state #系统为英文版本
cat: /dev/net/tun: 文件描述符处于错误状态 #系统为简体中文版本

如果没有,需要VPS服务商开通TUN/TAP功能,一般VPS默认都开启此功能

3、安装ppp和iptables #安装PPTP需要这两个软件包(默认状态下,CentOS自带这两个软件包)

yum install -y ppp iptables

4、安装PPTP

rpm -Uvh http://poptop.sourceforge.net/yum/stable/rhel6/pptp-release-current.noarch.rpm #加入yum源
yum install pptpd #安装pptpd

5、配置PPTP

(一)

cp /etc/ppp/options.pptpd /etc/ppp/options.pptpdbak #备份
vi /etc/ppp/options.pptpd #编辑,保存

文件内容

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

(二)

cp /etc/ppp/chap-secrets /etc/ppp/chap-secretsbak #备份
vi /etc/ppp/chap-secrets #编辑,保存

文件内容

PPTP * 123456 * #设置用户名:PTTP 密码:123456

(三)

cp /etc/pptpd.conf /etc/pptpd.conf.bak #备份
vi /etc/pptpd.conf #编辑,保存

文件内容

option /etc/ppp/options.pptpd
logwtmp
localip 192.168.1.1 #设置VPN服务器IP地址
remoteip 192.168.1.100-199 #为拨入VPN的用户动态分配192.168.1.100~192.168.1.199之间的IP

6、开启系统路由模式

vi /etc/sysctl.conf #编辑
net.ipv4.ip_forward = 1 #开启路由模式
/sbin/sysctl -p #使设置立刻生效

7、配置防火墙Nat转发

iptables -t nat -A POSTROUTING -s 192.168.1.0/24  -o eth0  -j MASQUERADE
/etc/init.d/iptables save #保存防火墙设置
/etc/init.d/iptables restart #重启防火墙
chkconfig iptables on #设置开机启动

这一步请注意 eth0 是服务器的网卡,使用ifconfig命令查看当前使用的网卡并替换。

8、设置PPTP开机启动

/sbin/service pptpd start #启动
/sbin/service pptpd restart
chkconfig pptpd on #设置开机启动

至此,VPN服务器搭建完成,可以在Windows客户端建立VPN连接,输入服务器外网IP地址,用上面配置的账号、密码进行连接了。

如果连接的时候出现619错误,请执行下面命令,重新建立ppp设备节点:

rm -r /dev/ppp
mknod /dev/ppp c 108 0

备注:VPN默认使用的端口是1723,由于VPS服务器上默认没有对防火墙端口进行设置,所以全部端口都是开放的。

标签: none

评论已关闭