更改ecryptfs目录的密码


9

我想拥有一个加密的目录(而不是homedir!),例如/ testdata。

我已使用以下命令和参数对其进行加密:

root@pc:~# mount -t ecryptfs /testdata/ /testdata/
Passphrase: 
Select cipher: 
 1) aes: blocksize = 16; min keysize = 16; max keysize = 32
 2) blowfish: blocksize = 8; min keysize = 16; max keysize = 56
 3) des3_ede: blocksize = 8; min keysize = 24; max keysize = 24
 4) twofish: blocksize = 16; min keysize = 16; max keysize = 32
 5) cast6: blocksize = 16; min keysize = 16; max keysize = 32
 6) cast5: blocksize = 8; min keysize = 5; max keysize = 16
Selection [aes]: 
Select key bytes: 
 1) 16
 2) 32
 3) 24
Selection [16]: 
Enable plaintext passthrough (y/n) [n]: 
Enable filename encryption (y/n) [n]: y
Filename Encryption Key (FNEK) Signature [b9fc92f854a4c85b]: 
Attempting to mount with the following options:
  ecryptfs_unlink_sigs
  ecryptfs_fnek_sig=b9fc92f854a4c85b
  ecryptfs_key_bytes=16
  ecryptfs_cipher=aes
  ecryptfs_sig=b9fc92f854a4c85b
WARNING: Based on the contents of [/root/.ecryptfs/sig-cache.txt],
it looks like you have never mounted with this key 
before. This could mean that you have typed your 
passphrase wrong.

Would you like to proceed with the mount (yes/no)? : yes
Would you like to append sig [b9fc92f854a4c85b] to
[/root/.ecryptfs/sig-cache.txt] 
in order to avoid this warning in the future (yes/no)? : yes
Successfully appended new sig to user sig cache file
Mounted eCryptfs

此命令创建以下文件:

root@pc:~# cat .ecryptfs/sig-cache.txt 
b9fc92f854a4c85b

现在,我想更改以前使用的密码。我找到了ecryptfs-rewrap-passphrase命令,但是不确定是否在正确的路径上:

root@pc:~# ecryptfs-rewrap-passphrase .ecryptfs/sig-cache.txt 
Old wrapping passphrase: 
New wrapping passphrase: 
New wrapping passphrase (again): 
Error: Unwrapping passphrase failed [-5]
Info: Check the system log for more information from libecryptfs

/var/log/syslog 说:

Jul 13 13:16:19 pc ecryptfs-rewrap-passphrase: ecryptfs_unwrap_passphrase: PK11_CipherOp() error; SECFailure = [-1]; PORT_GetError() = [-8188]

我在ecryptfs方面拥有新手身份,在此对您有所启发。

Answers:


10

我看到您正在尝试将密码推送到具有其他含义的文件中。

ecryptfs-rewrap-passphrase /home/.ecryptfs/$USER/.ecryptfs/wrapped-passphrase 

或最肯定的是……但最好wrapped-passphrase.ecryptfs隐藏目录中手动搜索:

ecryptfs-rewrap-passphrase /home/$USER/.ecryptfs/wrapped-passphrase

我认为这是更改密码的正确命令,$USER您的用户在哪里

PS:最好不要登录并解密文件夹。


1
感谢您的答复莱昂。我没有/想要一个加密的用户帐户。我只想要一个加密目录,该目录将在需要数据时手动挂载。我觉得ecryptfs-rewrap-passphrase并不是适合这项工作的工具。也没有home/.ecryptfs目录,因为我没有带加密目录的用户。有没有办法更改我的手动加密目录上的密码?
Theodotos Andreou

2

由于ecryptfs会使用该密码分别加密每个文件,因此所有文件都需要使用新密码重写,因此无法即时更改密码。

因此,您所能做的就是创建一个新目录,并使用新的密码短语将其挂载并复制所有文件。

例外是在安装时使用Ubuntu创建加密的/ home /时。以这种方式设置Ubuntu时,它不会直接使用您的密码来进行文件加密,而是会生成一个随机密码并保存到中~/.ecryptfs/wrapped-passphrase。然后使用您的个人密码对该文件进行加密。因此,您的个人短语可以更改,文件加密密码短语保持不变。手动安装东西时,可能可以重新创建该行为,但是默认情况并非如此,您的个人密码直接用于文件加密。


0

实际步骤在Ubuntu 12.04 LTS上:

从Ubuntu CD / USB引导使用Nautilus挂载分区(简便方法)

sudo ecryptfs-rewrap-passphrase /media/8de07fc2-637c-4218-b0e9-5043685c3e6b/home/.encryptfs/$USER/.ecryptfs/wrapped-passphrase

您必须还原所有权

sudo chown 1000:root /media/8de07fc2-637c-4218-b0e9-5043685c3e6b/home/.encryptfs/$USER/.ecryptfs/wrapped-passphrase

重新开始

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.