使用-Stratis-的网络绑定磁盘加密 (使用后不可退货漫画完整版)

教程大全 2025-07-13 00:13:20 浏览

在一个有许多加密磁盘的环境中,解锁所有的磁盘是一项困难的任务。网络绑定磁盘加密Network bound disk encryption(NBDE)有助于自动解锁 Stratis 卷的过程。这是在大型环境中的一个关键要求。Stratis 2.1 版本增加了对加密的支持,这在《Stratis 加密入门》一文中介绍过。Stratis 2.3 版本最近在使用加密的 Stratis 池时引入了对网络绑定磁盘加密(NBDE)的支持,这是本文的主题。

Stratis 网站将 Stratis 描述为一个“ 易于使用的 Linux 本地存储管理 ”。短视频《使用 Stratis 管理存储》对基础知识进行了快速演示。该视频是在 Red Hat Enterprise Linux 8 系统上录制的,然而,视频中显示的概念也适用于 Fedora Linux 中的 Stratis。

先决条件

本文假设你熟悉 Stratis,也熟悉 Stratis 池加密。如果你不熟悉这些主题,请参考这篇文章和前面提到的Stratis 概述视频。

NBDE 需要 Stratis 2.3 或更高版本。本文中的例子使用的是 Fedora Linux 34 的预发布版本。Fedora Linux 34 的最终版本将包含 Stratis 2.3。

网络绑定磁盘加密(NBDE)概述

加密存储的主要挑战之一是有一个安全的方法在系统重启后再次解锁存储。在大型环境中,手动输入加密口令并不能很好地扩展。NBDE 解决了这一问题,允许以自动方式解锁加密存储。

在更高层次上,NBDE 需要环境中的 Tang 服务器 。客户端系统(使用 Clevis Pin)只要能与 Tang 服务器建立网络连接,就可以自动解密存储。如果网络没有连接到 Tang 服务器,则必须手动解密存储。

这背后的想法是,Tang 服务器只能在内部网络上使用,因此,如果加密设备丢失或被盗,它将不再能够访问内部网络连接到 Tang 服务器,因此不会被自动解密。

关于 Tang 和 Clevis 的更多信息,请参见手册页(、)、Tang 的 GitHub 页面和Clevis 的 GitHub 页面。

设置 Tang 服务器

本例使用另一个 Fedora Linux 系统作为 Tang 服务器,主机名为 tang-server 。首先安装包。

dnf install tang

然后用启用并启动 tangd.socket

systemctl enable tangd.socket --now

Tang 使用的是 TCP 80 端口,所以你也需要在防火墙中打开该端口。

firewall-cmd --add-port=80/tcp --permanentfirewall-cmd --add-port=80/tcp

最后,运行 tang-show-Keys 来显示输出签名密钥指纹。你以后会需要这个。

# tang-show-keysl3fZGUCmnvKQF_OA6VZF9jf8z2s

创建加密的 Stratis 池

第一步是捕获一个将用于解密 Stratis 池的密钥。即使使用 NBDE,也需要设置这个,因为在 NBDE 服务器无法到达的情况下,可以用它来手动解锁池。使用以下命令捕获密钥。

# stratis key set --capture-key pool1keyEnter key># stratis pool create --key-desc pool1key pool1 /dev/vdb。

接下来,在这个 Stratis 池中创建一个名为 filesystem1 的文件系统,创建一个挂载点,挂载文件系统,并在其中创建一个测试文件:

# stratis filesystem create pool1 filesystem1# mkdir /filesystem1# mount /dev/stratis/pool1/filesystem1 /filesystem1# cd /filesystem1# echo "this is a test file" > testfile

将 Stratis 池绑定到 Tang 服务器上

此时,我们已经创建了加密的 Stratis 池,并在池中创建了一个文件系统。下一步是将你的 Stratis 池绑定到刚刚设置的 Tang 服务器上。使用 stratis pool bind nbde 命令进行。

当你进行 Tang 绑定时,需要向该命令传递几个参数:

记得之前在 Tang 服务器上,运行了 tang-show-keys ,显示 Tang 输出的签名密钥指纹是 l3fZGUCmnvKQF_OA6VZF9jf8z2s 。除了前面的参数外,还需要用参数 -thumbprint l3fZGUCmnvKQF_OA6VZF9jf8z2s 传递这个指纹,或者用 -trust-url 参数跳过对指纹的验证。

使用 -thumbprint 参数更安全。例如:

# stratis pool bind nbde pool1 pool1key--thumbprint l3fZGUCmnvKQF_OA6VZF9jf8z2s

用 NBDE 解锁 Stratis 池

