VPS+SS翻越GFW

购买并配置VPS

搬瓦工选择一个VPS,大概每年$19.99,使用邀请码可优惠6%,可以使用支付宝(Alipay)购买。成功购买VPS后,进入VPS管理界面,登录账户后便可以查看服务器信息,并进行相关配置了。

安装SS服务器

如果VPS选用centos系统,则可以直接在配置界面左下方选择Shadowsocks Server,一键安装就ok了,当然喜欢折腾的也可以自己用yum install下载安装和配置Shadowsocks,此不赘述。

安装SS客户端

Ubuntu

Ubuntu可以选择github中的shadowsocks/shadowsocks,或shadowsocks/shadowsocks-qt5.

Windows

Windows选择shadowsocks/shadowsocks-windows,或shadowsocks/shadowsocks-qt5中的ss-qt5-v2.9.0-win64.7z。本人刚开始使用前者,无法科学上网,从log信息中发现可以将数据发送至VPS,但VPS无法解析其头部信息,故而连接失败,后来尝试网上各种方法无果,最终使用qt5版本成功。具体原因不详。

Android

安卓端就下载安装shadowsocks/shadowsocks-android内的apk即可。

配置SS客户端

SS的配置相当简单,参考VPSShadowsocks配置界面给的信息即可,必要信息包括:

  • 服务器地址 (Host IP)
  • 密码(password)
  • 端口号Port(default:443)
  • 加密方式encryption(default:aes-256-cfb)

配置浏览器

无论是google chrome还是firefox,都有相应的代理插件,最常用的是SwitchyOmega。下载该插件并安装后,需要打开插件的选项,进行一定的配置操作:

  1. 新建情景模式profile),命名随意,如:SS;
  2. 在默认(default)选项中选择SOCK5,服务器(Server)设为127.0.0.1,端口(port)设为1080;
  3. 点击左侧的应用修改(Apply changes);
  4. 点击auto switch,页面上的条件栏(condition)不用管,点击下面的添加规则,在情景模式(profile)一列中选择之前创建的SS,默认选项分两种情况:
    • 普通网络,没有额外代理的情况,默认设为直连(direct);
    • 如果是公司网设了代理,则默认设为代理proxy,并在代理proxy中设置好公司的代理服务器IP和端口号port.
  5. 在下面的规则列表配置中,选择AutoProxy,添加网址https://raw.githubusercontent.com/gfwlist/gfwlist/master/gfwlist.txt, 然后点击下方按钮更新列表信息,网址无误的话会提示成功更新规则列表;
  6. 点击左侧应用修改Apply changes,在插件中选择auto switch选项即可开启自动切换代理模式。

经过以上配置后,启动已配置好服务器信息的Shadowsocks客户端,正常情况下就可以访问Google, youtube等国外网站了。

配置全局代理

系统配置

Ubuntu中,可以打开 Settings->Network->Network Proxy ,在Socks Host一栏中设置IP127.0.0.1,代理端口为1080。这样便设置好了全局代理。firefox的网络设置选项中有单独一项用于选择系统代理设置,对应的就是这个。

安装polipo

polipo是一个小型的代理服务器软件,用于二次转发数据包,使用它可以配合系统设置里的全局代理实现真正的全局代理,让终端等应用都可以翻越GFW,这样在shell中下载软件就方便快速多了,亲测效果很是明显。

下面是安装配置步骤:

$ sudo apt-get install polipo
$ sudo vim /etc/polipo/config
# This file only needs to list configuration variables that deviate
# from the default values.  See /usr/share/doc/polipo/examples/config.sample
# and "polipo -v" for variables you can tweak and further information.
logSyslog = true
logFile = /var/log/polipo/polipo.log
proxyAddress = "0.0.0.0"
socksParentProxy = "127.0.0.1:1080"
socksProxyType = socks5
chunkHighMark = 50331648
objectHighMark = 16384
serverMaxSlots = 64
serverSlots = 16
serverSlots1 = 32

修改config文件后需要重启一下polipo,然后测试是否代理是否成功开启。

$ sudo /etc/init.d/polipo restart
$ export http_proxy="http://127.0.0.1:8123/" curl ifconfig.me
***.***.***.*** # return your VPS-IP_ADDR if success

到此就可以愉快的使用谷歌了,但是目前晚上的网速略慢,看youtube经常只能到360P