最近又有 pcloud 特价了,
把之前写的一篇有关于 rclone 在 pcloud 上并加密的心得分享一下
希望有帮到要使用 pcloud 的人
论坛版 https://forum.community.tw/t/topic/143
TW Community 是我自架的一个论坛,以电脑相关的讨论分享为目标
可以当一般论坛使用,也可以当作个人部落格的留言系统
可以用 markdown,或弄一个自己发文的列表等功能
欢迎大家注册发问回答或分享讨论
(只是征求类等还是得在 PTT,那里没有 P币系统)
以下正文
前言,这里的用法主要是为了加密备份,以此方法处理过后,之后也要用同样的方法去下
载并解密,才能像一般档案正常使用,无法像平常直接下载档案使用。
rclone: 是一个命令列形式的处理云端档案的工具,有人说他是云端的瑞士刀,并且在该
页面也可以看到他支援超过 40 种云端空间,如常用的 google drive, onedrive,
amazon s3 等,也包括我们今天要使用的 pcloud
pcloud: 有提供终生方案以及 zero-knowledge (零知识? - 需要额外加购) 的云端空间
,蛮常特价为 245 (USD/EUR),如有考虑的请自行衡量厂商倒闭的风险。这边不多介绍
pcloud
以下是如何利用 rclone 去使用 pcloud 并利用 rclone crypt 加密,整体步骤大略是
1. 用 rclone 设定好云端空间 (这里是 pcloud 作为范例)
2. 用 rclone crypt 设定好加密资讯 (对称加密),并指定前面设定好的作为加密后
的位置。
就是这两个步骤,第一步骤可以换成任意 rclone 支援的云端,而第二步骤则是可选,如
果不用就是没有额外加密。
这里还会再补充 windows 或 pcloud eu 会遇到的问题。
rclone 设定云端空间
基本上会跟这里 https://rclone.org/pcloud 一样,并搭配上
https://rclone.org/remote_setup 来处理设定的机器并没有浏览器可以使用的情形
https://imgur.com/MlBu47T.png
1. rclone config 使用交互式接口来设定
n 建立新的设定党
2. name> <name>: <name> 是设定档的名字,rclone 会用这个名字来识别,在 crypt 设
定中也需要设定档的名字
https://imgur.com/s6yVFQ7.png
3. Storage> <storage>: <storage> rclone 会列出清单,选择相对应的即可,这里我们
使用 pcloud
4. Edit advanced config?: 如果 pcloud 是选择 EU 来存放资料的话,这里要选择 y
进入去修改位置
(pcloud EU) advanced config 此项要进去修改成 EU 用的,
https://imgur.com/g9TaEE5.png
5. hostname> <hostname>: <hostname> 这里使用 2 来指定是 EU,原先不修改的话这里
会是 1 US
https://imgur.com/gXclBJR.png
6. Use auto config?: auto config 这里看你设定的机器是否有浏览器可以使用,如果
有就用 1 ,rclone 会提供相对应的网址打开并认证即可,如果没有的话要选择
n) NO,他会请你利用另一台有浏览器的机器,使用 rclone authorize "pcloud" 后
再把认证资讯贴过来,那在有浏览器的机器上流程基本上一样,rclone 会提供一个连
结给你认证,认证完后把 result> 后方的贴回来即可。
可能会遇到的问题
我是在 windows 上遇到 rclone 所给的网址无法顺利打开,原因是 port 53862 已经被
占住了,所以需要将他让出来。
rclone 会回报 An attempt was made to access a socket in a way forbidden by
its access permissions,或者点选他给的网址都无法显示,是因为 port 53682 已经被
占住了。那可能是因为 Hyper-V 的缘故。可以参照这里的解决方式
https://reurl.cc/OkL42g 记得要把 port 改成相对应的 53682 ,用管理员权限开启 powershell 输入以下指令,
应该就能解决了。
```
dism.exe /Online /Disable-Feature:Microsoft-Hyper-V
netsh int ipv4 add excludedportrange protocol=tcp startport=53682
numberofports=1
dism.exe /Online /Enable-Feature:Microsoft-Hyper-V /All
```
rclone crypt 加密档案后再上传
这边也是根据 https://rclone.org/crypt/ 来写的步骤
https://imgur.com/Nfzk3vx.png
1. rclone config: 一样使用 rclone config 来进入互动接口来设定
n 建立新设定档
2. name> <name>: <name> 设定档的名字
https://imgur.com/Oj28zn1.png
3. storage> crypt使用 crypt 来设定加密
4. remote> <remote_name>:<path>: <remote_name> 是上一步骤或者之前所建立的设定
档名称﹝也可在 rclone config 所出现的列表确认﹞,<path> 在哪个路径下要加密
,这边 rclone 也建议说不要使用最上层来当作加密的起点,而是至少弄在第一层底
下如 pcloud:folder 等,而这样也比较好管理,该资料夹底下都用同一种加密方式,
而不在该资料夹底下的,可以是未加密,或者用不同组密码来加密。
https://imgur.com/TCji0Mu.png
5. filename_encryption> 要怎么加密档名 (1. 正常加密 2. 多简单混淆 3. 不加密)
Password or pass phrase for encryption. 设定密码,可以自己设定或者让 rclone
随机生成一组,这里的密码需要记住,当要再次设定读取同一个资料夹,要使用 y 并
填入一样的密码
https://imgur.com/ymZUK6X.png
6. directory_name_encryption> 要怎么加密资料夹名 (1. 加密 2. 不加密)
Password or pass phrase for salt 可以再增加安全性,但这里如果有设定的话,在
rclone 中也需要记起来,这边可能会跟一般 salt 的用法不太一样。(注:跟前面一
样,如果这里有设定,当要再次设定时,要使用 y 来填入一样的密码)
https://imgur.com/cKjKSiH.png
像这里示范的,password: b1gg...Zng 跟 salt: DjF...DTA 就要记起来,等再次设定去
读取同一个资料夹时,就需要把这两个也填入进设定档。
https://imgur.com/YkCKn68.png
像这里,当我指定 crypt-test:subfolder/file 就会加密后送至
pcloud:test/subfolder/file ,可以先试着在另外的地方建立设定档,并测试上传下载
,确保加解密可以正常读取档案,要不然等备份好一阵子,当要使用发现有密码没记或设
定没弄好,就惨了。
另外,虽然 rclone 不会直接把这两个密码明文存下来,但如果在不安全的环境,这样的
安全性并不高,可以在 rclone config 再加上密码,详情可见
https://rclone.org/docs/#configuration-encryption
那完成后就可以跟一般使用 rclone 一样了。