容器化的shadowsocks+v2ray本地代理

每年总有几个时段互联网出口会频繁波动。经测试,ss+v2ray+websocket隐藏在一个伪装网站后的方式目前仍是最稳定可靠的。因此我目前主要使用这种代理。

而家中之前一直使用一台Windows小主机作为局域网共享代理,但随着这台电脑近期经常运行一些开发任务,频繁重启和使用,影响其他设备稳定使用代理,就考虑迁移到另一台QNAP NAS上。

这台NAS主要用作存储和下载,由于支持docker,可以跑各种自定义镜像,以至于基本不用安装什么QNAP家的原生应用了。

原先的Shadowsocks-Windows版配置简单,只需运行客户端并允许局域网连接即可。但linux客户端则有两个问题:

  • 原版ss镜像不包含v2ray插件;
  • 原版ss-local客户端只支持socks5代理,没有http代理;

第一点倒不难,直接把插件复制进去就是了;

第二点其实是windows客户端玩的一个小trick:作者打包了一个privoxy进去,免去自己写http转socks5的工作。在前端用同一个端口监听并解析前255个字符来判断是哪种代理请求,如果是socks5就直接代理,是http就转给privoxy再绕一圈。

但linux的客户端不支持,只好自己手动安装privoxy,用privoxy把ss的socks5代理转到另一个端口的http代理。

然后把两个服务一起build成新的镜像即可。

 

基于以上编写的DockerFile已经上传到github,建议用docker-compose运行

https://github.com/atonasting/shadowsocks-client-v2ray-privoxy-docker

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注