ryfs 需要密码/密码短语条目来挂载文件系统。
我想在启动时自动挂载文件系统(就像从 rc.local 内部调用脚本来完成这项工作)。
(要挂载的加密文件系统已存在)
我可以将密码作为哈希值给出吗?
我不想将其纯文本保存在启动脚本中。
任何想法,如何克服这个问题?
提前谢谢!
Linux系统...
答案1
很抱歉这里出现了死角,但自从我开始从事这个项目以来,这个答案总是首先出现。我能够使用以下方法解决这个问题,没有安全风险(据我所知,我不是专家)。这当然取决于使用“gnome keyring”,以及共享您的用户登录密码的主密钥环。
安装:
libsecret-tools
和expect
在终端中,运行
secret-tool store --label="cryfs" cryfs cryfs
输入
cryfs
密码编写第一个脚本(就我而言
cryfs.sh
)#!/usr/bin/expect -f set password [lindex $argv 0]; spawn cryfs ~/Dropbox/cryfs-vault ~/cryfs-source expect "Password: " send "$password\r" expect eof
编写第二个脚本 (
autocryfs.sh
)#!/bin/bash password=$(/usr/bin/secret-tool lookup cryfs cryfs) /path/to/script/cryfs.sh $password
使两个脚本都可执行
chmod +x /path/to/script/scriptname.sh
最后标记要在启动时运行的脚本(在我的例子中 - Linux Mint - 添加到系统设置>启动应用程序>添加>自定义命令>名称:Cryfs,命令/path/to/script/autocryfs.sh startup delay: 5
答案2
如果这是可能的,那么任何人都可以在从启动文件中读取哈希值后挂载该系统,而无需知道密码。因此,以纯文本形式保留哈希本质上与以纯文本形式保留密码一样不安全。因此,不,这是不可能的。
答案3
如果您可以使用散列密码访问您的文件系统,则将散列密码存储在非加密文件中是一个潜在的危险。
如果您没有身份验证程序,任何加密都没有任何意义,身份验证程序可能只是文本密码、您的指纹、您的面部或眼睛图片等。
另一个问题是,如果您希望在通过此身份验证过程后自动安装它。我认为这是可能的,您不需要为此存储任何哈希密码。
如果用户密码与选定的 eCryptfs 密码匹配,则可以自动挂载 eCryptfs。可以找到如何完成此操作的更多信息这里。输入 gnome 密码后,您的主目录将自动挂载。