我们除了 VPN、HTTP Proxy 可以选择以外,还可以选择一款轻量的 Socks5 代理,它是有名的 Shadowsocks,如果你有一台自己的 VPS 主机的话,不妨可以利用手中的资源搭建一个。
Shadowsocks 有不少服务器端的版本选择,例如 C、Python,而之所以推荐 Node.js 是因为它小巧却性能强悍,并且听上去很时尚。事实上,Node.js 版的 Shadowsocks 搭建起来也很容易,可以将其大致归类为 3 个步骤,所花费的时间不会超过 10 分钟。
Shadowsocks
支持加密的 Socks5 代理,开源项目。
前提准备
为了安装 Shadowsocks,你需要一台国外的 VPS 主机。如果你没有,可以在同样很短的时间内购买一个。推荐现在比较知名的 Linode (东京区域) 或
DigitalOcean (现在注册可赠送 10 美元),它们的口碑都很好并且速度也很快。完成好购买后,在 windows 上使用 putty 客户端或使用 mac 终端,只需要 SSH 连接上此 VPS 主机即可进行下一步。
ssh root@XXX.XXX.XXX.XXX
第 1 步: 安装 Node.js 、npm、Shadowsocks
理所当然,我们需要安装 Node.js。npm 是一个用于管理 Node.js 组件的工具,我们使用它来获取 Shadowsocks。
sudo apt-get update
sudo apt-get install npm
sudo npm install -g n
sudo n stable
此时我们可以用 node -v 来确认安装了 Node.js 最新的稳定版本。
下面安装 Shadowsocks。
sudo npm install -g shadowsocks
此时我们可以看到 shadowsocks 被安装到了 /usr/local/lib/node_modules/shadowsocks/ 这里。
第 2 步: 配置 Shadowsocks
安装完毕后,我们需要对 Shadowsocks 进行配置,才能开始使用它。
sudo nano /usr/local/lib/node_modules/shadowsocks/config.json
它的格式是这样的,你可以安装自己的喜好来更改
{
"server":"127.0.0.1",
"server_port":8388,
"local_address":"127.0.0.1",
"local_port":1080,
"password":"pass",
"timeout":600,
"method":"aes-256-cfb"
}
其中
server: 监听地址,在此填入 IPv4 公共地址。如果服务器支持 IPv6 ,可以填入两个英文冒号 :: 。
server_port: 监听端口,大多数情况下可以不用更改,但是推荐选取另外一个未被使用的端口号,例如 8389。
因为我们使用服务器的 Shadowsocks 来代理我们的流量,local_address 和 local_port 可以不必更改。
password: 选一个安全的密码。
timeout: 保持原样即可。
method: 推荐选择 aes-256-cfb 或 aes-128-cfb 这两种加密方式。
编辑好之后,依次按下 Ctrl+X、Y、Enter 来确认保存更改。
第 3 步: 马上完成
如果 VPS 有防火墙,我们需要添加规则允许 Shadowsocks 使用此端口。
sudo ufw allow 8388
现在我们就可以使用 Shadowsocks 了。运行:
ssserver
如果不出问题,Shadowsocks 已经开始运行。
但是这里存在一个问题,一旦关闭了 SSH 连接,Shadowsocks 将关闭。
使用下面的命令可以允许保持它在后台,即使关闭了 SSH。
nohup ssserver > log &
当然你也可以此时按下 Ctrl + C 来中断它。
使用 Windows Mac iOS Android 客户端
你可以在
此页面获取到 Shadowsocks 各种版本的客户端,这里以 Mac 客户端为例。按照如下来配置,即可连接上我们的服务端了。
配置完成之后,可以以自动代理模式或全局模式启用。
这里要注意,如果你的 Chrome 使用了类似 Proxy Switchy 的插件,则需要手动禁用它们才能切换回系统默认代理。
祝使用愉快!