墙挡不住向往自由的心——VPN 升级为 SSR
cn·@shanestark·
0.000 HBD墙挡不住向往自由的心——VPN 升级为 SSR
## 被墙了 [@美国之音中文网 推特](https://twitter.com/VOAChinese/status/884522602714337280):【中国电信商2月前将禁止个人VPN接入】据彭博新闻社星期一报道,中国政府通知电信运营商在2018年2月1日前截断个人用户对虚拟专用网络(VPN)的接入。 今天的重磅消息:有深圳用户 Leaskh 在推特上称,因涉嫌使用VPN翻墙,其电信宽带帐号被关停,继而被有关部门邀去深圳市公安局指挥中心喝茶。   Green VPN,云梯已经被关闭,相逢有时,后会无期。 VPN 中间服务商一个个被监管,美剧被下载,大多数人都要被关在墙内了。 ## Shadowsocks 不安全 深圳正在利用精准SS协议识别技术查禁VPN上网,查到有使用VPN行为就停宽带,写了保证书才给恢复宽带。运营商直接从源头监控你网络接入的情况。任何浏览的网址和数据都被监控,翻墙的事情也就显而易见。 联通客户端检测和 VPN 工具的效果。  ## SSR 成为新宠 > SSR版本的出现,改变了SS单纯的TCP发包模式,利用UDP和TCP转换,将协议流量特征降到最低,同时混淆及自定义协议接口,将流量变成隐性且不易察觉,特别是后期redirect参数,甚至可以将Twitter的流量伪装成bing的流量发包传输,整体来说SSR版本后期定制性不可小觑。 ### 特点 1. 全能代理,同一端口支持socks4/socks4a/socks5/http 2. 节点统计,包括延迟、连接数、当前下载速度、最高速度、出错率等等 3. 连接管理,随时断开指定节点的连接,或修改节点后自动断开 4. 协议转换,把UDP包封装于TCP里发送 5. 多重代理,通过设置前置socks5/http代理,可达到任意重代理 6. 协议插件,支持自定义协议和协议混淆 SSR 官网介绍:这里是ShadowsocksR的非常简陋的辣鸡主页。本软件是很少人知道的网络减速器,专门通过奇怪的加密和协议,让你机器跑满CPU,以便让更多人享受龟爬般的网络,感受进度条永远卡在99%的快感。 这么有趣的作者,你还不去 star 一下吗? [SSR 主页](https://github.com/breakwa11/shadowsocks-rss) 如果是你开发者,那么直接去 [SSR Github 主页](https://github.com/breakwa11/shadowsocks-rss) 吧,更快更原滋原味。 ## SSR 服务端 使用 docker 可以最快速地完成安装。 ### 1. 安装 docker 和启动 docker centos 系统 ``` yum update && yum install -y docker && systemctl start docker ``` ubuntu 系统 ``` apt-get update && apt-get install -y docker && service docker start ``` 执行 `docker ps`, 如果看到下图,就表示 docker 安装成功了。  ### 2. 下载和启动 SSR 1. `-p 8888:8888` 意思是 SSR 跑着哪个端口,`-p 8000:8888`,客户端链接的时候是配置 8000 端口 2. $PASSWORD 替换为你想要的密码 ``` docker pull breakwa11/shadowsocksr && docker run -itd -p 8888:8888 --env SERVER_PORT=8888 --env PASSWORD=$PASSWORD --name ssr breakwa11/shadowsocksr ``` ### 3. 查看 启动情况 ``` docker logs -f ssr ``` ``` server.py:106 server start with protocol[auth_aes128_md5] password [liuxingvpn123] method [aes-128-ctr] obfs [tls1.2_ticket_auth_compatible] obfs_param [] ``` 如果看到上面这样一段信息,就表示安装成功了。这段信息显示了 protocol,password,method,obfs_param,客户端需要和服务器端设置成一样,才能连接成功。 ### 4. 重启 ``` docker restart ssr ``` ``` server.py:106 server start with protocol[auth_aes128_md5] password [xxxx] method [aes-128-ctr] obfs [tls1.2_ticket_auth_compatible] obfs_param [] ``` ### 加密方式和混淆 想探究原理的,请看这篇文章:https://github.com/breakwa11/shadowsocks-rss/blob/master/ssr.md 没有要求的,直接使用系统默认设置即可。ssr 已经选了一个比较适合的方案,auth_aes128_md5 + tls1.2_ticket_auth_compatible ### 进阶配置 选择何种TCP协议和混淆模式因各地区和VPS属性而定,这里面的变量太大,就是原作者也无法提供一种准确的恒定参数,那么首先看看各参数的解释(来自作者Wiki)  ## 客户端 Android APP: [SSR-android](https://github.com/shadowsocksr/shadowsocksr-android/releases) iOS APP: [Shadowrocket](https://itunes.apple.com/us/app/shadowrocket/id932747118), [Potatso2](https://download.potatso.com), [Cross](https://itunes.apple.com/cn/app/cross-shadowsocks-proxy-client/id1194595243) MAC APP:[ShadowsocksX-NG](https://github.com/qinyuhang/ShadowsocksX-NG/releases), [ShadowsocksX-R](https://github.com/yichengchen/ShadowsocksX-R/releases) 其它跨平台分支:[avege](https://github.com/avege/avege), [electron-ssr](https://github.com/erguotou520/electron-ssr) 客户端采用和服务器端同样的配置即可,客户端可以增加一个混淆参数,自由发挥即可。 Port: 端口 Password: 填一个密码 Encrypt: 选择一种加密方式,根据服务器的设置 Protocol: 选择一种协议,根据服务器的设置 Protocol_param: 不用填 Obfs: 如果你的运营商没有封锁 SS 可以选择 plain,如果你的运营商是小运营商,推荐选择 tls1.2_ticket_auth 或者 http_simple Obfs_params: 可以不填  ## 结语 SSR 到底能不能躲开监管,还有待考证。至少目前来说成为了我新的得力工具。
👍 shanestark, smileli,