Menu Close
Settings Close

Language and Page Formatting Options

11.5. 在 web 控制台中使用 Tang 键配置自动解锁

使用 Tang 服务器提供的密钥,配置 LUKS 加密存储设备的自动解锁。

先决条件

  • 已安装 RHEL 9 web 控制台。

    详情请参阅安装 Web 控制台

  • cockpit-storaged 软件包已安装在您的系统上。
  • cockpit.socket服务运行在9090端口。
  • clevistangclevis-dracut 软件包已安装。
  • Tang 服务器在运行。

流程

  1. 在 web 浏览器中输入以下地址来打开 RHEL web 控制台:

    https://localhost:9090

    当连接远程系统时,将 localhost 部分替换为远程服务器的主机名或 IP 地址。

  2. 提供您的凭证并点击 Storage。点 > 扩展您要使用 Tang 服务器解锁的加密设备详情,然后点击 Encryption
  3. 点击 Keys 部分中的 + 来添加 Tang 密钥:

    RHEL web 控制台:encryption
  4. 提供 Tang 服务器的地址以及用于解锁 LUKS 加密设备的密码。点击 Add 确认:

    RHEL web 控制台:添加 Tang 密钥

    以下对话框窗口提供了一个命令来验证密钥哈希是否匹配。

  5. 在 Tang 服务器上的终端中,使用 tang-show-keys 命令显示密钥散列以进行比较。在本例中,Tang 服务器在端口 7500 上运行:

    # tang-show-keys 7500
    fM-EwYeiTxS66X3s1UAywsGKGnxnpll8ig0KOQmr9CM
  6. 当 web 控制台中的密钥哈希与之前列出的命令的输出中的密钥哈希相同时,请点击 Trust key

    RHEL web 控制台:验证 Tang 密钥
  7. 要启用早期引导系统来处理磁盘绑定,请点击左侧导航栏底部的 Terminal ,并输入以下命令:

    # dnf install clevis-dracut
    # grubby --update-kernel=ALL --args="rd.neednet=1"
    # dracut -fv --regenerate-all
  8. 要启用 Clevis 解锁引导过程中未挂载的卷,请在重启系统前在客户端中使用以下命令:

    # systemctl enable clevis-luks-askpass.path

验证

  1. 检查新添加的 Tang 密钥现在是否在 Keys 部分中列出,且类型为 Keyserver

    RHEL web 控制台:一个 keyserver 键被列出
  2. 验证绑定是否在早期引导时可用,例如:

    # lsinitrd | grep clevis
    clevis
    clevis-pin-sss
    clevis-pin-tang
    clevis-pin-tpm2
    -rwxr-xr-x   1 root     root         1600 Feb 11 16:30 usr/bin/clevis
    -rwxr-xr-x   1 root     root         1654 Feb 11 16:30 usr/bin/clevis-decrypt
    ...
    -rwxr-xr-x   2 root     root           45 Feb 11 16:30 usr/lib/dracut/hooks/initqueue/settled/60-clevis-hook.sh
    -rwxr-xr-x   1 root     root         2257 Feb 11 16:30 usr/libexec/clevis-luks-askpass