我正在尝试编写一个由程序在运行时发出的命令,以使用 ecryptfs 挂载目录。这需要是一个非交互式过程,事先不知道任何信息,以便程序可以使用其他机器机密创建加密文件夹。我没有在这些机器上安装密钥环或其他类似的东西。
我到目前为止:
sudo mount -t ecryptfs -o "rw,key=passphrase:passphrase_passwd=george,ecryptfs_cipher=aes,ecryptfs_key_bytes=32,ecryptfs_passthrough=n,ecryptfs_enable_filename_crypto=n,verbose=0,no_sig_cache" ~/secure_1/ ~/secure_2/
这很棒,但我想做的是启用文件名加密。但是当我这样做时,系统提示我输入签名。我尝试提供一个签名,但似乎我需要提前知道这一点,以便它与密码短语匹配,但这对我来说没有用,因为正如我提到的那样,密码短语将使用机器机密生成。
sudo mount -t ecryptfs -o "rw,key=passphrase:passphrase_passwd=george,ecryptfs_cipher=aes,ecryptfs_key_bytes=32,ecryptfs_passthrough=n,ecryptfs_enable_filename_crypto=y,verbose=0,no_sig_cache" ~/secure_1/ ~/secure_2/
导致出现以下交互式提示:
Filename Encryption Key (FNEK) Signature [e983cfd4b25df524]:
我认为我需要做的就是停止此命令提示我输入 FNEK 签名。我不明白为什么当它与字段相同时必须提示它ecryptfs_sig
,我尝试了很多方法来解决这个问题,但都无济于事,所以我来了。
谢谢任何提示或见解。
答案1
尝试添加:
ecryptfs_fnek_sig=e983cfd4b25df524
然后它看起来就像:
sudo mount -t ecryptfs -o "rw,key=passphrase:passphrase_passwd=george,ecryptfs_cipher=aes,ecryptfs_key_bytes=32,ecryptfs_passthrough=n,ecryptfs_enable_filename_crypto=y,ecryptfs_fnek_sig=e983cfd4b25df524,verbose=0,no_sig_cache" ~/secure_1/ ~/secure_2/
如果您需要更多信息:
man ecryptfs