一个应该如何在OpenBSD上设置全盘加密?


19

dm-cryptLinux 下类似,有没有在OpenBSD下设置全盘加密的首选方法?

我正在寻找全盘加密,就好像有人要窃取我的笔记本一样,他们可能会访问存储在其中的数据。另一个原因是我并不总是在笔记本旁边,因此有人可能会损害我的上网本的完整性。这是两个使我相信全盘加密对我很重要的主要问题。


您有两个完全不相关的问题。由于我已经回答了一个问题,但没人回答过,因此我从您的问题中删除了有关Chrome的部分。随时发布有关在OpenBSD上运行Chrome的新问题。
吉尔(Gilles)“所以,别再邪恶了”,


OpenBSD 5.3开始,可以使用全盘加密!> softraid(4)RAID1和加密卷现在可以在i386和> amd64(全盘加密)上启动。因此,除了引导加载程序之外,所有内容都会得到保护。:)
evachristine

Answers:


15

OpenBSD 5.3开始, OpenBSD就支持全盘加密。早期版本需要明文启动分区。我不知道何时修改安装程序以支持直接安装到加密分区(引导加载程序当然仍未加密,因为某些东西必须解密下一位)。

无论如何,对系统分区进行加密几乎没有用¹。因此,我建议正常安装系统,然后创建一个加密的文件系统映像,然后将您的敏感数据(的/home一部分/var,也许有几个文件放在其中/etc)。

如果您仍然想对系统分区进行加密(因为您有一些特殊的用例,例如某些机密软件),而您最初并没有安装加密的系统,则可以按照以下方法进行操作。

引导到您的OpenBSD安装中,并创建一个包含加密文件系统映像的文件。请确保选择合理的尺寸,因为以后很难更改(您可以创建其他图像,但是必须为每个图像分别输入密码)。该vnconfig男子页都有例子(虽然他们错过了几步)。简而言之:

dd if=/dev/urandom of=/ENCRYPTED.img bs=1m count=4096
vnconfig -k svnd0 /ENCRYPTED.img  # type your passphrase
{ echo a a; echo w; echo q; } | disklabel -E /svnd0  # create a single slice
newfs /dev/svnd0a
mount /dev/svnd0a /mnt
mv /home/* /mnt
umount /mnt
umount /dev/svnd0c

将相应的条目添加到/etc/fstab

 /ENCRYPTED.img  /dev/svnd0c  vnd rw,noauto,-k
 /dev/svnd0a     /home        ffs rw,noauto

在启动时添加命令以将加密的卷及其中的文件系统挂载到/etc/rc.local

echo "Mounting encrypted volumes:"
mount /dev/svnd0c
fsck -p /dev/svnd0a
mount /home

通过运行以下命令(mount /dev/svnd0c && mount /home),检查一切是否正常。

请注意,这rc.local是在引导过程的后期执行的,因此您不能将标准服务(例如ssh或sendmail)使用的文件放在加密卷上。如果要执行此操作,请将这些命令放在/etc/rc后面mount -a。然后,移动您认为敏感的文件系统部分,然后将其移动到/home卷中。

mkdir /home/etc /home/var
mv /etc/ssh /home/etc
ln -s ../home/etc/ssh /home/etc
mv /var/mail /var/spool /home/var
ln -s ../home/var/mail ../home/var/spool /var

您也应该加密交换,但是OpenBSD现在可以自动进行加密。

获取加密文件系统的较新方法是通过软件RAID驱动程序 softraid。有关更多信息,请参见softraidbioctl手册页或Lykle de Vries的OpenBSD加密NAS HOWTO。OpenBSD的最新版本支持从softraid卷启动并通过在安装过程中放置​​在shell中以创建卷来安装到softraid卷。

¹ 据我所知,OpenBSD的卷加密是受保密保护的(使用Blowfish),而不是完整性。保护操作系统的完整性很重要,但是不需要保密。也有一些方法可以保护OS的完整性,但是这些方法超出了此答案的范围。


您能否澄清“保护操作系统的完整性很重要,但无需保密”的说法?您是说OpenBSD的卷加密只是营销头,还是不重要的事情?

有关完整性的更多信息:unix.stackexchange.com/questions/9998/…– 2011

3
@hhh:OpenBSD的加密提供了机密性。这对于您自己的数据很重要,对于任何人都可以下载的OS文件而言并不重要。(即,卷加密很重要,但不是全部内容。)完整性是防范有人秘密地更改您的数据,或更糟的是,如果他们可以物理访问您的磁盘,则安装恶意软件-这是一种邪恶的女仆攻击。邪恶的女仆攻击很难防御(我不知道OpenBSD必须提供什么),但是也很难执行。
吉尔(Gilles)“所以,别再邪恶了”,

这个答案不再正确,因为从一开始,就可以在OpenBSD 5.7和更早的版本上在加密分区中安装OS
Freedo 2015年

@Freedom我更新了答案以提及这种可能性。显然从5.3开始就有可能,当我编写此答案时还不存在。
吉尔(Gilles)'所以

3

OBSD设计人员打算将具有CRYPTO学科的Softraid用于支持全磁盘加密。SVND也有另一种方法,现在已弃用。


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.