这个项目主要是对 alist 的服务进行代理,提供 webdav 的加解密功能。支持 alist 网页在线播放加密的视频,查看加密的图片等功能,同时在 webdav 下的操作透明,自动实现文件资源的加解密。
到目前为止,此项目的算法已经基本确定下来了,用 RC4 和 AES-CTR 更安全,之前的 mix 混淆明文的方案其实也是可行的,但是作为加密的话,安全强度还不够,当然对付网盘是足够的(MIX 移除了)。而 AES-CTR 更加安全,速度最快。RC4 由于使用 nodejs 进行实现,性能会稍微差一些(但是依然非常的高效,电视盒子的性能可以跑满 300M 带宽没问题,主要吃单核性能)。
算法基本确定下来了,接下来就可以正常实现业务了,release 版本 应该很快就可以和大家见面了。体验版可以用 docker 进行体验。
docker 安装
https://github.com/traceless/alist-encrypt
运行拉取镜像命令
docker pull prophet310/alist-encrypt:beta
执行启动容器即可
docker run -d -p 5344:5344 -v /etc/conf:/node-proxy/conf –name=alist-encrypt prophet310/alist-encrypt:beta
可以添加环境变量 -e ALIST_HOST=192.168.9.100:5244 这样首次启动就会默认设置 alist ip 地址
arm 版本目前单独打包 beta-arm,后续再放一起
docker run -d -p 5344:5344 -v /etc/conf:/node-proxy/conf –name=alist-encrypt prophet310/alist-encrypt:beta-arm
docker-compose.yml
version: '3'
services:
alist-encrypt:
image: prophet310/alist-encrypt:beta
restart: unless-stopped
hostname: alist-encrypt
container_name: alist-encrypt
volumes:
- ./alist-encrypt:/node-proxy/conf
environment:
TZ: Asia/Shanghai
ALIST_HOST: 127.0.0.1:5244
ports:
- 5344:5344
network_mode: bridge启动后就打开代理服务器地址 http://127.0.0.1:5344/public/index.html 即可进入配置页面,账号 admin,密码默认 123456。配置后之后,打开http://127.0.0.1:5344 即可访问到 alist 的服务了。
对于路径的设置,目前是支持正则表达式的,推荐表达式例如: movie_encrypt/* ,这样的话所有的 movie_encrypt 目录的文件都会被加密传输。
操作使用
1、alist 原本网页上的所有的操作都可以正常使用,因为 Alist-encrypt 它是透明代理,所以你所有的操作请求都是透传到 alist 上的,除了某些需要加密上传的操作和在线解密播放的操作。
2、你可以在 webdav 客户端上进行文件上传,如果设置了加密的文件夹目录,那么上传的文件就会被加密,在云盘上下载后会无法打开。但是你使用 Alist-encrypt 代理的 alist 服务还是一样可以正常下载查看,在线播放视频,查看图片等,不管是在 webdav 还是网页上都是正常使用。
3、界面上对于路径的设置,目前是支持正则表达式的,推荐表达式例如: movie_encrypt/* ,这样的话所有的 movie_encrypt 目录的文件都会被加密传输。





