Red Hat Training

A Red Hat training course is available for RHEL 8

11.10. 使用 Kickstart 配置 LUKS 加密卷的自动注册

按照以下步骤配置使用 Clevis 注册 LUKS 加密卷的自动安装过程。

流程

  1. 指示 Kickstart 对磁盘进行分区,以便使用临时密码为所有挂载点(除 /boot )启用了 LUKS 加密。密码是注册过程此步骤的临时密码。

    part /boot --fstype="xfs" --ondisk=vda --size=256
    part / --fstype="xfs" --ondisk=vda --grow --encrypted --passphrase=temppass

    请注意,OSPP-complaint 系统需要更复杂的配置,例如:

    part /boot --fstype="xfs" --ondisk=vda --size=256
    part / --fstype="xfs" --ondisk=vda --size=2048 --encrypted --passphrase=temppass
    part /var --fstype="xfs" --ondisk=vda --size=1024 --encrypted --passphrase=temppass
    part /tmp --fstype="xfs" --ondisk=vda --size=1024 --encrypted --passphrase=temppass
    part /home --fstype="xfs" --ondisk=vda --size=2048 --grow --encrypted --passphrase=temppass
    part /var/log --fstype="xfs" --ondisk=vda --size=1024 --encrypted --passphrase=temppass
    part /var/log/audit --fstype="xfs" --ondisk=vda --size=1024 --encrypted --passphrase=temppass
  2. 通过在 %packages 部分列出相关的 Clevis 软件包来安装相关的 Clevis 软件包:

    %packages
    clevis-dracut
    %end
  3. %post 部分中调用 clevis luks bind 以执行绑定。之后,删除临时密码:

    %post
    curl -sfg http://tang.srv/adv -o adv.jws
    clevis luks bind -f -k- -d /dev/vda2 \
    tang '{"url":"http://tang.srv","adv":"adv.jws"}' \ <<< "temppass"
    cryptsetup luksRemoveKey /dev/vda2 <<< "temppass"
    %end

    在上例中,请注意,我们从 Tang 服务器下载广播,作为绑定配置的一部分,启用绑定完全非交互式。

    警告

    cryptsetup luksRemoveKey 命令可以防止对应用该命令的 LUKS2 设备进行任何进一步的管理。您只能对 LUKS1 设备使用 dmsetup 命令恢复移除的 master 密钥。

在使用 TPM 2.0 策略而不是 Tang 服务器时,您可以使用类似的步骤。

其它资源