hdcryptmgr 命令

用途

提供逻辑卷 (LV) 的加密管理。

语法

hdcryptmgr action [-h] [flags] devicename

描述

IBM® AIX® 7.2(技术等级 5)开始,您可以通过指定操作参数来运行 "hdcryptmgr命令,以执行以下操作之一:

表 1。 hdcryptmgr 命令操作
操作 action 参数 描述
显示加密设置 showvg 显示卷组的数据加密状态
showlv 显示逻辑卷的数据加密状态
showmd 显示特定设备的加密元数据
showconv 显示所有激活和停止的加密转换状态
控制认证方法 authinit 初始化逻辑加密卷的数据加密主密钥
authunlockauthunl 对加密逻辑加密卷进行身份验证,以解锁逻辑加密卷的主密钥
authadd 添加其他认证方法
authcheckauthchk 检查认证方法的有效性
authdeleteauthdel 除去认证方法
管理平台密钥存储 (PKS) 密钥 pksimport 导入平台密钥存储 (PKS) 密钥
pksexport 导出 PKS 密钥
pksclean 除去 PKS 密钥
pksshow 显示 PKS 密钥的状态
转换逻辑卷的加密状态 plain2crypt 在逻辑卷中启用加密并加密逻辑卷数据
crypt2plain 解密逻辑卷数据并禁用逻辑卷中的加密

显示加密设置

您可以使用 hdcryptmgr 命令运行以下操作以显示加密设置:

昭和
语法:
hdcryptmgr showvg [-h] [device]
显示指定卷组的数据加密状态。 如果未指定卷组,那么此命令将显示所有卷组的加密状态。
# hdcryptmgr showvg
VG NAME / ID          ENCRYPTION ENABLED  
EVG1                      yes                 
INSTALLVG                 yes                 
rootvg                    no
昭和
语法:
hdcryptmgr showlv [-h] [-v] device
显示逻辑卷的数据加密状态。 必须使用 "-v标记指定卷组或逻辑卷的设备名称。 指定卷组时,此命令将显示卷组中所有逻辑卷的数据加密状态。 指定逻辑卷时,此命令将显示指定逻辑卷的数据加密状态。 如果未对卷组启用数据加密功能,那么将显示一条消息,指示未对卷组启用加密。
# hdcryptmgr showlv vg00
NAME                 CRYPTO_STATUS    %ENCRYPTED       NOTE            
lv00                 unlocked         100             
lv01                 unlocked         100             
lv03                 not_enabled      0               
lv04                 locked           100             
lv02                 uninitialized    0               
lv06                 uninitialized    n/a              not_accessible  
lv07                 locked           100             
fslv00               locked           1                encrypting      
展示
语法:
hdcryptmgr showmd [-h] [-v] device
显示特定逻辑卷,卷组或物理卷的加密元数据。 必须指定逻辑卷,卷组或物理卷的设备名。 指定卷组时,仅显示指定卷组的头和尾部加密元数据。 指定物理卷时,即使相应的卷组未开启,也会显示加密逻辑卷的元数据。 指定逻辑卷时,将显示特定逻辑卷的整个加密元数据。
# hdcryptmgr showmd ELV1
.....
.....    Wed Jun 17 13:25:46 2020
.....    Device type : LV
.....    Device name : ELV1
.....

=============== B: LV HEADER ================
Version                      : 0
MasterKey                    : Defined
MasterKey size               : 16 bytes
Encryption status            : Fully encrypted
Data crypto algorithm        : AES_XTS
=============== E: LV HEADER ================

============= B: LV AUTH METHODS ============
---- Index #0 -------------------------------
Method defined               : yes
Method name                  : initpwd
Authentication type          : Passphrase
Auto-auth method             : no
MasterKey crypto algorithm   : AES_GCM
---- Index #1 -------------------------------
Method defined               : no
---- Index #2 -------------------------------
Method defined               : no
---- Index #3 -------------------------------
Method defined               : no
---- Index #4 -------------------------------
Method defined               : no
---- Index #5 -------------------------------
Method defined               : no
============= E: LV AUTH METHODS ============
昭和
语法:
hdcryptmgr showconv [-h]
显示正在转换的逻辑卷的活动进程和已停止进程的状态。
# hdcryptmgr showconv
NAME          TID/STATUS       %ENCRYPTED       DIRECTION        START_TIME      
lv03          29557045         3                plain2crypt      Sun Feb 14 09:43:10 2021
fslv00        stopped/dirty    1                plain2crypt     

控制认证方法

