标签 vpn 下的文章

本博自 2012 年光荣地被 GFW 认证后,长期流亡海外。辗转香港、日本、美国等地,依然在高墙之外。2014 年的时候,眼看我的域名邮箱都收不到来自墙内的邮件,再也坐不住了。后来通过一些技术方式调整了部署,邮箱恢复正常,本博也终于得见天日。

三年多的时间发生了什么?我不能告诉你。只能说我也做了很多事情,唯一值得庆幸的是,我终于离开了互联网行业。这种感觉也正如同围城效应,现在反思前后,居然还有些许不舍。再值得庆幸的是,互联网就在我们身边。你玩儿,或者不玩儿,Ta 都在这里。每时每刻、不离不弃。

最近又遇到一件事情让我重操旧业。作为重度 Google 用户,已经具备常年与 GFW 作斗争的经验。然而在各种两会各种峰会的轮番轰炸下,梯子一个一个倒下去。SSH 转 Socks5 的方式早已落伍,各种 VPN 服务也在挣扎。为了能够更愉快地玩耍,我决定自食其力。

首先要有一台墙外的服务器或者 VPS。现在阿里云、腾讯云等各种云都做得不错,价格也亲民(我用的不是上述服务商,别问为什么,谢谢)。操作系统 CentOS,开始:

检查内核环境是否包含 mppe,是否支持 pptp。CentOS 6.4 内核版本在 2.6.15 以上,都已默认集成。

cat /dev/ppp
cat /dev/net/tun

安装 ppp、防火墙与 pptpd:

yum install -y ppp iptables
wget -c http://poptop.sourceforge.net/yum/stable/packages/pptpd-1.4.0-1.el6.x86_64.rpm
rpm -Uhv pptpd-1.4.0-1.el6.x86_64.rpm
yum install pptpd

修改配置文件中的 DNS 为 8.8.8.8 和 8.8.4.4:

vi /etc/ppp/options.pptpd

配置 VPN 账户:

vi /etc/ppp/chap-secrets

配置客户端分配到内网的 IP 地址,记得在最后加一个空行。

vi /etc/pptpd.conf

修改 net.ipv4.ip_forward 为 1:

vi /etc/sysctl.conf

生效配置,启动防火墙服务:

/sbin/sysctl -p
/sbin/service iptables start

根据网卡参数配置防火墙。由于我的 VPS 有两个公网 IP,就这样:
/sbin/iptables -t nat -A POSTROUTING -o eth1 -s 192.168.0.0/24 -j SNAT --to-source xx.xx.xx.xx
/sbin/iptables -t nat -A POSTROUTING -o eth1:1 -s 192.168.0.0/24 -j SNAT --to-source x.x.x.x

保存设置,重启服务:

/etc/init.d/iptables save
/sbin/service iptables restart

最后重启 pptpd 就大功告成了:

service pptpd restart

还可以设置开机启动:

chkconfig pptpd on
chkconfig iptables on

参考文章《centos6.4安装搭建pptp vpn服务(附pptp vpn 一键安装包) | 大步's Blog》,原文作者:大步。原链接已失效。

从今天开始,妈妈再也不用担心我的学习。家中小米路由以及单位极路由完美适配。其中极路由本身有智能路由模式,小米路由需要刷开发包,开启 SSH。具体可参见《正确姿势使用智能VPN分流,无缝国内外分流科学上网》。

- 阅读剩余部分 -