基本上我在安装时没有加密我的 Linux (Debian) 分区。
但是,我找到了办法至少加密主文件夹,这样理论上我可以把我想确保在我的计算机被盗等情况下无法访问的所有内容放在那里。
但是,某些文件夹(/etc、/bin、/var、..)肯定无法移至主文件夹来加密它们。考虑到我的用户(!=“root”)我拥有 root 访问权限(但是输入每个 su(do) 的密码后),我正在考虑限制访问敏感的文件/文件夹的方法是只允许我的主用户(即使没有 su(do))在登录 KDE 后访问它们,同时确保系统的其他部分不会被破坏。
是否可以?(也许哪个chmodETC)
阿洛斯,我不确定“默认情况下”哪些文件夹应该包含应用程序数据和其他敏感信息?
答案1
权限仅防止系统的其他用户通过正常软件方式访问系统。它们对于有权访问硬件的人来说完全没有用,只有加密才能防止这种情况。设置权限就像在信封上写上“秘密”;如果操作系统是唯一操纵信封的实体,则该方法有效,但如果攻击者窃取了信封,则该方法无效。
敏感文件可能最终存放的地方主要包括:
- 交换区;
/tmp
(如果它不在 RAM 中);/var/tmp
(但很少有程序在那里写);- 电子邮件和打印机(可能还有其他)线轴位于
/var/spool
; - 可能包含一些信息
/etc
,例如 Wifi 密码。
很难确保覆盖所有敏感文件;为了安全起见,您需要加密所有/var
.此外,没有简单的方法(甚至也没有稍微高级的方法)将系统文件放在 ecryptfs 下:ecryptfs 从根本上面向加密单个用户的文件。虽然这在数学上不是不可能的,但我不建议尝试它,除非你知道它坏了时该怎么做(而且它会坏);这是“如果你需要问那就不要做”的事情之一。我我不会这样做,我会加密整个系统。
您可以在安装后对系统进行加密,但这并不容易。基本思想是从救援介质启动,缩小现有分区以使其小于整个磁盘,将其移至磁盘末尾,在磁盘现在空闲的开头创建一个加密容器,在其上创建一个 LVM 卷,创建文件系统,从明文区域移动文件,将明文卷调整为较小的大小(~200 MB),移动/boot
到明文卷,将加密容器和 LVM 卷扩展到整个磁盘,再次腾出一些交换空间,扩大文件系统,挂载明文卷/boot
,重新安装Grub并重新生成initramfs。 (我希望我没有忘记任何事情......)
如果您担心家外的敏感文件,重新安装可能会更容易。
一个更简单的妥协是制作/home
一个加密卷,而不是将您的主目录加密为目录树。 (这也可能会稍微提高性能。)基本思想是:
- 从救援媒体启动。
- 缩小现有文件系统并包含分区 (
ext2resize
,parted
)。 - 在释放的空间 (
cryptsetup
) 中创建 dmcrypt 卷。 - 在 dmcrypt 卷上创建两个 LVM 卷 (
pvcreate
,vgcreate
,lvcreate
× 2),一个用于交换 (mkswap
),另一个用于/home
(mkfs
)。 - 安装卷
/home
并移动/home
到那里。 - 更新
/etc/fstab
和/etc/crypttab
. - 现在您可以将其他敏感目录(例如打印机假脱机)移至
/home
,并创建符号链接来跟踪它们。 - 为了保护您刚刚删除的敏感文件,擦除纯文本卷上的可用空间。