On this page... (hide)

  1.   1.  服务器端软件选择
    1.   1.1  关于服务器端的保护
    2.   1.2  关于服务器端加速
  2.   2.  客户端软件推荐
    1.   2.1  Mac
    2.   2.2  Windows
    3.   2.3  Linux
    4.   2.4  iPhone(iOS)
    5.   2.5  Android
  3.   3.  一些其他奇怪的问题
    1.   3.1  ipv6 不兼容问题

官网是 shadowsocks ,算是一个信息汇聚中心。

1.  服务器端软件选择

为了使用防御力相对较好的 chacha20-ietf-poly1305 传输加密协议,当前推荐选用的 ShadowSocks 服务器端实现是 shadowsocks-libev

  • shadowsocks-libev 在 Debian 下可以直接在 Debian Backports 中找到安装包,而且这个安装包会自动创建对应的系统服务实现后台运行。具体安装过程参考 Install from repository

shadowsocks Python 带有的传输加密已经过时,不推荐使用。不过其很多设置优化方法可以参考。例如把一个进程配置成自启动的服务,可参考 用 Supervisor 运行 Shadowsocks

在 OpenVZ 主机上也用过 shadowsocks-libuv ,特别省资源,但支持的传输加密协议似乎也已经落伍了。

1.1  关于服务器端的保护

ShadowSocks 服务地址是很容易整个被墙掉的,所以除了选用比较靠谱的传输加密协议之外,还可以考虑以下这些办法:

  • 最基本的一种保护方法是把 Shadowsocks 换成非标准的服务端口。
  • 可以考虑组合使用 obfsproxy 再多做一层网络层混淆。
    • ShadowsocksR 等第三方服务器端实现自带了流量混淆功能,但是在维护水平、安全性等方面还有不少争议。

1.2  关于服务器端加速

理论上,有挺多设置调优可做。除此之外,还有以下这些思路可以参考:

  • 套一层 kcptun,用带宽浪费来换取网络延迟的大幅改善。实测对网络游戏和视频直播都有十分明显的疗效。
    • 需要服务器的带宽有一定基础,才能换取丢包率和响应速度的改善。
  • 可以考虑 使用 HAProxy 加速 Shadowsocks

2.  客户端软件推荐

2.1  Mac

Mac 上客户端推荐 ShadowsocksX-NG ,其自带 kcptun 支持,相当方便。

2.2  Windows

Win 上客户端使用 Shadowsocks for Windows

  • 右键点它的系统通知栏小图标可以激活随系统自动启动。
  • 如果不勾选“启用系统代理选项”,那么就不会自动接管操作系统全局代理,只是在本机提供一个 socks5 代理,再配合相关浏览器插件,就能方便地控制对国内外网站的代理自动切换规则(手工加入新网站的操作比较方便)。
  • Win 下的 kcptun 得安装自己的独立客户端,目前没发现捆绑支持 kcptun 的 ShadowSocks 客户端。

2.3  Linux

Linux 下,命令行模式可以直接用 shadowsocks Python 自带的 sslocal 指令,其命令行参数含义与 ssserver 指令一致。

2.4  iPhone(iOS)

iPhone 上在 Cydia 搜 shadowsocks 就能找到 MobileShadowSocks 这个客户端,只能在越狱后使用。

  • 不越狱的话可以用 Surge 实现同样功能,但软件要收费,配置也稍微复杂些。
    • 国内的 App Store 经常把翻墙代理软件下线,所以到底什么客户端能用,得经常搜一搜……

2.5  Android

Android 上在 Play 商店里搜 shadowsocks 就能找到 Shadowsocks for Android 这个客户端,无论是否 root 都能用。

3.  一些其他奇怪的问题

3.1  ipv6 不兼容问题

通过代理访问 Google ,会经常碰到搜索跳转到 ipv6.google.com/sorry/IndexRedirect ,并要求输入验证码的状况 。参考 在 Debian 下禁用 ipv6 的方法 ,禁用服务器端的 ipv6 支持之后,代理就不会再访问 Google 的 ipv6 地址了。

GlossyBlue theme adapted by David Gilbert
Powered by PmWiki