为什么我不能将 OpenSSL 密钥对与 ecryptfs 一起使用?

为什么我不能将 OpenSSL 密钥对与 ecryptfs 一起使用?

根据文档,我只需创建一个公钥/私钥对即可ecryptfs使用ecryptfs-manager。但没有什么可选择的。

$ sudo ecryptfs-manager
eCryptfs key management menu
-------------------------------
    1. Add passphrase key to keyring
    2. Add public key to keyring
    3. Generate new public/private keypair
    4. Exit

Make selection: 3
Select key type to use for newly created files: 
Selection: 

至少应该有一个选项供我选择,有点像这样:

Make selection: 3
Select key type to use for newly created files: 
    1. OpenSSL
    2. Probably some other option here
Selection: 

我正在使用 Ubuntu 11.10(带有 Xubuntu-desktop)。据我所知,我拥有所有相关软件包,例如 ecryptfs-utils、openssl、keyutils。我还缺少什么?

虽然我可以使用如下方式创建密钥对openssl(我不确定这是否适合使用ecryptfs):

$ openssl genrsa -out rsakey.pem -aes256 2048
Generating RSA private key, 2048 bit long modulus
(...)
Enter pass phrase for rs-efs-rsakey.pem:
Verifying - Enter pass phrase for rs-efs-rsakey.pem:
$ openssl rsa -in rsakey.pem -out rsapub.pem -pubout
Enter pass phrase for rsakey.pem:
writing RSA key

仍然存在问题,ecryptfs因为就像一样ecryptfs-managermount -t ecryptfs也缺少选择钥匙的选项。

当我安装一些随机的东西时,我得到:

$ sudo mount -t ecryptfs ~/temp ~/temp
[sudo] password for redsandro: 
Passphrase:

它立即假设我想使用密码加密。我应该得到这样的结果:

$ sudo mount -t ecryptfs ~/temp ~/temp
[sudo] password for redsandro: 
Select key type to use for newly created files:
    1) openssl
    2) passphrase
    3) tspi
Selection:

ecryptfs-manager我猜测和缺少相同的内容mount,因为文档中存在相同的问题。我遗漏了什么?

答案1

您没有遗漏任何东西。Ubuntu 和其他发行版无法发布 OpenSSL 密钥模块,因为 GPLv2 许可的 libecryptfs 存在许可问题。

OpenSSL 密钥模块的版权持有者最近添加允许发行版发送 OpenSSL 密钥模块的例外情况。

您可能希望在 12.04 版本之后的 Ubuntu 版本中出现关键模块。请注意,时间框架仍未确定。

与此同时,您可以自行编译 ecryptfs-utils 并将 libecryptfs_key_mod_openssl.so 复制到适当位置(可能是 /usr/lib/ecryptfs/)。如果您决定这样做,请记住它尚未经过测试,您将得不到支持。

相关内容