逻辑卷的加密功能支持以下密钥保护方法:口令、密钥文件、密钥服务器管理解决方案(如IBM Security Key Lifecycle Manager)和 Platform Keystore (PKS)。 口令和密钥文件保护方法要求您手动指定密码或密钥文件位置。 密钥服务器管理和 PKS 保护方法可用于自动解锁和激活加密逻辑卷。 要使密钥服务器认证方法符合自动方法的要求,必须将客户机证书密码存储在 PKS 中,或者不选择客户机证书的密码。 您可以使用 "hdcryptmgr命令运行以下操作来控制身份验证方法:
初始化身份验证
语法:
hdcryptmgr authinit [-h] [-e algo_detail] [-n name] device
初始化加密逻辑卷的主密钥和加密元数据。 对于每个加密逻辑卷,主密钥和加密元数据必须只初始化一次。 从密钥保护方法中获得的第一个口令被添加到 LV 的加密元数据中。 您可以为该操作参数指定以下标志或值:
-e
指定数据加密算法,方式和密钥长度。 -e 标志的有效值如下所示:
提示符
指定在运行命令时提示加密算法详细信息。
[algorithm]: [b | B] [key_len] [:w]
指定加密算法详细信息。 受支持的算法是高级加密标准 XTS 方式 (AES-XTS) 128 位或 256 位。 字符 b 是指密钥的位 (缺省值) ,字符 B 是指密钥的字节, key_len 变量是指密钥的长度。 :w 参数使用指定的值覆盖卷组的缺省值。 默认情况下,创建启用加密的卷组时,默认加密算法为 AES-XTS 128 位。
-n
指定密钥保护方法的名称。 名称的长度为 1 到 15 个字符, 只能包含以下字符:A 到 Z、a 到 z、0 到 9、 “_”(下划线)、“-”(减号)或“.” (句点)。 所有其他字符都是无效的字符。
台设备
指定必须初始化密钥保护方式的逻辑卷的设备名称。
授权添加
语法:
hdcryptmgr authadd [-h] [-t type [-m method_detail]] [-n name] device
为已初始化密钥保护方法的加密逻辑卷添加额外的密钥保护方法。 要激活添加到加密 LV 的身份验证方法,必须解锁加密 LV。 可以使用以下标志或值指定此 action 参数:
-t
指定密钥保护类型。 有效值为 "pwd、"keyfile、"keyserv"和 "pks"。
-m
指定有关密钥保护方法的任何其他信息,这些信息可能包含以下详细信息:
  • 认证密钥文件的输入路径
  • KeySvr 对象数据管理器 (ODM) 类中的密钥服务器标识
-n
指定密钥保护方法的名称。 名称的长度为 1 到 15 个字符, 只能包含以下字符:A 到 Z、a 到 z、0 到 9、 “_”(下划线)、“-”(减号)或“.” (句点)。 所有其他字符都是无效的字符。
台设备
指定必须添加密钥保护方式的逻辑卷的设备名称。

如果在运行 hdcryptmgr authadd 命令时未指定必需的标志或值,那么系统会提示您指定相同的标志或值。 有关注册密钥服务器信息的信息,请参阅 keysvrmgr 命令。

authdelete 或 authdel
语法:
hdcryptmgr authdelete [-h] [-t type [-m method_detail]] [-i index] [-n name] [-f] device
除去已启动的密钥保护方法。 可以使用以下标志指定此 action 参数:
-t
指定密钥保护类型。 有效值为 "pwd、"keyfile、"keyserv"和 "pks"。
-m
指定有关密钥保护方法的任何其他信息,这些信息可能包含以下详细信息:
  • 认证密钥文件的输入路径
  • KeySvr ODM 类中的密钥服务器标识
-i
指定必须删除的密钥保护方法的索引。
-n
指定必须删除的密钥保护方法的名称。 名称的长度为 1 到 15 个字符, 只能包含以下字符:A 到 Z、a 到 z、0 到 9、 “_”(下划线)、“-”(减号)或“.” (句点)。 所有其他字符都是无效的字符。
-f
指定强制选项。 此标志绕过认证方法检查以除去密钥保护方法。
台设备
指定必须删除密钥保护方式的逻辑卷的设备名称。

一次只能除去一个密钥保护方法。 如果您知道密钥保护方法的正确索引或名称,那么可以使用 -i-n 标志来指定密钥保护方法。 您可以使用 -t-m 标志来过滤现有密钥保护方法的列表。 如果多个条目与指定的条件匹配,那么系统会提示您选择必须除去的密钥保护方法。

