Linux 中的全盘加密和无密码身份验证

Linux 中的全盘加密和无密码身份验证

我在 Debian 5.0.5 中有一个相当标准的磁盘加密设置:未加密的/boot分区,以及sdaX_crypt包含所有其他分区的加密分区。

现在,这是一个无头服务器安装,我希望能够在没有键盘的情况下启动它(现在我只能在连接键盘和显示器的情况下启动它)。

到目前为止,我有一个想法,将分区移动到 USB 驱动器,并稍加修改以自动输入密钥(我认为只是在启动脚本中的某处/boot调用)。askpass这样我就可以无头启动,只需要在启动时插入闪存驱动器即可。

在我看来,它的问题在于

  1. 我需要投入时间来弄清楚所有的细节才能使其发挥作用,
  2. 如果有更新,需要重新生成initrd,我需要重新生成USB上的启动分区,这看起来很乏味。

问题:是否有一个标准的低维护解决方案可用于我想做的事情?或者我应该完全寻找其他地方?

答案1

您可以将系统设置为需要密钥而不是密码,并更改一些脚本以在 USB 记忆棒上搜索此密钥。我找到了一个详细解释Debian Lenny 上的此过程。最后有一些注释描述了新版本 Debian 的必要更改。

答案2

但是,如果您只是将密钥以明文形式保留,那么进行全盘加密还有什么意义呢?

为了实现这一点,你需要类似于可信计算平台的东西,然后微软和大媒体为了他们自己邪恶的用户压制目的而劫持了它。

这个想法是让一个芯片在主板上保存密钥,并且只有在验证运行的软件是由受信任的权威机构(您)正确签名时才提供密钥。这样您就不会将按键放在显眼的地方,也不必以交互方式启动服务器。

遗憾的是我从未见过可信计算应用于任何很好用,这实际上可能是对最终用户有用

答案3

曼多斯(我和其他人写的)解决了这个问题:

Mandos 是一个允许具有加密根文件系统的服务器在无人值守和/或远程情况下重新启动的系统。看介绍手册页了解更多信息,包括常见问题解答列表。

简而言之,启动服务器以安全的方式通过网络获取密码。有关详细信息,请参阅自述文件。

相关内容