FreeBSD + ZFS +加密?备择方案?有什么建议吗?


8

我想创建一个专用的物理服务器,该服务器可以用作我的局域网内(以及通过VPN)的NAS和文件服务器。

但是,我需要完全加密驱动器(系统驱动器和数据驱动器,因为我认为我将使用两个zpool)。由于FreeBSD支持的版本28(以及OpenIndiana,Nexenta等)不支持ZFS加密,因此唯一的可能性似乎是使用GELI。

现在,我正在考虑在ZFS之上添加GELI层是否会导致数据丢失。互联网上的一些帖子(尽管数量不多)似乎指出了这个问题。特别是,考虑到RAID(Z)和校验和的集成,ZFS似乎比Unix / Linux世界中的任何其他文件系统(例如ext4,xfs和btrfs)都要优越得多。

现在,在我之上添加GELI就像在RAID设置之上添加LUKS一样,尽管我从未体验过Geli,也不知道它的可靠性。性能不是主要问题,尽管我宁愿在LAN上不进行1MB / s的传输(但可以接受> 20MB / s的速度)。

我从来没有走过Linux的世界,所以我没有FreeBSD或Solaris衍生产品的经验。由于付费(昂贵)支持问题,我宁愿不使用Solaris Express 11。这将是一台在家中的计算机。如有必要,我会愿意学习。
服务器将需要执行基本的NAS任务(特别是samba / cifs文件共享,我不需要与更新的ZFS版本集成的任务)。

在考虑了加密层之后,GELI + ZFS是否会比LUKS + LVM + ext4更加可靠?我在另一篇有关超级用户的文章中问,由于ZFS,他们建议使用FreeBSD / Solaris,尽管我们没有谈论加密。不知道OpenIndiana等是否支持像LUKS或GELI这样的块加密方法。

此外,像在Linux中一样(例如在此处),将磁盘添加到阵列,扩展RAID(Z)和文件系统是否容易?

Answers:


1

您应该能够使用geom提供程序之一对ZFS进行加密,但是应该对ZFS下面的设备进行加密。我可能会设置geli,然后在freebsd-zfs类型的内部创建一个gpt分区,然后从那里开始。

我建议您实际测试这两种解决方案(freebsd和linux),并根据对您有意义的sys admin时间和性能进行决定。


从管理员的角度来看,现在肯定是适合我的Linux LUKS + LVM + RAID。也许最后我会按照您的建议做一个Virtualbox来尝试一下。我是一个真正的FreeBSD新手,因此对我来说管理起来非常困难(至少一开始)。我要寻找的是可靠性(而不是性能)。它必须是NAS,但我不希望出现诸如使1Gbps链路饱和的出色性能。媒体文件也将在另一台服务器上。但是我已经有一堆Linux机器(主要是Debian GNU / Linux 64位),它们分别执行任务。
user51166

只是想要某种操作系统的“冗余”,某种意义上说,由于更新做得很糟糕,我应该会遇到问题,但是我仍然会拥有很大一部分数据。由于我也在计划备份服务器,因此最好将Linux与NAS一起使用,将FreeBSD / Solaris与Backup服务器一起使用。但是,无论是NAS还是备份服务器,我都希望将数据存储在该计算机上,而不是使用Linux且使用ZFS加密的OS。
user51166

1

Solaris 11支持ZFS中的本机加密。如果您不依赖BSD,则需要考虑一下。它可免费用于非生产用途,因此您无需购买支持许可证即可在家中使用它。

要增加池,您将需要添加更多的vdev,您不能通过向其中添加更多磁盘来增加单个raidz或其他vdev类型。但是,一旦开始添加更多的vdev,ZFS将在它们之间对数据进行条带化,您将获得一些额外的性能。


感谢您的回答。我与BSD无关(实际上从未使用过)。只是如果我对Solaris 11有问题,我每年必须购买超过1000美元的支持。此外,我认为您指的是Solaris 11 Express。我是学生,我没有那么多钱。
user51166

1
它不再是Solaris Express,在11发行之后,它现在只是所有Solaris 11。如果您在FreeBSD或Linux上遇到麻烦,您是否会得到帮助,我不会担心支持合同。同样的情况适用于Solaris。
布伦南

1
使用Linux和FreeBSD,我可以在这里或在论坛中获得帮助。对于Solaris 11,我应该联系Oracle并向其付款(或者无论如何,这就是人们在Internet上所说的话)。还是在Solaris中有社区(免费)支持?
user51166

1

我认为您不必过分担心数据丢失。FreeBSD上的Geli很成熟,以我的经验来说是防弹的。格力第一,则ZFS 在上面。然后,您可以使用zpool以所需的任何配置(单个驱动器,镜像,RAID-Z等)构建池。

我自己的经验:

我有一台具有类似设置的FreeBSD 9家用服务器-两个驱动器,每个驱动器一个zpool。这是ZFS根目录设置-没有UFS。一个驱动器是系统,另一个驱动器是数据。数据驱动器具有全盘加密功能,而系统驱动器则没有(尽管我相信没有理由不能这样做-我只是想避免其他麻烦)。

我使用geli加密裸机数据驱动器。ZFS(严格来说,zpool)就像其他任何块设备一样看到这种情况,您只需以正常方式调用“ zpool create ...”,然后就可以根据需要在池上创建zfs数据集。

在我的用例中,性能并不是问题。我的4GB Atom D520运转良好。可能不是闪电般快(磁盘仅5200rpm 2.5“,用于低功耗/低噪音),但对于家庭网络服务来说却不错。

这种设置已经运行了好几年了。


1

如果您在ZFS上放弃了LUKS或Geli之类的全盘加密(FDE),则不会充分利用ZFS的功能集。但是,如果将ZFS放在FDE上,它将起作用。

我最近一直在听FreeBSD ZFS专家的讨论,他们建议在ZFS上使用PEFS,因为这使ZFS仍然可以查看单个文件。将来可能会将可配置为文件夹和文件的PEFS进行配置并捆绑在FreeBSD ZFS库中。

尽管有密码学专家建议我们不要依赖全盘加密,但我认为在FreeBSD或Linux上,链接不同的加密策略可能是一种合理的策略。

例如:原始磁盘-> FDE(Geli / LUKS)-> ZFS->(对于/ home)使用PEFS或EncFS的用户区加密。使用这种模型,如果全盘加密遭到破坏,并且据我所知,如果有人有足够的资源和动力,它并不是那么困难,那么您仍将拥有PEFS / EncFS保护您最重要的文件,这将变得更加困难。裂纹。

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.