在DigitalOcean上搭建Shadowsocks来实现稳定靠谱的科学上网

如果下面这些情形你经常遇到:

  1. 经常会折腾各种各样的 Web 应用(Java、nodejs、python等各种语言环境),但是国内的云服务无法提供对应的环境。
  2. 你只是临时的折腾这些应用,并不会长期的运营这些服务。国内的云服务费用昂贵,并需要持续较长时间购买。
  3. 虽然可能是临时或者短时间折腾这些服务,你也希望可以有稳定的 IP 或者域名来访问服务。而国内的云服务域名需要备案,而你却懒得折腾这些。
  4. 你经常有科学上网的需求,却苦于免费的 VPN 不稳定,稳定的却死贵。

那么,可能 DigitalOcean 是你需要的。请往下继续看。否则,你已经可以关闭这个页面了。

先说说 DigitalOcean:

  1. 可以把 DigitalOcean 看做是 VPS,你对上面的环境有完全的支配权,想折腾什么类型的 Web 应用都可以。
  2. DigitalOcean 通过创建 droplet 来快速搭建基础环境,可视化的管理配置,轻而易举的可以与你的域名绑定。从而快速稳定的访问你的服务。
  3. DigitalOcean 最低的收费是每月5美刀,并且按照使用时长(每小时结算)收费。创建的 droplet 如果关闭,则不再继续收费。非常适合需要临时折腾的你。而且,通过这个邀请链接进行注册,将自动赠送10美刀。
  4. DigitalOcean 的旧金山节点,国内链接速度快,很适合通过搭建 Shadowsocks 来提供稳定靠谱的科学上网服务。

在 DigitalOcean 上配置 droplet

注册 DigitalOcean 账户就不说了。需要提醒的是,使用 DigitalOcean 需要绑定银行卡。

新建 droplet 的步骤:

在DigitalOcean上搭建Shadowsocks来实现稳定靠谱的科学上网

1. 选择系统镜像,这里选了 ubuntu 16.04

在DigitalOcean上搭建Shadowsocks来实现稳定靠谱的科学上网

2. 选择配置,这里选$5/月

在DigitalOcean上搭建Shadowsocks来实现稳定靠谱的科学上网

3. 选择机房位置,旧金山的访问速度比较快

在DigitalOcean上搭建Shadowsocks来实现稳定靠谱的科学上网

4. 添加 SSH key,用于后面远程登录的验证。具体操作可以看官方文档或者生成SSH密钥

在DigitalOcean上搭建Shadowsocks来实现稳定靠谱的科学上网

5. 这样,不到1分钟时间,就创建好了一个 droplet,带有固定IP,还可以绑定域名。

在DigitalOcean上搭建Shadowsocks来实现稳定靠谱的科学上网

安装并配置 Shadowsocks 服务

在第一步中配置完 ssh key,就可以远程登录到 DigitalOcean 的 droplet 上,直接用 root 用户即可:

1
ssh root@your_droplet_ip

刚才我们的 droplet 环境是 ubuntu 16.04,通过如下命令安装 shadowsocks:

1
2
apt-get install python-pip
pip install shadowsocks

我遇到了 locale.Error: unsupported locale setting 的问题,解决方案看这里:解决 pip install 时 locale.Error: unsupported locale setting 错误

安装好以后,就可以通过以下指令启动服务:

1
2
3
4
5
ssserver -p 8836 -k `password` -m rc4-md5

# 或者可以通过以下指令在后台启动shadowsocks的服务:
ssserver -p 8843 -k `password` -m rc4-md5 -d start
ssserver -p 8843 -k `password` -m rc4-md5 -d stop

上面的指令方式不太方便,推荐通过文件配置的方式。新建一个 /etc/shadowsocks.json 文件,内容如下:

1
2
3
4
5
6
7
8
9
10
{
"server": "your_droplet_ip",
"server_port": 8388,
"local_address": "127.0.0.1",
"local_port": 1080,
"password": "your_password",
"timeout": 300,
"method": "aes-256-cfb",
"fast_open": false
}

接下来使用下面的指令启动服务:

1
2
3
4
5
ssserver -c /etc/shadowsocks.json

#或者在后台运行
ssserver -c /etc/shadowsocks.json -d start
ssserver -c /etc/shadowsocks.json -d stop

以上操作以后,就可以通过各种 Shadowsocks 客户端科学上网啦。稳定又靠谱!