4.13. 身份管理
SSSD 支持将主目录转换为小写
有了这个增强,您现在可以配置 SSSD ,来将用户主目录转换为小写。这有助于与 RHEL 环境的区分大小写的性质更好地集成。/etc/sssd/sssd.conf
文件的 [nss]
部分中的 override_homedir
选项现在可识别 %h
模板值。如果您使用 %h
作为 override_homedir
定义的一部分,SSSD 会用小写的用户主目录替换 %h
。
Jira:RHELPLAN-139430
SSSD 现在支持使用 shadow
密码策略更改 LDAP 用户密码
有了这个增强,如果您在 /etc/sssd/sssd.conf
文件中将 ldap_pwd_policy
设为 shadow
,则 LDAP 用户现在可以更改存储在 LDAP 中的密码。在以前的版本中,如果 ldap_pwd_policy
设为 shadow
,则密码更改将被拒绝,因为不清楚是否正在更新相应的 shadow
LDAP 属性。
另外,如果 LDAP 服务器无法自动更新 shadow
属性,请在 /etc/sssd/sssd.conf
文件中将 ldap_chpass_update_last_change
选项设为 True
,以表明 SSSD 要更新属性。
Bugzilla:1507035
IdM 现在支持 min_lifetime
参数
有了此增强,min_lifetime
参数已添加到 /etc/gssproxy114.conf
文件中。如果剩余生命周期低于这个值,则 min_lifetime
参数会触发续订服务票据。
默认情况下,其值为 15 秒。对于 NFS 等网络卷客户端,若要降低 KDC 暂时不可用时丢失访问权限的风险,请将此值设为 60 秒。
ipapwpolicy
ansible-freeipa
模块现在支持新的密码策略选项
有了这个更新,ansible-freeipa
软件包中包含的 ipapwpolicy
模块支持额外的 libpwquality
库选项:
maxrepeat
- 指定序列中相同字符的最大数量。
maxsequence
- 指定单例字符序列的最大长度 (abcd)。
dictcheck
- 检查密码是否为字典单词。
usercheck
- 检查密码是否包含用户名。
如果设置了任何新密码策略选项,则密码的最小长度为 6 个字符。新密码策略设置仅应用到新密码。
在使用 RHEL 7 和 RHEL 8 服务器的混合环境中,新的密码策略设置仅在在 RHEL 8.4 及更新版本上运行的服务器中强制实施。如果用户登录到 IdM 客户端,并且 IdM 客户端与运行在 RHEL 8.3 或更早版本上的 IdM 服务器进行通信,则系统管理员设置的新密码策略要求不适用。为确保一致的行为,请将所有服务器升级到 RHEL 8.4 及更新的版本。
Jira:RHELPLAN-137416
IdM 现在支持 ipanetgroup
Ansible 管理模块
作为身份管理(IdM)系统管理员,您可以将 IdM 与 NIS 域和 netgroup 集成。使用 ipanetgroup
ansible-freeipa
模块,您可以实现以下内容:
- 您可以确保现有的 IdM netgroup 包含特定的 IdM 用户、组、主机和主机组以及嵌套的 IdM netgroup。
- 您可以确保现有 IdM netgroup 中没有特定的 IdM 用户、组、主机和主机组以及嵌套的 IdM netgroup。
- 您可以确保 IdM 中存在或不存在特定的 netgroup。
Jira:RHELPLAN-137411
新的 ipaclient_configure_dns_resolver
和 ipaclient_dns_servers
Ansible ipaclient
角色变量指定客户端的 DNS 解析器
在以前的版本中,当使用 ansible-freeipa
ipaclient
角色安装身份管理(IdM)客户端时,无法在安装过程中指定 DNS 解析器。您必须在安装前配置 DNS 解析器。
有了这个增强,在使用 ipaclient
角色使用 ipaclient_configure_dns_resolver
和 ipaclient_dns_servers
变量安装 IdM 客户端时,您可以指定 DNS 解析器。因此,ipaclient
角色会修改 resolv.conf
文件和 NetworkManager
和 systemd-resolved
工具,以便以类似于 ansible-freeipa
ipaserver
角色在 IdM 服务器上配置 DNS 解析器的方式,在客户端上配置 DNS 解析器。因此,在使用 ipaclient
角色安装 IdM 客户端时配置 DNS 现在更为高效。
使用 ipa-client-install
命令行安装程序安装 IdM 客户端仍然需要在安装前配置 DNS 解析器。
Jira:RHELPLAN-137406
使用 ipaclient
角色安装带有 OTP 的 IdM 客户端不需要之前修改 Ansible 控制器
在以前的版本中,Ansible 控制器上的 kinit
命令是获取身份管理(IdM)客户端部署的一次性密码(OTP)的先决条件。在 Red Hat Ansible Automation Platform (AAP)上获取 OTP 是一个问题,因为默认情况下没有安装 krb5-workstation
软件包。
有了这个更新,对管理员的 TGT 的请求被委派给第一个指定或发现的 IdM 服务器。现在,您可以使用 OTP 授权安装 IdM 客户端,而无需额外修改 Ansible 控制器。这简化了使用带有 AAP 的 ipaclient
角色。
Jira:RHELPLAN-137403
IdM 现在在 Kerberos 票据中强制存在 MS-PAC 结构
从 RHEL 9.2 开始,为了提高安全性,身份管理(IdM)和 MIT Kerberos 现在强制在 RHEL IdM Kerberos 分发中心(KDC)发布的 Kerberos 票据存在特权属性证书(MS-PAC)结构。
在 2022 年 11 月,为了响应 CVE-2022-37967,Microsoft 引入了一个扩展签名,它是通过整个 MS-PAC 结构而不是服务器校验和来计算的。从 RHEL 9.2 开始,IdM KDC 发布的 Kerberos 票据现在也包含扩展的签名。
IdM 中还没有强制扩展签名的存在。
Jira:RHELPLAN-159146
KDC 的新领域配置模板启用 FIPS 140-3 兼容密钥加密
此更新在 /var/kerberos/krb5kdc/kdc.conf
文件中提供了一个新的 EXAMPLE.COM
示例领域配置。它会带来两个变化:
-
FIPS 140-3 兼容
AES HMAC SHA-2
系列被添加到密钥加密的支持类型的列表中。 -
KDC 主密钥的加密类型从
AES 256 HMAC SHA-1
切换到AES 256 HMAC SHA-384
。
这个更新是独立的 MIT 领域。不要更改 RHEL 身份管理中的 Kerberos 分发中心(KDC)配置。
建议为新领域使用此配置模板。模板不会影响任何已部署的领域。如果您计划根据模板升级领域的配置,请考虑以下几点:
对于升级主密钥,更改 KDC 配置中的设置不够充分。按照 MIT Kerberos 文档中描述的流程操作: https://web.mit.edu/kerberos/krb5-1.20/doc/admin/database.html#updating-the-master-key
将 AES HMAC SHA-2
系列添加到密钥加密的支持类型中在任何时候都安全,因为它不会影响 KDC 中的现有条目。只有在创建新主体或续订凭证时,才会生成密钥。请注意,无法根据现有密钥生成此新类型的密钥。要使这些新加密类型对某个主体可用,必须续订其凭证,这意味着也续订服务主体的 keytab。
主体不具有 AES HMAC SHA-2
密钥的唯一情况是活动目录(AD)跨域票据授予票据(TGT)。由于 AD 不实现 RFC8009,所以不使用 AES HMAC SHA-2
加密类型系列。因此,使用 AES HMAC SHA-2
加密的 跨域 TGT 的跨域 TGS-REQ 将失败。防止 MIT Kerberos 客户端使用针对 AD 的 AES HMAC SHA-2
的最佳方法是不为 AD 跨域主体提供 AES HMAC SHA-2
密钥。要做到这一点,请确保使用 AD 支持的密钥加密类型的明确列表创建跨域 TGT 条目:
kadmin.local <<EOF add_principal +requires_preauth -e aes256-cts-hmac-sha1-96,aes128-cts-hmac-sha1-96 -pw [password] krbtgt/[MIT realm]@[AD realm] add_principal +requires_preauth -e aes256-cts-hmac-sha1-96,aes128-cts-hmac-sha1-96 -pw [password] krbtgt/[AD realm]@[MIT realm] EOF
要确保 MIT Kerboros 客户端使用 AES HMAC SHA-2
加密类型,您还必须在客户端和 KDC 配置中将这些加密类型设为 permitted
。在 RHEL 上,此设置由加密策略系统管理。例如,在使用 DEFAULT
加密策略的 RHEL 9 主机上允许 AES HMAC SHA-2
和 AES HMAC SHA-1
加密票据,而使用 FIPS
加密策略的主机只接受 AES HMAC SHA-2
票据。
使用配置文件配置 pam_pwhistory
有了这个更新,您可以在 /etc/security/pwhistory.conf
配置文件中配置 pam_pwhistory
模块。pam_pwhistory
模块保存了每个用户的最后一个密码,以管理密码更改历史记录。authselect
中还添加了支持,允许您向 PAM 堆栈中添加 pam_pwhistory
模块。
Bugzilla:2126640,Bugzilla:2142805
IdM 现在支持新的活动目录证书映射模板
活动(AD)域管理员可以使用 altSecurityIdentities
属性手动将证书映射到 AD 中的用户。此属性有六个值,但三个映射现在被视为不安全。作为 2022 年 5 月 10 日安全更新 的一部分,当这个更新安装在域控制器上后,所有设备都处于兼容性模式。如果证书被弱映射到用户,则身份验证会如预期发生,但会记录一条警告信息,标识与完整执行模式不兼容的证书。从 2023 年 11 月 14 日起,所有设备都将更新为全强制模式,如果证书不符合强映射标准,则身份验证将被拒绝。
IdM 现在支持新的映射模板,使 AD 管理员更容易地使用新规则,而不维护这两个模板。IdM 现在支持以下新映射模板:
-
序列号:
LDAPU1:(altSecurityIdentities=X509:<I>{issuer_dn!ad_x500}<SR>{serial_number!hex_ur})
-
主题键 Id:
LDAPU1: (altSecurityIdentities=X509:<SKI>{subject_key_id!hex_u})
-
用户 SID:
LDAPU1: (objectsid={sid})
如果您不想使用新的 SID 扩展重新发布证书,您可以通过将适当的映射字符串添加到 AD 中的 altSecurityIdentities
属性来创建手动映射。
samba
rebase 到版本 4.17.5
samba
软件包已升级到上游版本 4.17.5,与之前的版本相比,它提供了 bug 修复和增强。最显著的更改:
- 之前版本中的安全性改进会影响服务器消息块(SMB)服务器对高元数据数据工作负载的性能。这个更新在这种情况下提高了性能。
-
--json
选项添加到smbstatus
工具中,以显示 JSON 格式的详细的状态信息。 -
samba.smb.conf
和samba.samba3.smb.conf
模块已添加到smbconf
Python API 中。您可以在 Python 程序中使用它们来原生读和(可选)写 Samba 配置。
请注意,从 Samba 4.11 开始,服务器消息块块版本 1 (SMB1) 协议已被弃用,并将在以后的版本中删除。
在启动 Samba 前备份数据库文件。当 smbd
、nmbd
或 winbind
服务启动时,Samba 会自动更新其 tdb
数据库文件。红帽不支持降级 tdb
数据库文件。
更新 Samba 后,使用 testparm
工具来验证 /etc/samba/smb.conf
文件。
有关显著变化的更多信息,请在更新前阅读 上游发行注记。
ipa-client-install
现在支持使用 PKINIT 进行身份验证
在以前的版本中,ipa-client-install
仅支持基于密码的身份验证。这个更新支持使用 PKINIT 进行身份验证的 ipa-client-install
。
例如:
ipa-client-install --pkinit-identity=FILE:/path/to/cert.pem,/path/to/key.pem --pkinit-anchor=FILE:/path/to/cacerts.pem
要使用 PKINIT 身份验证,您必须在 IdM 和 PKINIT 证书的 CA 链之间建立信任。如需更多信息,请参阅 ipa-cacert-manage (1)
手册页。此外,证书身份映射规则必须将主机的 PKINIT 证书映射到有权限添加或修改主机记录的主体。如需更多信息,请参阅 ipa certmaprule-add
手册页。
Red Hat IdM 和证书系统现在支持 EST 协议
通过安全传输(EST)注册是一个新的证书系统子系统功能,它在 RFC 7030 中指定,用于提供证书颁发机构(CA)的证书。EST 实现服务器端的操作,如 /getcacerts
、/simpleenroll
和 /simplereenroll
。
请注意,红帽支持证书系统中的 EST 和原始简单证书注册协议(SCEP)。
增强负缓存使用率
这个更新提高了按安全标识符(SID)查找的 SSSD 性能。现在,它将在单个域的负缓存中存储不存在的 SID,并请求 SID 所属的域。
目录服务器现在支持 TLS 的 ECDSA 私钥
在以前的版本中,您无法使用比 RSA 更强大的加密算法来保护目录服务器连接。有了这个增强,目录服务器现在同时支持 ECDSA 和 RSA 密钥。
目录服务器现在支持搜索操作的扩展日志记录
在以前的版本中,访问日志中的记录不显示为何一些搜索操作有非常大的 etime
值。有了这个版本,您可以启用统计信息的日志,如多个索引查找(数据库读取操作)以及每个搜索操作的索引查找的整个持续时间。这些统计信息记录有助于分析为什么 etime
值会如此耗费资源。
Bugzilla:1859271
NUNC_STANS 错误日志记录级别被新的 1048576
日志记录级别替代
在以前的版本中,您无法轻松地调试密码策略问题。对错误日志使用新的 1048576
日志记录级别,您现在可以检查以下密码策略信息:
- 哪个本地策略拒绝或允许密码更新。
- 完全违反了语法。
目录服务器引入了安全日志
为了为了随着时间的推移正确地跟踪问题,目录服务器现在有一个专门维护安全数据的日志。与具有所有信息的访问日志相比,安全日志不会快速轮转,且消耗较少的磁盘资源,但需要昂贵的解析来获取安全数据。
新的服务器日志记录安全事件,如身份验证事件、授权问题、DoS/TCP 攻击以及其他事件。
目录服务器将安全日志与其他日志文件一起存储在 /var/log/dirsrv/slapd-instance_name/
目录中。
目录服务器现在可以压缩归档的日志文件
在以前的版本中,不压缩归档的日志文件。有了这个版本,您可以启用访问、错误、审计、审计失败日志、安全日志文件压缩来保存磁盘空间。请注意,默认只启用安全日志文件压缩。
使用 cn=config
条目中的以下新配置属性来管理压缩:
-
用于访问日志的
nsslapd-accesslog-compress
-
用于错误日志的
nsslapd-errorlog-compress
-
用于审计日志的
nsslapd-auditlog-compress
-
用于审计失败日志的
nsslapd-auditfaillog-compress
-
用于安全日志的
nsslapd-securelog-compress
Bugzilla:1132524
新的 pamModuleIsThreadSafe
配置选项现在可用
当 PAM 模块是线程安全的时,您可以通过将新的 pamModuleIsThreadSafe
配置选项设置为 yes
来提高 PAM 身份验证吞吐量和特定模块的响应时间:
pamModuleIsThreadSafe: yes
此配置应用于 PAM 模块配置条目( cn=PAM Pass Through Auth,cn=plugins,cn=config
的子级)。
在 dse.ldif
配置文件或 ldapmodify
命令中使用 pamModuleIsThreadSafe
选项。请注意,ldapmodify
命令要求您重启服务器。
目录服务器现在可以导入证书包
在以前的版本中,当尝试使用 dsconf
或 dsctl
工具添加证书包时,流程会失败,并显示错误,证书包没有被导入。此行为是由 certutil
工具造成的,其一次只能导入一个证书。有了这个更新,目录服务器可以使用 certutil
临时解决问题,证书包可被成功添加。
默认行为更改:目录服务器现在返回一个与添加到数据库时拼写完全相同的 DN
使用 cn=config
条目下的新的 nsslapd-return-original-entrydn
参数,您可以管理目录服务器如何在搜索操作期间返回条目的可分辨名称(DN)。
默认情况下,nsslapd-return-original-entrydn
参数被设置为 on
,目录服务器会返回最初添加到数据库中时完全相同的 DN 。例如,您添加或修改了条目 uid=User,ou=PEople,dc=ExaMPlE,DC=COM
,并打开了设置,目录服务器会为条目返回相同拼写的 DN :uid=User,ou=PEople,dc=ExaMPlE,DC=COM
。
当 nsslapd-return-original-entrydn
参数设置为 off
时,目录服务器通过将条目的相对 DN (RDN)与存储在 cn=userroot,cn=ldbm database,cn=plugins,cn=config
下的数据库后缀配置中的基本 DN 放在一起,来生成条目 DN。如果将基础 DN 设置为 ou=people,dc=example,dc=com
,将 nsslapd-return-original-entrydn
设置为 off
,则目录服务器会在搜索过程中返回 uid=User,ou=people,dc=example,dc=com
,而不是在将条目添加到数据库时 DN 的拼写。
MIT Kerberos 支持 Ticket 和 Extended KDC MS-PAC 签名
使用此更新,红帽使用的 MIT Kerberos 实现对 Microsoft 引入的两种 Privilege Attribute 证书(PAC)签名类型的支持,以响应最新的 CVE。具体来说,支持以下签名:
票据签名
- 已在 KB4598347 中发布
- 解决 CVE-2020-17049,也称为 "Bronze-Bit" 攻击
扩展的 KDC 签名
- 已在 KB5020805 中发布
- 解决 CVE-2022-37967
另请参阅 RHSA-2023:2570 和 krb5-1.20.1-6.el9
。
用于目录服务器审计日志的新的 nsslapd-auditlog-display-attrs
配置参数
在以前的版本中,区分名称(DN)是在审计日志事件中识别目标条目的唯一方法。使用新的 nsslapd-auditlog-display-attrs
参数,您可以将目录服务器配置为在审计日志中显示额外的属性,提供有关修改的条目的更多详情。
例如,如果您将 nsslapd-auditlog-display-attrs
参数设置为 cn
,则审计日志会在输出中显示条目 cn
属性。要包含修改的条目的所有属性,请使用星号(*
)作为参数值。
如需更多信息,请参阅 nsslapd-auditlog-display-attrs。