“The best time to plant a tree was 20 years ago. The second best time is now.”
— Chinese Proverb
一直想写点什么,却由于各种各样的原因一直没能实现。
最近红杏挂了,用阿里云的服务器搭了一个简单的 vpn,顺便用 WordPress 搭了一个个人博客。
可能会写一些技术文章,读书笔记,旅行日记,一切皆有可能。
对于一个拖延症晚期的人来说,保证按时更新基本是不可能的。
所以至少每月一篇吧。
为什么科学上网(翻墙)是每个科技工作者必备的技能?
因为一些众所周知的原因,包括 Google 在内的许多海外知名网站都被封了,而且随着 GFW 的不断升级,会有越来越多的网站无法访问。
那么问题来了,如何用正确的姿势来科学上网(翻墙)呢?
如果你去网上搜索一下,你会发现原来有这么多种科学上网的方法,不管你是没有什么经验的新手,还是已经解锁多种姿势的老手,相信都会大开眼界的。
这里主要介绍一些我用过的科学上网方法。
1.ssh 代理
首先你需要一个 ssh 账号。我当时用的是公司的账号。网上可以找到免费试用的 ssh 账号,如果需要购买可以去淘宝。
然后你需要 Bitvise SSH Client (以前叫 Bitvise Tunnelier),Firefox 浏览器 和 Foxyproxy 插件。
由于没有 Windows 系统的电脑(其实是懒),就不写详细的步骤了,教程可以自行网上搜索。
2.红杏
鉴于红杏已经挂了,不知道什么时候能恢复,这里就不介绍了。
3.vpn
不得不说,vpn 用户才是科学上网的主力军。
今天我们主要介绍怎么在 ubuntu 14.04 上搭建 PPTP 服务器。
安装和配置 pptp 服务器
首先我们用 apt-get 安装 pptp 服务器
# sudo apt-get install pptpd
然后我们需要修改 pptp 服务器配置文件
# sudo vi /etc/pptpd.conf
在文件结尾添加 server IP 和 client IP. 比如下面这样:
localip 192.168.0.1
remoteip 192.168.0.100-200
把 PPTP 服务器的 IP 配置为 192.168.0.1, 同时给连接到该 PPTP 服务器的 PPTP 客户端分配 192.168.0.100 到 192.168.0.200 的地址段。
配置当 PPTP 客户端 连接到 PPTP 服务器时使用的 DNS 服务器
# sudo vi /etc/ppp/pptpd-options
去掉 ms-dns 配置前面的 #,你可以像下面一样添加 google 的 DNS 服务器或者其他的 DNS 服务器
ms-dns 8.8.8.8
ms-dns 8.8.4.4
然后在配置文件 /etc/ppp/chap-secrets 里面添加用户数据
# sudo vi /etc/ppp/chap-secrets
每一行是是一个用户,一共四项数据,用空格隔开。
第一项是用户名。第二项是服务器名称,你可以填 “pptpd”。第三项是密码。最后一项是 IP 地址,填 * 代表允许所有 IP 访问。
# client server secret IP addresses
username * password *
最后启动 PPTP 服务器
# /etc/init.d/pptpd restart
OK,现在可以使用你的用户名密码连接到 PPTP 服务器了,是不是就大功告成了呢?
然而并没有,你会发现虽然你已经连上了 VPN,但是根本上不了网。因为你忘了一个重要的步骤。
配置 IP 转发
我们可以通过修改/etc/sysctl.conf 文件来启用 IPv4 转发。
# sudo vi /etc/sysctl.conf
把下面一行的注释去掉
net.ipv4.ip_forward=1
然后重新加载配置文件
sudo sysctl -p
把转发规则添加到 iptables
# sudo vi /etc/rc.local
在 exit 0 之前添加下面两行
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE
iptables -A FORWARD -p tcp --syn -s 192.168.0.0/24 -j TCPMSS --set-mss 1356
重启之后你就可以连接到你的 PPTP 服务器,并且愉快的 Google 一下了。
参考:
免费 ssh 代理
http://blog.onlybird.com/getfreessh
Bitvise SSH Client 下载地址
https://www.bitvise.com/ssh-client-download
在Ubuntu上搭建VPN(PPTP)
https://help.ubuntu.com/community/PPTPServer
最后说点题外话,这个世界上并没有绝对的自由。当我们讨论如何科学上网时,我们讨论的是一种技术问题,而不是是非问题。
2,188 total views, 4 views today