接下来重启主机,并验证你可以用 NBDE 解锁 Stratis 池,而不需要使用密钥口令。重启主机后,该池不再可用:

# stratis pool listName Total Physical Properties

要使用 NBDE 解锁池,请运行以下命令:

# stratis pool unlock clevis

注意,你不需要使用密钥口令。这个命令可以在系统启动时自动运行。

此时,Stratis 池已经可以使用了:

# stratis pool listName Total Physical Propertiespool1 4.98 GiB / 583.65 MiB / 4.41 GiB ~Ca, Cr

你可以挂载文件系统,访问之前创建的文件:

# mount /dev/stratis/pool1/filesystem1 /filesystem1/# cat /filesystem1/testfilethis is a test file

轮换 Tang 服务器密钥

最好定期轮换 Tang 服务器密钥,并更新 Stratis 客户服务器以使用新的 Tang 密钥。

要生成新的 Tang 密钥,首先登录到 Tang 服务器,查看 /var/db/tang 目录的当前状态。然后,运行 tang-show-keys 命令:

# ls -al /var/db/tangtotal 8drwx------. 1 tang tang 124 Mar 15 15:51 .drwxr-xr-x. 1 Root root 16 Mar 15 15:48 ..-rw-r--r--. 1 tang tang 361 Mar 15 15:51 hbjJEDXy8G8wynMPqiq8F47nJwo.jwk-rw-r--r--. 1 tang tang 367 Mar 15 15:51 l3fZGUCmnvKQF_OA6VZF9jf8z2s.jwk# tang-show-keysl3fZGUCmnvKQF_OA6VZF9jf8z2s

要生成新的密钥,运行 tangd-keygen 并将其指向 /var/db/tang 目录:

# /usr/libexec/tangd-keygen /var/db/tang

如果你再看看 /var/db/tang 目录,你会看到两个新文件:

# ls -al /var/db/tangtotal 16drwx------. 1 tang tang 248 Mar 22 10:41 .drwxr-xr-x. 1 root root 16 Mar 15 15:48 ..-rw-r--r--. 1 tang tang 361 Mar 15 15:51 hbjJEDXy8G8wynMPqiq8F47nJwo.jwk-rw-r--r--. 1 root root 354 Mar 22 10:41 iyG5HcF01zaPjaGY6L_3WaslJ_E.jwk-rw-r--r--. 1 root root 349 Mar 22 10:41 jHxerkqARY1Ww_H_8YjQVZ5OHao.jwk-rw-r--r--. 1 tang tang 367 Mar 15 15:51 l3fZGUCmnvKQF_OA6VZF9jf8z2s.jwk

如果你运行 tang-show-keys ,就会显示出 Tang 所公布的密钥:

# tang-show-keysl3fZGUCmnvKQF_OA6VZF9jf8z2siyG5HcF01zaPjaGY6L_3WaslJ_E

你可以通过将两个原始文件改名为以句号开头的隐藏文件,来防止旧的密钥(以开头)被公布。通过这种方法,旧的密钥将不再被公布,但是它仍然可以被任何没有更新为使用新密钥的现有客户端使用。一旦所有的客户端都更新使用了新密钥,这些旧密钥文件就可以删除了。

# cd /var/db/tang# mv hbjJEDXy8G8wynMPqiq8F47nJwo.jwk.hbjJEDXy8G8wynMPqiq8F47nJwo.jwk# mv l3fZGUCmnvKQF_OA6VZF9jf8z2s.jwk.l3fZGUCmnvKQF_OA6VZF9jf8z2s.jwk

此时,如果再运行 tang-show-keys ,Tang 只公布新钥匙:

# tang-show-keysiyG5HcF01zaPjaGY6L_3WaslJ_E

下一步,切换到你的 Stratis 系统并更新它以使用新的 Tang 密钥。当文件系统在线时, Stratis 支持这样做。

首先,解除对池的绑定:

# stratis pool unbind pool1

接下来,用创建加密池时使用的原始口令设置密钥:

# stratis key set --capture-key pool1keyEnter key># stratis pool bind nbde pool1 pool1key--thumbprint iyG5HcF01zaPjaGY6L_3WaslJ_E

Stratis 系统现在配置为使用更新的 Tang 密钥。一旦使用旧的 Tang 密钥的任何其他客户系统被更新,在 Tang 服务器上的 /var/db/tang 目录中被重命名为隐藏文件的两个原始密钥文件就可以被备份和删除了。

使用后不可退货漫画完整版

如果 Tang 服务器不可用怎么办?

接下来,关闭 Tang 服务器,模拟它不可用,然后重启 Stratis 系统。

重启后,Stratis 池又不可用了:

# stratis pool listName Total Physical Properties

