rclone和alist文件加密问题

1. 前言

本地的文件或者nas上的文件希望上传到网盘上,以防止本地磁盘损坏造成的数据丢失。同时又不想让网盘能够看到我们私有的照片,因此这里用到了rclone或者alist的文件加密功能。

2.描述

alist 提供了网盘挂载能力,他可以将支持的网盘挂载为 webdav协议,这样我们就可以脱离官方的客户端很方便的操纵网盘的文件了。
rclone 是remote clone的意思,他的功能挺多的,我通过rclone sync命令行可以让本地文件和远程文件(支持webdav)进行同步,以达到备份的目的。
同时rclone支持在与远程连接之间增加一层加密管道,原始文件写入管道自动加密,文件从管道读出自动解密。这样就能让我们的数据在云端处于加密状态,本次访问时可以实时解密,操作起来就像是没有加密一样,十分的方便。

rclone + alist 组合使用即很方便的将文件从本地加密同步到网盘。

3.加密

下面是我没弄明白的地方,虽然我按照这么操作实现了目的,但是我并不知原理,后面我有时间再研究下。

新版的alist同样也提供了加密的功能,并且借鉴了rclone的做法,与rclone使用相同的算法。也就是说在密码一致的情况下,rclone加密的文件alist能解密,alist加密的文件rclone能解密,使用起来十分的方便。

但是alist对密码做了处理,直接拿rclone的密文配置到alist中是不行的,或者相同的明文密码配置到alist中也不行。我参考了github上这个提问。按照其中说的配置后可以生效。

3.1 具体操作

  1. 查看rclone配置的密码和盐,文件在用户目录的.config下,其中的密码和密码2就是我们需要的的密码和盐,是以密文形式存储的。
1
2
3
4
5
6
7
8
9
10
11
cd /home/user/.config/rclone/

user@debian:~/.config/rclone$ cat rclone.conf
[kuake_se_wrap] # 夸克网盘的加密包装器
type = crypt
remote = kuake:kuake_se_wrap
filename_encryption = off
directory_name_encryption = false
password = 密码
password2 = 盐

  1. 配置alist
    将rclone的密码和盐前面增加 ___Obfuscated___前缀粘贴到alist网页配置端的密码和盐位置上就可以了。我猜测是alist检测到 ___Obfuscated___前缀就直接保存,而没有前缀的会进行加密。
    进过我的验证,密码直接输入原始的明文密码或者前缀+rclone密文密码都可以。

1724605012416

3.2 一些资料

(rclone的加密部分的文档)[https://rclone.org/crypt/]


rclone和alist文件加密问题
https://www.huangchaoyu.com/2266882737.html
作者
hcy
发布于
2024年8月20日
更新于
2024年10月18日
许可协议