利用Heroku搭建自己的梯子,3步实现免费科学上网。

网速如何?请看图!
简单粗暴的小教程开始:
  1. 打开终端机,执行指令,下载项目并部署:

    提示:想登录Heroku删app需要等很久?怎么删app最快捷?这样做:

    1
    2
    3
    $ heroku apps #列出您所有的app
    $ heroku apps:destroy appname --confirm appname #两处appname自行替换成您想删的app名,完成。
    >
    1
    2
    3
    4
    $ git clone git@github.com:activeliang/shadowsocks-over-websocket.git
    $ cd shadowsocks-over-websocket
    $ heroku create
    $ git push heroku master

    (注意:指令前的字符$代表这是一条指令,请不要跟着复制)

  2. 设置密码并启动:

(请自行替代指令中的中文提示)!!!

1
2
3
4
$ heroku config:set METHOD=aes-256-cfb PASSWORD=设置密码 SERVER_ADDRESS=0.0.0.0
$ brew install node #这一步是安装nodejs,已安装可跳过。如遇错,请看下文提示。
$ npm install
$ node local.js -s 第一步中生成的Herokuapp名称.herokuapp.com -l 1080 -m aes-256-cfb -k 设置的密码 -p 80

安装nodejs遇错,怎么办?直接去官网下载安装包

  1. 下载安装客户端并配置 点击下载

    • 打开软件,配置密码(前面设置的密码)

    • 进入客户端 Shadowsocks 的 偏好设置:

    • 完成,测试:打开 www.google.com 查看日志:

搞定。可以自由上网了~

成功后刷新本教程,你会发现底部有个留言板,欢迎留下您的足迹~


无法上网?自行排查… (遇错解决后,请底部留言反馈~)
  • 一切正常,打开 Google 时,终端机无log生成,连接失败。

    原因:请求没有被扶上梯子。

    解法:Shadowsocks客户端 切换 全局模式。再不行的话,写进入 这篇教程 尝试Chrome插件。

    最后:成功连接后,建议关闭Chrome插件,Shadowsocks切换回PAC模式

感谢前人铺好了路:相关教程


进阶教程:

  1. 下次如何启用?

    • 开启终端 service ,执行以下代码:

      1
      2
      cd ~/shadowsocks-over-websocket
      node local.js -s 您的herokuapp名称.herokuapp.com -l 1080 -m aes-256-cfb -k 您的密码 -p 80
    • 开启Shadowsocks

    • 科学上网期间,终端开启的service不要关闭(control + c可以关闭service)。

    • 遇到启用service 失败,提示端口已占用?先执行:

      1
      2
      $ kill -9 $(lsof -i tcp:1080 -t) #占用1080端口的程序会被干掉!
      >
  2. 如何停下来?关闭终端serviceShadowsocks

重要提示:

  1. 如果遇到:打开某个链接,很慢,怎么办?

    原因:此请求中有链接被墙。而这个链接没被扶上梯子~

    客户端里有三种模式:

    • PAC自动模式(自动识别,只把被墙的链接扶上梯子!这个好。)列表可以前行偏好设置 > 常规 > GFW List URL 中查看所有被墙的链接。
    • 全局模式 (所有链接扶上梯子)
    • 手动模式 (自定义的扶墙名单:PAC用户自定规则…

    解法:(二选一)

    • 将链接手动增加到 编辑PAC用户自定规则 (扶墙名单) 中 (优先)
    • 开启全局模式

如何做得更好:

  • 开机全自动启用梯子(写个脚本),这样做:

    1. 新建一个脚本:

      1
      2
      $ touch ~/开机自启heroku梯子脚本.sh
      $ chmod +x ~/开机自启heroku梯子脚本.sh #此举进行引用

      填入:

      1
      2
      3
      cd ~/shadowsocks-over-websocket
      kill -9 $(lsof -i tcp:1080 -t)
      node local.js -s 您的herokuapp名称.herokuapp.com -l 1080 -m aes-256-cfb -k 您的密码 -p 80
    2. 设置脚本的的打开方式,选择终端Iterm留着编程用)

    3. 加入登录项:打开 系统偏好设置… > 用户与群组

    4. 打开 Shadowsocks客户端 > 偏好设置 > 开机启动 (选中)

    5. 完成!下次重开机,全自动开启~!😄

结束。

类似的简单粗暴小教程:

本文有帮你节约到时间吗?赏几个钢蹦玩玩~😄