如果你试图用 NBDE 解锁,会因为 Tang 服务器不可用而失败:

# stratis pool unlock clevisExecution failed:An iterative command generated one or more errors: The operation 'unlock' on a RESOURCE of type pool failed. The following errors occurred:Partial action "unlock" failed for pool with uuid 4d62f840f2bb4ec9ab53a44b49da3f48: Cryptsetup error: Failed with error: Error: Command failed: cmd: "clevis" "luks" "unlock" "-d" "/dev/vdb" "-n" "stratis-1-private-42142fedcb4c47cea2e2b873c08fcf63-crypt", exit reason: 1 stdout: stderr: /dev/vdb could not be opened.

此时,在 Tang 服务器无法到达的情况下,解锁池的唯一选择就是使用原密钥口令:

# stratis key set --capture-key pool1keyEnter key># stratis pool unlock keyring

接下来,验证池是否成功解锁:

# stratis pool listName Total Physical Propertiespool1 4.98 GiB / 583.65 MiB / 4.41 GiB ~Ca, Cr


移动硬盘加密技巧有哪些?

方法一:隐藏文件法 很多时候我们不希望他人借用或使用我们移动硬盘时,被别人看到我们重要商业数据文件或隐私文件,那么最简单的方法是让文件隐藏起来,这样别人进入移动硬盘就看不到那些文件了。 关于如何隐藏文件,请参考:文件加密都是浮云 隐藏文件夹办法对决 采用文件隐藏方法达到文件加密安全性并不高,因为如果是遇到电脑高手或竞争对手很可能通过一些小技巧,即可轻松还原出文件显示了,因此适用于一般性的加密,或者身边朋友对电脑都不太了解,那样才安全。 方法二:适用专业的加密软件实现移动硬盘加密 “U盘超级加密”是一款移动设备加密软件,可以对闪存、移动硬盘、读卡器甚至手机存储卡进行加密。 对移动设备进行加密后,可以在任何一台机器上使用,如果不进行解密,任何人都无法看到和使用移动设备里的数据。 在使用之前,强烈建议在FAT32格式下使用加密功能,以获得更好的加密强度,但在默认情况下,多数移动硬盘采用了NTFS格式,需要进行分区格式的转换。 首先将移动硬盘连接到电脑上,确保供电正常的情况下,将移动硬盘里的数据备份到电脑硬盘上,然后对移动硬盘进行FAT32格式化,格式化之后,将数据再次拷贝到移动硬盘即可。 下载“U盘超级加密”软件后解压,并将文件目录下转的“”文件放置到移动硬盘的根目录下,千万不要放到移动硬盘的文件夹下,否则无法使用加密功能。 必须注意,为了让加密功能有效,移动硬盘只允许一个分区存在,如果你的移动硬盘具有多个分区,此时系统会将移动硬盘视为多个“本地磁盘”,而不是显示为“可移动磁盘”设备,为此建议使用“PartionMagic”分区软件,在Windows系统下对分区进行合并。 在移动硬盘里直接执行“”程序,此时会弹出一个登录界面,在输入框中输入默认密码(默认密码为),然后点“确定”按钮,此时登录了软件解密界面。 为了安全考虑,建议修改加密密码,如果要加密整个移动硬盘,只要点“全盘加密”即可。 如果只想对某些私人文件进行加密,可以选中需要加密的文件夹,然后点“单个加密”图标,此时被加密的文件夹就会在右边窗口显示。 加密完毕后,移动硬盘只会显示“”图标,其他文件都被隐藏起来了,要使用被加密移动硬盘,只有双击该图标并输入加密密码才行,否则就无法查看和使用数据。 另外一简单易用移动硬盘加密软件:360密盘,也十分好用,建议由兴趣的朋友不妨采用。 360密盘是在您电脑上创建的一块加密磁盘区域,您可将需要保护的私密文件(照片、视频、财务信息文件等)存放在360密盘中。

移动硬盘里面的文件突然多了一把小锁,接另一台电脑却无法访问

可以通过修改权限来打开的。 1、在这个文件夹上单击右键,选择属性,然后点击安全。 然后点击高级选项。 2、然后点击更改权限,在弹出的页面点击【添加】,然后点击高级。 3、然后再点击【立即查找】,然后在下面的搜索结果找到everyone,然后点击【确定】。 然后依次点击确定。 4、然后在权限项目里面 全部选择允许。 点击确定。 还可以使用万能锁解锁一下

一开机出现 system security : hard disk password reguired enter sata drive 1 user asswo

硬盘加密了,需要输入硬盘的用户级密码,才能继续进系统或访问硬盘数据。

本文版权声明本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请联系本站客服,一经查实,本站将立刻删除。

发表评论

热门推荐