在除去密钥保护方法之前,将检查密钥保护方法的有效性,除非使用了 -f 标志。 您必须使用选定的密钥保护方法对 LV 进行身份验证。

注意:执行 "authdelete操作后,确保逻辑卷至少有一个口令密钥保护方法。
authunlock 或 authunl
语法:
hdcryptmgr authunlock [-h] [-t type [-m method_detail]] [-A] device
验证加密 LV 并解锁加密逻辑卷。 可以使用以下标志或值指定此 action 参数:
-A
使用不需要任何用户输入的自动密钥保护方法向加密的 LV 进行认证。 仅当 VG 使用自动密钥保护方法 (例如密钥服务器管理解决方案或 PKS) 时,才能在卷组 (VG) 级别使用此标志。
-t
指定密钥保护方法的类型。 有效值为 "pwd、"keyfile、"keyserv"和 "pks"。
-m
指定有关密钥保护方法的任何其他信息,这些信息可能包含以下详细信息:
  • 认证密钥文件的输入路径
  • KeySvr ODM 类中的密钥服务器标识
台设备

指定逻辑卷的设备名称,必须对其进行身份验证,然后解锁密钥保护方式。 必须将此值与 -A 标志一起指定。

指定 LV 设备名称时,可以使用 "-t和 "-m标志指定密钥保护方式。 如果多个密钥保护方法符合条件,那么系统会提示您选择特定的密钥保护方法。

注: 对于在引导操作期间使用密钥服务器认证方法对逻辑卷进行解密的加密逻辑卷,服务器或客户机证书必须位于 /etc 目录或引导操作序列中早期安装的文件系统中。
authcheck 或 authchk
语法:
hdcryptmgr authcheck [-h] [-t <type> [-m <method_detail>]] [-i <index>] [-n <name>] <device>
检查认证方法的有效性。 可以使用以下标志或值指定此 action 参数:
-h
显示帮助信息。
-t
指定密钥保护方法的类型。 有效值为 "pwd、"keyfile、"keyserv"和 "pks"。
-m
指定有关密钥保护方法的任何其他信息,这些信息可能包含以下详细信息:
  • 认证密钥文件的输入路径
  • KeySvr ODM 类中的密钥服务器标识
-i
仅检查指定索引的认证。 将根据所选索引自动强制认证类型。
-n
指定必须检查的密钥保护方法的名称。 名称的长度为 1 到 15 个字符, 只能包含以下字符:A 到 Z、a 到 z、0 到 9、 “_”(下划线)、“-”(减号)或“.” (句点)。 所有其他字符都是无效的字符。
台设备
指定必须检查的逻辑卷的设备名称。

管理 PKS 密钥

平台密钥库 (PKS) 是IBM Power® System E950 的IBM PowerVM®固件中提供的一种安全密钥保护方法。 您可以将 PKS 密钥保护方法添加到加密的 LV。 您可以使用以下 action 参数来管理 PKS 密钥以进行认证。

Pksshow
语法:
hdcryptmgr pksshow [-h]
显示与 PKS 密钥相关联的逻辑卷 ID 以及 PKS 密钥的状态。 显示存储在 PKS 和 LV 元数据中的 LV ID。
# hdcryptmgr pksshow

PKS uses 317 bytes on a maximum of 65536 bytes.
PKS_Label (LVid)                         Status
00fb293100004c0000000174c0a994b7.1       VALID
00fb293100004c0000000174c0a994b7.2       UNKNOWN
00fb293100004c0000000174c0a994b7.3       UNKNOWN

PKS_Label (objects)
ksvr:gpfs-pw-t2
普克斯克莱恩
语法:
hdcryptmgr pksclean [-h] lvid
从 PKS 中除去无效密钥。 您必须指定与要删除的无效密钥相关联的逻辑卷 ID。 必须使用该命令删除 "hdcryptmgr pksshow命令输出中列出的状态为 O 的按键。
普克塞波特
语法:
hdcryptmgr pksexport [-h] -p ExportFile device
将 PKS 密钥导出到指定的文件中。 如果指定 LV 设备名称,则会导出与指定 LV 关联的 PKS 密钥。 如果指定 VG 设备名,那么将导出与卷组中的逻辑卷相关联的所有 PKS 密钥。
普克西姆波特
语法:
hdcryptmgr pksimport [-h] -p ExportFile [device]
将 PKS 密钥导入到指定的文件中。 如果指定 LV 设备名称,则会导入与指定 LV 关联的 PKS 密钥。 如果指定 VG 设备名,那么将导入与卷组中的逻辑卷相关联的所有 PKS 密钥。 如果未指定设备名,那么将导入所有 PKS 密钥。

