6.15. 身份管理
RHEL 10 提供 python-jwcrypto
版本 1.5.6
python-jwcrypto
软件包已更新至版本 1.5.6。此版本包括针对一个问题的安全修复,其中攻击者可以通过传递一个具有高压缩率的恶意 JWE Token 来拒绝服务攻击。
Jira:RHELDOCS-20100[1]
RHEL 10 提供 ansible-freeipa
软件包版本 1.14.5
ansible-freeipa
软件包已更新至版本 1.14.5。主要改进和程序错误修复包括:
您可以使用
module_defaults
为多个ansible-freeipa
任务定义变量freeipa.ansible_freeipa
集合现在提供简化了ansible-freeipa
模块使用的module_defaults
操作组。通过使用module_defaults
,您可以设置要应用到 playbook 中使用的所有集合的模块中的默认值。为此,请使用名为freeipa.ansible_freeipa.modules
的action_group
。例如:Copy to Clipboard Copied! Toggle word wrap Toggle overflow 因此,playbook 更加简洁。
现在可以在单个 Ansible 任务中管理多个 IdM
sudo
规则有了
ansible-freeipa
中的这个增强,您可以使用单个 Ansible 任务添加、修改和删除多个身份管理(IdM)sudo
规则。为此,请使用ipasudorule
模块的sudorules
选项。因此,您可以更轻松地定义sudo
规则,并更有效地执行它们。使用
sudorules
选项,您可以指定应用到特定sudo
规则中的多个sudo
规则参数。此sudo
规则由name
变量定义,后者是sudorules
选项的唯一强制变量。使用
ipagroup
模块删除外部成员现在可以正常工作在以前的版本中,使用带有
externalmember
参数的ansible-freeipa
ipagroup
模块尝试确保 IdM 组中没有外部成员不会将成员从组中删除,即使 Ansible 将任务的结果的显示为changed
。有了此修复,使用带有externalmember
的ipagroup
模块可以正确地确保 IdM 组中没有外部成员。此修复允许使用 DOM\name 或 name@domain 来识别 AD 用户。
管理 IdM ID 范围不一致的新工具
有了此更新,身份管理(IdM)提供了 ipa-idrange-fix
工具。您可以使用 ipa-idrange-fix
工具分析现有的 IdM ID 范围,识别这些范围之外的用户和组,并建议创建包括它们d 新的 ipa-local
范围。
ipa-idrange-fix
工具执行以下操作:
- 从 LDAP 读取和分析现有范围。
-
搜索
ipa-local
范围之外的用户和组。 -
提出新的
ipa-local
范围,来涵盖标识的用户和组。 - 提示用户应用提议的更改。
默认情况下,工具排除 1000 以下的 ID,以防止与系统帐户冲突。红帽强烈建议在应用任何推荐的更改前创建一个全系统备份。
如需更多信息,请参阅 ipa-idrange-fix (1)
手册页。
Jira:RHEL-56917[1]
自动删除过期证书默认被启用
有了此更新,在新副本上的身份管理(IdM)中默认启用自动删除过期证书。实现这一点的前提条件是使用 RSNv3 为证书生成随机序列号,现在默认会启用 RSNv3 。
因此,现在会使用随机序列号创建证书,并在过期后自动删除,默认保留期为到期后的 30 天。
RHEL 10 提供 python-pyasn1
版本 0.6.1
python-pyasn1
软件包已更新至版本 0.6.1。更新包括各种改进和 bug 修复,包括:
- 支持 Python 3.13
- 删除了对 Python 2.7、3.6、3.7 的支持
- 改进了错误处理和一致性
- tagMap 和 typeMap 别名的运行时弃用
- 支持之前缺少的 RELATIVE-OID 构造
ldap_id_use_start_tls
选项现在默认启用
为了提高安全性,ldap_id_use_start_tls
的默认值已从 false
改为 true
。当使用没有 TLS 的 ldap://
进行身份查找时,可能会对攻击向量构成风险。特别是中间人(MITM)攻击,例如,攻击者可以通过更改 LDAP 搜索中返回的对象的 UID 或 GID 来冒充用户。
由于未加密的通信不安全,因此默认的 ldap_id_use_start_tls
选项现在被设置为 true
。
Jira:RHELDOCS-19185[1]
RHEL 10 提供 certmonger
版本 0.79.20
certmonger
软件包已更新至版本 0.79.20。此更新包括各种 bug 修复和增强,最重要的是:
- 增强了内部令牌中新证书的处理,并改进了续订的删除过程。
-
删除了对
CKM_RSA_X_509
加密机制的令牌的限制。 -
修复了
getcert add-scep-ca
,--ca-cert
和--ra-cert
选项的文档。 - 重命名 D-Bus 服务和配置文件以匹配规范名称。
-
在
getcert-resubmit
手册页中添加了缺失的.TP
标签。 - 迁移到 SPDX 许可证格式。
-
在
getcert list
输出中包含了所有者和权限信息。 -
在
cm_certread_n_parse
函数中删除了对 NSS 数据库的要求。 - 添加了对简体中文、Georgian 和俄语使用 Webplate 的翻译。
Jira:RHEL-40922[1]
RHEL 10 提供 python-jwcrypto
版本 1.5.6
python-jwcrypto
软件包已更新至版本 1.5.6。此版本包括针对一个问题的安全修复,其中攻击者可以通过传递一个具有高压缩率的恶意 JWE Token 来拒绝服务攻击。
Jira:RHELDOCS-19191[1]
Kerberos 现在支持 Elliptic Curve Diffie-Hellman 密钥协议算法
现在支持 RFC5349 所定义的 PKINIT 的 Elliptic Curve Diffie-Hellman (ECDH)密钥协议算法。有了此更新,krb5.conf' 文件中的 pkinit_dh_min_bits
设置现在可以使用 'P-256
、P-384
或 P-521
进行配置,以默认使用 ECDH。
Jira:RHEL-71881[1]
RHEL 10 提供 389-ds-base
版本 3.0.6
389-ds-base
软件包已更新至版本 3.0.6。更新包括各种改进和 bug 修复,包括:
- 错误日志的日志缓冲
- 以 JSON 格式写审计日志的选项
- 在组更新时延迟更新组成员的选项
- 配置几个 PBKDF2 迭代的选项
-
logconv.py
日志分析器工具
389-ds-base
现在完全支持 LMDB
以前在 389-ds-base
软件包中作为技术预览提供的 Lightning Memory-Mapped 数据库(LMDB)现在被完全支持。
主要优点包括:
- LMDB 对读操作进行了高度优化。
- LMDB 避免内存分配和内存到内存拷贝。
- LMDB 需要最小配置。
- LMDB 支持多线程和没有死锁的多进程环境。
- 读取者永远不会阻止写入者,反之亦然。
- LMDB 不需要事务日志。
从 RHEL 10 开始,所有新目录服务器实例都只使用 LMDB 作为数据库类型,并且不再有带有 BDB 的标准安装。
要将现有的 BDB 实例迁移到 LBDM,请创建一个新的 LMDB 实例,并使用一个 LDIF 文件或复制方法导入数据库内容。
目录服务器在 cn=mdb,cn=config,cn=ldbm database,cn=plugins,cn=config
条目下存储 LMDB 设置,其包含以下新配置参数:
nsslapd-mdb-max-size
设置数据库最大大小(以字节为单位)。重要:确保
nsslapd-mdb-max-size
足够存储所有预期数据。但是,参数值不能太大,从而影响性能,因为数据库文件是内存映射的。-
nsslapd-mdb-max-readers
设置可以同时打开的最大读操作数。目录服务器自动调整此设置。 -
nsslapd-mdb-max-dbs
设置指定可包含在内存映射的数据库文件中的最大数据库实例数。
除了新的 LMDB 设置,您还可以使用 nsslapd-db-home-directory
数据库配置参数。
RHEL 10 提供 openldap
版本 2.6.8
openldap
软件包已更新至版本 2.6.8。更新包括各种改进和 bug 修复,包括:
- 改进了 TLS 连接的处理。
-
Kerberos
SASL
可以与STARTTLS
一起使用,即使活动目录证书是 Elliptic Curve Cryptography (ECC)证书,且SASL_CBINDING
被设置为tls-endpoint
。
目录服务器现在提供错误、审计和审计失败日志的缓冲
在此更新之前,只有访问和安全日志才有日志缓冲。有了此更新,目录服务器提供错误、审计和审核失败日志的缓冲。使用以下设置来配置日志缓冲:
-
用于错误日志的
nsslapd-errorlog-logbuffering
。默认禁用此选项。 -
用于审计和审计失败日志的
nsslapd-auditlog-logbuffering
。默认启用此选项。
详情请查看 Red Hat Directory Server 配置和 schema 参考文档中的 nsslapd-errorlog-logbuffering 和 nsslapd-auditlog-logbuffering。
现在,您可以在 PBKDF2BLUEPRINT Password Storage Schemes 插件条目中配置哈希迭代值
在此次更新之前,对于 Password Storage Schemes 插件的所有 PBKDF2 ldapmodify 条目,哈希迭代数量被硬编码(10000
)。有了此更新,现在可以通过使用默认为 100000
的新的 nsslapd-pwdpbkdf2numiterations
属性来配置哈希迭代值。
您可以使用命令行或 Web 控制台配置 nsslapd-pwdpbkdf2numiterations
。
例如,要将值设为 150000
,并查看不同密码存储方案中的当前值,请运行:
dsconf <instance_name> plugin pwstorage-scheme pbkdf2-sha512 set-num-iterations 150000 dsconf <instance_name> plugin pwstorage-scheme pbkdf2-sha512 get-num-iterations
# dsconf <instance_name> plugin pwstorage-scheme pbkdf2-sha512 set-num-iterations 150000
# dsconf <instance_name> plugin pwstorage-scheme pbkdf2-sha512 get-num-iterations
在 Web 控制台中,进到菜单:[Database
在更改默认值之前请考虑以下几点:
- 旧密码有一个旧的哈希迭代设置,直到密码被更新为止。
- 增加的迭代数可能会影响 BIND 操作性能。
dsctl healthcheck
现在会警告在 membership 属性上创建子字符串索引
包含 membership 属性的条目通常是一个具有多个成员的组。当更改值集时,子字符串索引的成本非常昂贵,比如删除单个成员。现在,当添加子字符串索引类型时,dsctl healthcheck
会警告有关 membership 属性上子字符串索引成本过高,并显示以下出错消息:
DSMOLE0002
.如果为 membership 属性配置了子字符串索引,则从大型组中删除一个成员可能会很慢。
gssproxy
systemd
服务的服务类型已更改
gssproxy
systemd
服务类型已从 "forking" 改为 "notify"。此更新删除了对 PIDFile 的依赖,这是改进与 bootc
的兼容性所必需的。有了此更新,gssproxy
服务使用 "notify" 类型,提供更可靠的服务状态监控。
ACME 现在在 IdM 中被完全支持
自动化证书管理环境(ACME)服务现在在身份管理(IdM)中被完全支持。ACME 是一个用于自动标识符验证和证书颁发的协议。它的目标是通过缩短证书生命周期并避免证书生命周期管理中的手动过程来提高安全性。
在 RHEL 中,ACME 服务使用红帽认证系统(RHCS)PKI ACME 响应程序。RHCS ACME 子系统自动部署到 IdM 部署中的每个证书颁发机构(CA)服务器上,但只有管理员启用它之后,它才会为请求提供服务。RHCS 在发布 ACME 证书时使用 acmeIPAServerCert
配置文件。签发的证书的有效期为 90 天。启用或禁用 ACME 服务会影响整个 IdM 部署。
Jira:RHELDOCS-19405[1]
HSM 现在在 IdM 中被完全支持
硬件安全模块(HSM)现在在身份管理(IdM)中被完全支持。您可以在 HSM 上为 IdM 证书颁发机构(CA)和密钥恢复授权(KRA)存储密钥对和证书。这为私钥材料增加了物理安全。
IdM 依赖于 HSM 的网络功能,来在机器之间共享密钥来创建副本。HSM 提供了额外的安全性,而不会明显影响大多数 IdM 操作。使用低级别工具时,证书和密钥会以不同的方式处理,但对大多数用户来说是无缝的。
不支持将现有 CA 或 KRA 迁移到基于 HSM 的设置中。您需要在 HSM 上使用密钥重新安装 CA 或 KRA。
您需要以下内容:
- 一个支持的 HSM。
- HSM Public-Key Cryptography Standard (PKCS) #11 库。
- 一个可用的插槽、令牌和令牌密码。
要使用存储在 HSM 上的密钥安装 CA 或 KRA,您必须指定令牌名称和 PKCS #11 库的路径。例如:
ipa-server-install -r EXAMPLE.TEST -U --setup-dns --allow-zone-overlap --no-forwarders -N --auto-reverse --random-serial-numbers -–token-name=HSM-TOKEN --token-library-path=/opt/nfast/toolkits/pkcs11/libcknfast.so --setup-kra
ipa-server-install -r EXAMPLE.TEST -U --setup-dns --allow-zone-overlap --no-forwarders -N --auto-reverse --random-serial-numbers -–token-name=HSM-TOKEN --token-library-path=/opt/nfast/toolkits/pkcs11/libcknfast.so --setup-kra
Jira:RHELDOCS-17465[1]