我正在考虑从 Windows Server 切换到 Ubuntu Server。我不明白的功能之一是 - 我应该使用什么来代替 NTFS 加密 (EFS)。所以,基本上,我需要什么:
1) 这仅适用于存储中的某些特定文件,例如比特币核心的 wallet.dat 和 bitcoin.conf 文件(不适用于整个 150Gb 区块链存储库)
2)如果这是云服务器并且管理员拿走了硬盘,则文件保持物理加密状态 - 他们无法解密它。
3) 文件是对称加密的(因此,即使是大文件也具有出色的性能),但密钥使用其公钥分配给一个或多个用户。例如,分配执行该服务配置的服务帐户和管理员帐户。没有其他管理员帐户能够读取文件的内部数据(例如,包含服务的密码或密钥),它们也不能覆盖或捕获权限,只是因为它们无法物理解密它。登记解密的用户可以为其他用户分配证书(如果他们具有适当的文件权限)。
4)加密对于软件来说是透明的,因此,服务根本不知道加密,文本编辑器(对于配置文件)可以透明地修改它,只要它们在授权用户下运行。
5)只有当用户(或服务帐户)使用密码登录时,证书容器才会被解密。如果管理员重置密码 - 用户将永久丢失其加密容器。如果用户必须将硬盘移动到其他计算机,则可以选择导出证书。
我可以在 Windows(自 Windows 2000 起)中使用一个复选框(以及可选的已分配证书列表)来完成所有这些操作。它甚至会在第一次使用时自动创建证书,并建议在通知区域中备份它。
你们在 Linux 世界为此做了什么,有什么建议吗?我对单独的容器(系统中登录的任何用户都可以访问)和安装点(但可能这是唯一的方法)不太感兴趣,我确实相信有一些解决方案可以扩展文件系统。
答案1
看https://wiki.archlinux.org/index.php/disk_encryption,它是特定于架构的,但实际上每个包在 Ubuntu 中也可用。
所有磁盘加密方法都是“即时”的,因此物理驱动器始终保持加密状态(系统加密方法也是如此)。如果拔掉插头后所有内容都被解密,那么任何东西都不会很有用!但仅供参考,如果它是虚拟服务器,则具有物理访问权限的“真正”管理员始终可以监控进出的每一位,但这对于任何操作系统都是如此。
在 Ubuntu 上,eCryptfs 听起来最接近 Windows 复选框的功能,而且更好(也加密文件名,据我所知 Windows 不加密)。如果您使用的是 GUI,则应该有一个复选框来加密新用户的主页,或者使用ecryptfs-migrate-home
,或者我认为也有一个标志adduser
或类似的命令。
如果用户登录,他们的主页就会为他们“解密”,并且常规访问控制会限制谁可以看到什么。
全盘加密(使用 LUKS)是您可能感兴趣的另一个安装复选框。
看https://wiki.archlinux.org/index.php/security对于一般安全信息,“强化 Arch Linux 系统的建议和最佳实践”,几乎适用于所有 Linux,包括 Ubuntu。