转换逻辑卷的加密状态

可以将常规逻辑卷转换为加密逻辑卷,反之亦然。 只能对处于活动状态且处于联机状态的逻辑卷执行此转换操作。
警告: 必须先备份数据,然后才能运行以下转换命令。
您可以使用以下操作参数:
plain2crypt
语法:
hdcryptmgr plain2crypt [-h] [-e algo_detail] [-n name] [-f] device
在逻辑卷中启用加密,配置加密设置并加密 LV 数据。 可以使用以下标志和值指定此 action 参数:
-e
指定数据加密算法,方式和密钥长度。 -e 标志的有效值如下所示:
提示符
指定在运行命令时提示加密算法详细信息。
[algorithm]: [b | B] [key_len] [:w]
指定加密算法详细信息。 受支持的算法是高级加密标准 XTS 方式 (AES-XTS) 128 位或 256 位。 字符 b 是指密钥的位 (缺省值) ,字符 B 是指密钥的字节, key_len 变量是指密钥的长度。 :w 参数使用指定的值覆盖卷组的缺省值。 默认情况下,创建启用加密的卷组时,默认加密算法为 AES-XTS 128 位。
-n
指定密钥保护方法的名称。 名称的长度为 1 到 15 个字符, 只能包含以下字符:A 到 Z、a 到 z、0 到 9、 “_”(下划线)、“-”(减号)或“.” (句点)。 所有其他字符都是无效的字符。
-f
指定强制选项。 如果不使用此标志,那么 hdcryptmgr 命令会提示您确认已备份数据。 强制选项禁止此提示。
台设备
指定必须转换其加密状态的逻辑卷的设备名。
crypt2plain
语法:
hdcryptmgr crypt2plain [-h] [-f] device
解密指定逻辑卷的加密数据,并禁用指定逻辑卷的加密状态。 可以使用以下标志和值指定此 action 参数:
-f
指定强制选项。 如果不使用此标志,那么 hdcryptmgr 命令会提示您确认已备份数据。 强制选项禁止此提示。
台设备
指定必须转换其加密状态的逻辑卷的设备名。

加密 LV 的命令和功能限制

有关加密 LV 时不受支持的逻辑卷命令或功能的更多信息,请参阅 加密逻辑卷中的 "限制" 部分。

示例

场景使用口令密钥保护方法创建加密逻辑卷
  1. 创建在其中启用加密的卷组。
    # mkvg -k y hdisk1 hdisk2
    vg00
  2. 创建大小为 32 MB 的加密 LV。
    # mklv -k y vg00 32M
    mklv: Please run :
    # hdcryptmgr authinit lvname [..] to define LV encryption options.
    lv00
  3. 使用主密钥和口令密钥保护方法来初始化逻辑卷上的加密配置。
    # hdcryptmgr authinit -n default lv00
    Enter Passphrase:
    Confirm Passphrase:
    Password authentication method added successfully
场景在加密 LV 中创建文件系统
  1. 创建在其中启用加密的卷组,然后创建大小为 32 MB 的逻辑卷,然后初始化逻辑卷的加密配置。
    # mkvg -k y hdisk1 hdisk2
    vg00
    # mklv -t jfs2 -k y vg00 32M
    mklv: Please run :
    # hdcryptmgr authinit lvname [..] to define LV encryption options.
    fslv00
    # hdcryptmgr authinit -n default fslv00
    Enter Passphrase:
    Confirm Passphrase:
    Password authentication method added successfully
  2. 在加密逻辑卷中创建类似于在常规逻辑卷中创建文件系统的文件系统。
    # crfs -v jfs2 -d fslv00 -m /mnt/myfs -A no
    File system created successfully.
    32560 kilobytes total disk space.
    New File System size is 65536
场景对已启用加密的逻辑卷进行身份验证

当卷组脱机或系统重新启动时,加密 LV 的认证将到期。 您必须向加密的 LV 认证才能访问其数据。 必须对已加密的 LV 使用已配置的密钥保护方法。 要认证启用了加密的 LV ,请完成以下步骤:

  1. 使 VG 联机。
    # varyonvg vg00
  2. 使用口令密钥保护方法进行认证。
    # hdcryptmgr authunlock -t pwd fslv00
    Enter Passphrase:
    Password authentication succeeded

文件

/usr/sbin/hdcryptmgr
包含 hdcryptmgr 命令。