我使用 eCryptFS 加密笔记本电脑的主目录。我的备份脚本将加密文件复制到服务器(连同 中的其他所有内容(home/.ecryptfs
)。
我如何挂载备份的加密文件?我想验证我是否可以这样做,并且一切是否都已准备就绪。
我天真的尝试
mount -t ecryptfs /backup/home/.ecryptfs/boldewyn /mnt/test
没有用,eCryptFS 想要创建一个新的分区。
答案1
假设您使用 Ubuntu 标准加密方案,无需进行任何额外的调整。
$HOME/.ecryptfs“文件夹”实际上只是一个链接。
你的文件真正保存的位置是 /home/.ecryptfs/$USER
其中有两个文件夹,.Private(包含加密的文件)和.ecryptfs,其中包含 auto-mount、auto-umount、Private.mnt、Private.sig、wrapped-passphrase 等文件。
希望目标文件被复制到您的主机备份。
如果此服务器中没有您的包装密码的备份,您就输了。如果有备份,则您的加密方案已因在网络上存储包装密码而受到削弱,除非您控制进行备份的主机。
我发现这个脚本安装:
ROOT=/home/.ecryptfs/$USER 目标=/mnt/$用户 # ROOT 应该是 .ecryptfs 和 .Private 文件夹的父级 sudo mkdir -p $TARGET $ROOT 目录 echo 输入你的密码: PASS=$(ecryptfs-unwrap-passphrase.ecryptfs/wrapped-passphrase|sed s/Passphrase:\ //) SIG1 = $(head -n1 .ecryptfs/Private.sig) SIG2 = $(tail -n1 .ecryptfs/Private.sig) echo 密码: 回显 $PASS echo 签名: 回显 $SIG1 回显 $SIG2 echo 应该为空: sudo keyctl clear @u sudo keyctl 列表@u echo 不输入任何内容: 回显 $PASS | sudo ecryptfs-add-passphrase --fnek echo 应该有签名: sudo keyctl 列表@u echo 在 $TARGET 上安装 $ROOT... sudo mount -t ecryptfs -o key=密码,ecryptfs_cipher=aes,ecryptfs_key_bytes=16,ecryptfs_passthrough=no,ecryptfs_enable_filename_crypto=yes,ecryptfs_sig=$SIG1,ecryptfs_fnek_sig=$SIG2,passwd=$(echo $PASS).Private $TARGET ls $目标 取消设置-v PASS