为什么我们要加密系统分区而不仅仅是/home?

为什么我们要加密系统分区而不仅仅是/home?

我目前正在一台新的台式计算机上安装 Debian 发行版,并且正在寻找两种制作分区表的方法(在性能和安全性方面)的优缺点参数。我的新电脑有 16GB RAM 和 500GB SSD(这对于规格来说应该足够了)。

首先,我有一个先决条件,那就是加密工作文件。所以,我的第一选择是:

#1    800 MB    EFI
#2    300 MB    ext4    /boot
#3    ..all..   crypto  (sda3_crypt)

LVM Encrypted (sda3_crypt)
#1     10 GB    swap
#2     80 GB    ext4   /
#3   ...all..   ext4   /home

我们需要对其进行加密swap,以确保在使用它时不会泄漏任何加密数据。事实上,这是由 Debian 安装程序强制执行的。

但是,然后,我假设系统本身可能未加密(我对到处加密都不太满意,甚至在我的办公桌上......)。毕竟只是/home有趣而已。

因此,另一种选择(目前我最喜欢的一种)是让系统不加密(仅/home是)。我想这可能会增加一些安全问题,但我还没有看到任何问题,我想这会提高效率。第二种方法应该如下所示:

#1    800 MB    EFI
#2     80 GB    ext4    /
#3    ..all..   crypto  (sda3_crypt)

LVM Encrypted (sda3_crypt)
#1     10 GB    swap
#2   ...all..   ext4   /home

那么,我是否错过了安全方面的事情?知道对手模型应该是“邪恶女仆' 可能能够物理访问机器并可能在机器仍处于打开状态时窃取它。

如果我考虑第二种方法,我会面临什么样的安全漏洞?

最后,我将确保我已经在 RAM 上设置了/tmp挂载通道。tmpfs防止对系统未加密部分进行任何关键写入。

答案1

您的第一种方法似乎是加密除 /boot 之外的所有内容;您的第二种方法仅加密交换和主页。

我建议加密所有内容。我相信 Debian 甚至可以处理现在加密的 /boot(grub 提示输入密码)。

加密所有内容有几个很大的优点:

安全。数据很容易意外泄漏到外部/home。你想到了/tmp;还有/var/tmp。而且,根据您使用的程序,每个程序都有自己的位置/var- 例如,您将一些数据放入 MySQL,哎呀,那是/var/lib/mysql.您还记得邮寄/var/mail/var/spool/exim吗?或打印后台打印/var/spool/cups(如果您使用 CUPS;在其他地方使用其他打印系统)?或者/var/log很容易包含敏感数据。加密所有内容,这种情况就不会发生。

灵活性。拆分它迫使您选择分配多少空间//home..如果你犯了这个错误,那么改变它就会很困难。对于 LVM 内的所有内容,更改起来要容易得多(并且使用一个文件系统,您甚至不必决定拆分)。

缺点。加密系统会慢一点,但我怀疑它在过去十年生产的 PC 上是否会被注意到。

顺便说一句:对于你的邪恶女仆攻击,你需要确保当你不在时机器始终处于锁定状态,并采取措施锁定启动顺序(例如,固件/BIOS 密码和 grub 密码),打开物理篡改指示器在这种情况下,以某种方式阻止添加硬件键盘记录器(或更换键盘)等。这是一个很难防范的情况。

相关内容