• Ars论坛更新现在这里!

    如果你发现一个错误,有一个建议,或与新功能需要一些帮助我们介绍,看看下面的线程。
    请注意,搜索暂时不会工作当我们完成升级。

    线程视图
  • 登录有问题?

    一些密码是我们新的论坛软件不兼容。如果你很难登录,尝试重置你的密码。

    重置你的密码

一个快速启动指南OpenZFS本机加密

D

Drizzt321

Ars Legatus Legionis
25148年
Subscriptor + +
    嗯…有什么方法可以同步/使用登录密码/密码自动挂载/负载的关键吗?如,如果我做用户加密的主目录,使用用户密码加密,它可以自动安装/卸载当用户第一次登录时,然后最后一次用户登出?虽然东西像屏幕更复杂,系统需要确保所有用户进程的触摸加密数据集在卸载之前的关键。人力资源管理。听起来会是一个艰难的事情。

    我猜一个用户(我想更多的个人笔记本电脑和Linux / * BSD ZFS)基地home-dir是未加密的,但所有的sub-dirs加密的数据集的一部分,然后,在第一个界面登录,提示输入密码来加载密钥。
    Upvote
    6(8/2)
    D

    Drizzt321

    Ars Legatus Legionis
    25148年
    Subscriptor + +
      有一个简单的方法来确定在使用加密算法实际上是什么?我看到唯一相关的特性是“加密”,这对于我来说是“上”。我很好奇什么样的算法实际上是被使用(无论是CCM或GCM),但我没有看到任何方式要求?

      https://zfsonlinux.org/manpages/0.8.6/man8/zfs.8.html

      代码:
      加密= | | aes - 128 - ccm | aes - 192 - ccm | aes - 256 - ccm | aes - 128 gcm | aes - 192 gcm | aes - 256 gcm控制加密密码套件(分组密码、密钥长度和模式)用于此数据集。需要启用加密功能池。需要keyformat被设置在创建数据集时。选择加密=当创建一个数据集显示默认加密套件将被选中,目前aes - 256 gcm为了提供一致的数据保护,加密必须指定在创建数据集时,它不能改变。关于加密的更多细节和注意事项请参见加密部分。

      编辑:链接到最新的从版本更新,我与一个过时的旧版本。
      Upvote
      6(8/2)
      有一个简单的方法来确定在使用加密算法实际上是什么?我看到唯一相关的特性是“加密”,这对于我来说是“上”。我很好奇什么样的算法实际上是被使用(无论是CCM或GCM),但我没有看到任何方式要求?
      像这样:
      zfs得到加密YourPool / YourDataset美元
      名称属性值来源
      YourPool / YourDataset加密aes - 256 - gcm -
      Upvote
      16(16/0)
      D

      Drizzt321

      Ars Legatus Legionis
      25148年
      Subscriptor + +
        有一个简单的方法来确定在使用加密算法实际上是什么?我看到唯一相关的特性是“加密”,这对于我来说是“上”。我很好奇什么样的算法实际上是被使用(无论是CCM或GCM),但我没有看到任何方式要求?
        像这样:
        zfs得到加密YourPool / YourDataset美元
        名称属性值来源
        YourPool / YourDataset加密aes - 256 - gcm -

        malor的问题是当该值为“on”,它是什么算法。根据这篇文章,有两种不同的默认值,这取决于你使用ZFS的版本。基本上任何在过去一年左右的时间里,用GCM。

        上面@malor,对不起,我的链接是一个旧版本的手册页,对不起,本文根据gcm, > = 0.8.4以来,与当前被0.8.6 ZoL版本。我将更新我的评论。
        Upvote
        3(5/2)
        malor

        malor

        Ars Legatus Legionis
        10811年
        Subscriptor
          非常好的那样;我推测性能很好任何CPU实现AES-NI(或枚),但你知道性能影响有多大J1800之类的吗?我知道他们老了,但是仍然有很多人跑来跑去在嵌入式/工业/无风扇的底盘。

          根据我的经验,你做的事情想要运行没有AESNI ZFS加密在电脑上。他们改进了软件模式,但它仍然非常缓慢。AESNI,它运行在磁盘速度差不多。不,它是一个烂摊子。

          我最初尝试加密在旧i7 - 920,这是古老的,但仍然相当性能。ZFS硬件加密是灾难性的坏。系统不能有效地使用下一个沉重的写负载。交换到4790 k立即固定它。

          软件改进添加了因为我的实验,但我们有一个最近的海报在Ars论坛试图使用ARM二进制文件,没有使用他们的硬件加速,对他们来说,这是一个灾难。

          编辑:如果你没有太多的卷,就像文章说的那样,您可以使用——加密,很快在任何硬件。但是你可能需要脚本解锁过程,每个磁盘,除非你想输入一个密码。我同样的脚本ZFS键加载和安装,所以你可能没有真正失去什么。

          这可能有点不可靠,但AFAIK陆很瘦层,所以它可能会反应相当于把ZFS体积直接在金属上。
          Upvote
          22(22/0)

          MMarsh

          Ars Tribunus Militum
          2963年
          Subscriptor
            非常好的那样;我推测性能很好任何CPU实现AES-NI(或枚),但你知道性能影响有多大J1800之类的吗?我知道他们老了,但是仍然有很多人跑来跑去在嵌入式/工业/无风扇的底盘。

            根据我的经验,你做的事情想要运行没有AESNI ZFS加密在电脑上。他们改进了软件模式,但它仍然非常缓慢。AESNI,它运行在磁盘速度差不多。不,它是一个烂摊子。

            我最初尝试加密在旧i7 - 920,这是古老的,但仍然相当性能。ZFS硬件加密是灾难性的坏。系统不能有效地使用下一个沉重的写负载。交换到4790 k立即固定它。

            软件改进添加了因为我的实验,但我们有一个最近的海报在Ars论坛试图使用ARM二进制文件,没有使用他们的硬件加速,对他们来说,这是一个灾难。

            编辑:如果你没有太多的卷,就像文章说的那样,您可以使用——加密,很快在任何硬件。但是你可能需要脚本解锁过程,每个磁盘,除非你想输入一个密码。我同样的脚本ZFS键加载和安装,所以你可能没有真正失去什么。

            这可能有点不可靠,但AFAIK陆很瘦层,所以它可能会反应相当于把ZFS体积直接在金属上。
            的想法把* * ZFS和磁盘之间的任何东西,无论多么轻量级,令我感到恐惧。
            即使在这个硅短缺的时代,我觉得如果你要通过努力来配置和部署加密ZFS,它真的是* *容易证明交换的CPU支持AES-NI(和一个新的MB,如果需要的话)。如果没有其他原因比一些信心,它不会死于年老一旦你开始使用它,)
            Upvote
            17(18/1)
            吉姆·索尔特

            吉姆·索尔特

            Ars Legatus Legionis
            14872年
            Subscriptor + +
              有一个简单的方法来确定在使用加密算法实际上是什么?我看到唯一相关的特性是“加密”,这对于我来说是“上”。我很好奇什么样的算法实际上是被使用(无论是CCM或GCM),但我没有看到任何方式要求?

              在文章中提到的,它将aes - 256 - ccm或aes - 256 gcm根据OpenZFS版本创建的数据集。

              是的,那很糟糕;是的,它应该显示的文字值,而不仅仅是最初设置为某些“默认”。我们ashift值具有相同的问题,只是显示为“0”,如果ashift不是手动使用zpool创建时指定。叹息。


              编辑:zfs得到加密将向您展示的具体算法用于加密数据集或zvol,即使你没有手动指定当你创建它。但一定要使用zfs得到,而不是zpool得到……
              Upvote
              8(8/0)
              malor

              malor

              Ars Legatus Legionis
              10811年
              Subscriptor
                实际的问题是,我试图读取加密池,而不是根文件系统:

                代码:
                zpool得到feature@encryption(体积)名称属性值来源(体积)feature@encryption活跃的地方

                …这不是我想要的。

                然后我做了大量的恶搞试图找到正确的查询字符串,假设它一定feature@墙后面的某个地方。没有找到任何东西。做了一系列的网络搜索,没有发现任何显式的。然后我问,:

                代码:
                zfs得到加密(体积)/(文件集)名称属性值来源(体积)/(文件集)加密aes - 256 - gcm -

                瞧,我正在寻找什么。我在错误的地方,错误的语法。zpool feature@encryption是一件事,但显然它只是直接“加密”的文件集。

                编辑:注意,我可能会直接算法而不是使用“上”。我花了几天时间研究ZFS和预构建文件系统创建线。
                Upvote
                5(5/0)
                吉姆·索尔特

                吉姆·索尔特

                Ars Legatus Legionis
                14872年
                Subscriptor + +
                  实际的问题是,我试图读取加密池,而不是根文件系统:

                  代码:
                  zpool得到feature@encryption(体积)名称属性值来源(体积)feature@encryption活跃的地方

                  …这不是我想要的。

                  然后我做了大量的恶搞试图找到正确的查询字符串,假设它一定feature@墙后面的某个地方。没有找到任何东西。做了一系列的网络搜索,没有发现任何显式的。然后我问,:

                  代码:
                  zfs得到加密(体积)/(文件集)名称属性值来源(体积)/(文件集)加密aes - 256 - gcm -

                  瞧,我正在寻找什么。我在错误的地方,错误的语法。zpool feature@encryption是一件事,但显然它只是直接“加密”的文件集。

                  啊哈,好吧。是的,“zpool得到”让你知道你的池支持加密,也在这种情况下,功能活跃的在这池……在某处。但它真的只是检查看看您的池支持该功能,没有任何细节关于你使用的特性。

                  zfs得到的回报zfs特定数据集或zvol本身的属性,这是你想要的(应用于数据集或zvol你好奇的)。

                  编辑:注意,我可能会直接算法而不是使用“上”。我花了几天时间研究ZFS和预构建文件系统创建线。

                  实际上看起来这不是ashift再次惨败后;我绝对没有手动设置的算法在本文例子,但我看到自己的“zfs得到加密”自己的文章表明你获得实际的算法,不仅。

                  或许下次我会RTFA……
                  Upvote
                  16(16/0)
                  D

                  deviantintegral

                  Smack-Fu大师,在训练
                  50
                  Subscriptor + +
                    有一点要注意的是,不幸的是,远程SSH解锁zfs的数据集在引导只是openzfs的2.0或更高版本。最初的公关是在:https://github.com/openzfs/zfs/pull/10027

                    然而,这仍然可以设置为年长的zfs释放!对于我的Ubuntu 20.04 NAS,我最终提取openzfs 2.0的debian软件包(但不安装它!)和复制相关的文件从/usr/share/initramfs-tools /etc/initramfs-tools /etc/dropbear-initramfs /添加我的钥匙,重建initramfs。现在,我可以打开我的NAS无需诉诸把u盘或类似的密钥文件。

                    一边好处是,我目前有两个池;SSD引导池的操作系统和应用程序,并为散装储存锈池。我把进行加密的密钥文件根池,所以很容易添加一个额外的调用导入池和运行“zfs装载键——”后立即解锁根池。

                    我很高兴我走这种方式而不是运行补丁2.0得到解锁的功能。我的主机上运行的码头工人,https://github.com/openzfs/zfs/issues/11480当然是我看过的最惊心动魄的文件系统的一个问题影响生产系统在很长一段时间。
                    Upvote
                    6(7/1)
                    实际的问题是,我试图读取加密池,而不是根文件系统:

                    代码:
                    zpool得到feature@encryption(体积)名称属性值来源(体积)feature@encryption活跃的地方

                    …这不是我想要的。

                    然后我做了大量的恶搞试图找到正确的查询字符串,假设它一定feature@墙后面的某个地方。没有找到任何东西。做了一系列的网络搜索,没有发现任何显式的。然后我问,:

                    代码:
                    zfs得到加密(体积)/(文件集)名称属性值来源(体积)/(文件集)加密aes - 256 - gcm -

                    瞧,我正在寻找什么。我在错误的地方,错误的语法。zpool feature@encryption是一件事,但显然它只是直接“加密”的文件集。
                    很高兴我能帮助!:)

                    此外,你可以得到一个所有属性列表和他们的设置:
                    zfs得到所有(体积)/(文件集)
                    Upvote
                    2(2/0)
                    D

                    Drizzt321

                    Ars Legatus Legionis
                    25148年
                    Subscriptor + +
                      我明天驱动器出现扩大TrueNAS盒子。看来我可能是这次调查加密驱动器。

                      即使有一个速度达到只要它仍然不够快流BluRay备份使用丛对我很好。

                      如果你在谈论与AES-NI CPU,就好了。如果它没有AES-NI……它可能不是足够强大。你会发现,很明显。
                      Upvote
                      0(0/0)

                      sPOiDar

                      聪明,Ars岁老兵
                      165年
                        “不幸的是,你无法轻易从交互式提示切换到一个密钥文件创建数据集或zvol之后”

                        这一切似乎并未正确,根据手册页(实际上这篇文章后面的部分,是指改变键):

                        zfs”: 2 ak3px67说:
                        虽然加密套件在数据集创建之后不能更改,keylocation可以zfs zfs设置或改变键。
                        Upvote
                        5(5/0)

                        sPOiDar

                        聪明,Ars岁老兵
                        165年
                          嗯…有什么方法可以同步/使用登录密码/密码自动挂载/负载的关键吗?如,如果我做用户加密的主目录,使用用户密码加密,它可以自动安装/卸载当用户第一次登录时,然后最后一次用户登出?虽然东西像屏幕更复杂,系统需要确保所有用户进程的触摸加密数据集在卸载之前的关键。人力资源管理。听起来会是一个艰难的事情。

                          我猜一个用户(我想更多的个人笔记本电脑和Linux / * BSD ZFS)基地home-dir是未加密的,但所有的sub-dirs加密的数据集的一部分,然后,在第一个界面登录,提示输入密码来加载密钥。
                          在Linux上,可以编写pam模块来处理。
                          Upvote
                          0(1/1)
                          K

                          kaworu1986

                          Ars禁卫队的
                          592年
                            我是论坛海报在ZFS加密的性能感到失望的手臂:原来这是因为OpenZFS从未支持硬件加密的手臂。

                            我已经开始了与开发者讨论甚至试图实现自己,但我不是一个专家的Linux内部/内核模块和组装,我挣扎。

                            如果有人感兴趣,欢迎加入讨论:帮助:)
                            Upvote
                            13(13/0)
                            N

                            NewCrow

                            Ars禁卫队的
                            514年
                              很好的介绍。

                              提示:当加密子数据集由sanoid / syncoid复制,复制的数据集失去继承加密参数目标(例如,变成“提示”而不是keylocation路径)。当使用原始发送。这可以固定解锁后孩子和家长在目标和使用“zfs改变键-我…”。

                              同时,加密性能基准。
                              我写了一个bash脚本基于吉姆的fio文章从一年左右的时间,尝试了不同的算法和recordsize组合,用于覆盆子πUSB3硬盘驱动器。我的结论是,512 kB recordsizes recordsizes表现好于1米,和CCM优于GCM(很明显,在我的例子中,所以YMMV)。

                              (编辑:512 kB recordsizes表现好于1 MB recordsizes当fio用大块写道,尽管“传统智慧”1 MB recordsizes应该是更好的在这种情况下。我不知道这是有关USB硬盘性能或覆盆子本身,但由于组合是我作为一个离线备份方法,我不在乎为什么。)
                              Upvote
                              4(4/0)
                              l

                              Landak

                              Ars百夫长
                              213年
                              Subscriptor + +
                                有一件事我希望ZFS开发可否认的加密。在许多国家,如英国,拥有加密数据,你不能解密在对政府的需求犯罪处以两年或五年的监禁。完全假设合理,如ZFS共享服务器上的人不可能拥有一个加密密钥为给定zvol但ZFS的存在元数据足以证明它的存在。

                                我意识到跑步ZFS陆会绕过这个限制(欺骗)但它似乎很奇怪,ZFS本身没有命令行选项隐藏的元数据。
                                Upvote
                                9(9/0)

                                sir_trackmenot

                                Ars Scholae Palatinae
                                614年
                                  有一件事我希望ZFS开发可否认的加密。在许多国家,如英国,拥有加密数据,你不能解密在对政府的需求犯罪处以两年或五年的监禁。完全假设合理,如ZFS共享服务器上的人不可能拥有一个加密密钥为给定zvol但ZFS的存在元数据足以证明它的存在。

                                  我意识到跑步ZFS陆会绕过这个限制(欺骗)但它似乎很奇怪,ZFS本身没有命令行选项隐藏的元数据。

                                  我坚持跑步GELI在ZFS,因为升级从很久以前当这是唯一的选择,但即使是磁盘上的一个头:(我希望ZFS / FreeBSD提供一种方法来迁移到位,但生活就是这样。池升级很快,修复它。

                                  解决法律难题你描述是知道是谁控制的数据服务器上,这样你就可以只老鼠出来。理想你集会当地议员和说服他们,这种狗屎法律是屎但他们似乎只服从TLASOUP主人这些天对此类事项。
                                  Upvote
                                  6(6/0)

                                  sir_trackmenot

                                  Ars Scholae Palatinae
                                  614年
                                    我明天驱动器出现扩大TrueNAS盒子。看来我可能是这次调查加密驱动器。

                                    即使有一个速度达到只要它仍然不够快流BluRay备份使用丛对我很好。

                                    如果你在谈论与AES-NI CPU,就好了。如果它没有AES-NI……它可能不是足够强大。你会发现,很明显。

                                    我毫无价值的旧芹菜1610没有AES很好工作了。没有带宽自动译码系统,但它可以很容易地发展速度甚至比最高的比特率bluray撕裂。
                                    Upvote
                                    0(1/1)
                                    Artem s Tashkinov

                                    Artem s Tashkinov

                                    Ars Scholae Palatinae
                                    747年
                                      作为一个友好的提示:

                                      *使用加密只在你完全准备好失去的数据。
                                      *记住你凡人和数据加密可能永远失去了如果有可怕的事情发生在你身上的(尽管死亡还有许多其他的东西可以让你忘记)。
                                      *人忘记密码。

                                      我不是这里的人不愿加密数据,我相信很多人不必要地使用它。
                                      Upvote
                                      2(12/-10年)
                                      好文章!

                                      不过关于这个:
                                      使用提示需要人工手动解锁加密卷。
                                      我知道你的目标是可能让事情变得简单,但我实际使用提示在自动化(不涉及人类)而不是密钥文件,我只是发现它更方便,例如,在macOS你可以做的:

                                      代码:
                                      安全find-generic-password——" ${数据集}" - w | zfs装载键" ${数据集}"

                                      这让我保持密码macOS钥匙扣像我就加密非系统的apf卷,核心存储、磁盘映像等。(对于任何想做同样的事情,记得/usr/bin/security添加到列表的应用程序可以访问您的脚本钥匙扣条目,或者它不会工作)

                                      而密钥文件的安全性可能会如果处理得当,提示让你把密码从任何地方你喜欢非常方便自动化。

                                      我是一个超级粉丝OpenZFS的加密,使事情更简单,zfs将能够发送加密块神奇的备份。

                                      惟一缺少的特性是一个免费的替代我的旧(但仍顽固地在完美的工作秩序)只支持BTRFS Synology NAS;幸运的是它也iSCSI ZFS所以我仍然可以发送到,但这是几乎没有一个理想的方法。
                                      Upvote
                                      4(4/0)

                                      iAPX

                                      Ars Scholae Palatinae
                                      1008年
                                        很好的文章。

                                        旁边使用本机所有优点zfs加密,zfs备份到远程服务器的能力保持在运输途中所有的数据加密,然后在休息(没有任何解密/加密)对我来说是非常令人兴奋的。

                                        自然交通也将加密,但是通过保持数据加密的安全提供了强有力的保证,并将居然简化程序和文书工作!
                                        是的,强大的安全应记录和证明,有很多文书工作对一些正当要求的客户。
                                        Upvote
                                        10(10/0)
                                        E

                                        entropy_wins

                                        Ars Scholae Palatinae
                                        982年
                                        Subscriptor + +
                                          作为一个友好的提示:

                                          *使用加密只在你完全准备好失去的数据。
                                          *记住你凡人和数据加密可能永远失去了如果有可怕的事情发生在你身上的(尽管死亡还有许多其他的东西可以让你忘记)。
                                          *人忘记密码。

                                          我不是这里的人不愿加密数据,我相信很多人不必要地使用它。

                                          加密*一切* * *硬件失败时你可以把没有忧虑。

                                          也经常备份离线资源....

                                          zfs快照大大简化备份/恢复……

                                          年代
                                          Upvote
                                          4(8/4)
                                          malor

                                          malor

                                          Ars Legatus Legionis
                                          10811年
                                          Subscriptor
                                            任何人都知道AES的zfs使用自己的实现,或如果它使用内核的现有一个?因为
                                            遵从性。

                                            ZFS不能使用任何但最基本的内核设施,因为它不是GPL,内核开发者拒之门外几乎所有从non-GPLed代码。

                                            实际上,你有两个代码Linux-ZFS系统堆栈....Linux和ZFS的一面。这可能是为什么ZFS的一部分违背了正常的Linux分层严重;因为它不能使用Linux提供了什么,它重新实现几乎所有的金属向上。它发现并管理自己的磁盘,管理自己的压缩、加密、错误检测、自己的重建,提供自己的名称空间。用户级程序看不出什么不同,他们仍然与磁盘上的文件,但是当他们在ZFS数据集,他们与另一个单独的代码交互。

                                            唯一真正值得注意的问题随之而来,ZFS,默认情况下,抓住一半的系统使用的RAM缓存。它可以缓慢释放系统内存的压力下,这可能导致重大问题。我敢肯定你可以调整内存分配下来,虽然我懒得抬头,作为唯一的系统我目前运行是一个专用的服务器,并将使用一半的内存缓存。
                                            Upvote
                                            9(10/1)
                                            吉姆·索尔特

                                            吉姆·索尔特

                                            Ars Legatus Legionis
                                            14872年
                                            Subscriptor + +
                                              Veracrypt链接在文章中是很古老的,一个网站,进入归档模式,2017年被关闭了6天。甚至有点好奇它怎么溜。https://veracrypt.fr/是准确的链接。

                                              因为其他的链接有更多假若,我之前没有调查更紧密地包裹锚标记(因为我记得被官方网站Veracrypt上次我看着它,TrueCrypt被遗弃后不久)。

                                              固定了。谢谢你的提示!
                                              Upvote
                                              1(3/2)
                                              吉姆·索尔特

                                              吉姆·索尔特

                                              Ars Legatus Legionis
                                              14872年
                                              Subscriptor + +
                                                我敢肯定你可以调整内存分配下来,尽管我懒得抬头

                                                创建一个文件/etc/modprobe.d/zfs.配置和设置选择zfs zfs_arc_max =在字节。

                                                是的,字节。不,它不荣誉或理解单位后缀。是的,这是一个血腥巨大的在服务器1 tib的RAM数量……
                                                Upvote
                                                8(9/1)

                                                sir_trackmenot

                                                Ars Scholae Palatinae
                                                614年
                                                  我敢肯定你可以调整内存分配下来,尽管我懒得抬头

                                                  创建一个文件/etc/modprobe.d/zfs.配置和设置选择zfs zfs_arc_max =在字节。

                                                  是的,字节。不,它不荣誉或理解单位后缀。是的,这是一个血腥巨大的在服务器1 tib的RAM数量……

                                                  * *梦想我们在工作中做一些相当该死的大铁但1 t内存仍然是目前4 x我获得的最大的玩具。
                                                  Upvote
                                                  1(1/0)