Cloud Sync
Synology DSM自带的Cloud Sync支持同步各种网盘到指定的文件夹。
其中百度云、Onedrive在国内同步没什么问题,但是Dropbox和GoogleDrive因为GFW的原因,只有科学上网才可以用。
Docker
Synolocy DSM里面的Docker简直屌爆了,有了它你能干的事情就多了。
首先,你要有一个VPS,搭一个Shadowsocks的Server。推荐搬瓦工的,这里就不细说了。
你可以在注册表里搜shadowsocks-privoxy
选择gd41340811/shadowsocks-privoxy
。
下载之后在映像里点击启动
–>高级设置
。
在端口设置
里,设置你的本地端口,默认是“自动”,你也可以指定固定的未被占用的端口。
在环境
里,要加入你的Shadowsocks Server的SERVER_ADDR
、SERVER_PORT
、PASSWORD
设置完成之后,启动实例,在控制面板
–>网络
–>代理服务器
–>高级设置
,设置代理,其中http和https都对应容器端口8118的本地端口32771。(注:7070就是全局的ss代理,8118是provixy的pac代理,如果想要区分http和https的请求,在这里改就可以了)
之后,你的NAS就可以科学上网了。
privoxy
因为群晖NAS只支持http代理,所以必须要用privoxy。
gd41340811/shadowsocks-privoxy
是根据bluebu这哥们改写的,他写的是代理全部,所有的请求都走shadowsocks代理,但是其实我们只需要Dropbox和GoogleDrive走代理。
github地址:https://github.com/GOOD21/shadowsocks-privoxy dockerhub:https://hub.docker.com/r/gd41340811/shadowsocks-privoxy/
欢迎 fork star
在privoxy里配置改为如下:
# forward-socks5 / 127.0.0.1:7070 . # 打开就是代理全部请求
forward / .
forward-socks5 .dropbox*.com 127.0.0.1:7070 . # 代理dropbox的请求
forward-socks5 .*google*.* 127.0.0.1:7070 . # 代理googledrive相关请求
这里关于dropbox有个地方比较坑,几乎网上的文章写的配置都是这样的:
forward-socks5 .dropbox.com 127.0.0.1:7070 .
forward .dropbox.com:443 .
这样的话,在CloudSync里暂停同步
之后再恢复同步
是好用的,但是后续的10s一次检查就一直显示连接中
,根据抓包的请求发现:
connecting cfl.dropboxstatic.com:443
connecting notify.dropboxapi.com:443
这些请求根本没走代理,改成.dropbox*.com
之后就好使了。
在github上有个gfwlist2privoxy的repo,可以把所有gfwlist转换成privoxy的actionfiles,这样就实现了PAC。(然而感觉在NAS上并没有什么卵用…)
按需同步
在CloudSync的设置里可以调整轮询期,默认是10s。
我是拿来做备份的,不需要实时性,所以改成了3600s。