9.12. 身份管理
将 Samba 作为打印服务器运行,并从 RHEL 8.4 或更早版本更新时所需的操作
有了这个更新,samba
软件包不再创建 /var/spool/samba/
目录。如果您将 Samba 用作打印服务器,并将 [printers]
共享中的 /var/spool/samba/
用于假脱机打印作业,则SELinux 会阻止 Samba 用户在此目录中创建文件。因此,打印作业失败,auditd
服务会在 /var/log/audit/audit.log
中记录一跳 denied
消息。要在更新 8.4 及更早版本的系统后避免此问题:
-
在
/etc/samba/smb.conf
文件中搜索[printers]
共享。 -
如果共享定义包含
path = /var/spool/samba/
,请更新设置,并将path
参数设为/var/tmp/
。 重启
smbd
服务:# systemctl restart smbd
如果在 RHEL 8.5 或更高版本上新安装了 Samba,则不需要任何操作。在本例中,samba-common
软件包提供的默认 /etc/samba/smb.conf
文件已将 /var/tmp/
目录用于假脱机打印作业。
Bugzilla:2009213[1]
将 cert-fix
程序与 --agent-uid pkidbuser
选项一同使用会破坏证书系统
使用带有 --agent-uid pkidbuser
选项的 cert-fix
工具可破坏证书系统的 LDAP 配置。因此,,证系统可能会变得不稳定,需要手动步骤才能恢复该系统。
FIPS 模式不支持使用共享 secret 建立跨林信任
在 FIPS 模式中使用共享 secret 建立跨林信任会失败,因为 NTLMSSP 身份验证不兼容 FIPS。要临时解决这个问题,在启用了 FIPS 模式的 IdM 域和 AD 域间建立信任时,使用 Active Directory(AD)管理帐户进行身份验证。
在 rebase 到版本 1.2.2 后,降级authselect
会破坏系统身份验证
authselect
软件包已 rebase 到最新的上游版本 1.2.2
。不支持降级 authselect
,这会中断所有用户的系统身份验证,包括root
用户。
如果您将authselect
软件包降级到 1.2.1
或更早版本,请执行以下步骤来解决这个问题:
-
在 GRUB 引导屏幕中,选择带有您要引导的内核版本的
Red Hat Enterprise Linux
,然后按e
编辑该条目。 -
在以
linux
开头的行的末尾输入single
作为单独的单词,然后按Ctrl+X
启动引导过程。 - 以单用户模式引导时,输入 root 密码。
使用以下命令恢复 authselect 配置:
# authselect select sssd --force
IdM 到 AD 跨域 TGS 请求失败
IdM Kerberos 票据中的 Privilege Attribute 证书(PAC) 信息现在使用 AES SHA-2 HMAC 加密进行签名,这是 Active Directory (AD) 不支持的。
因此,IdM 到 AD 跨域 TGS 请求(即双向信任设置)失败,并显示以下错误:
Generic error (see e-text) while getting credentials for <service principal>
对 ldap_id_use_start_tls
选项使用默认值时的潜在风险
当使用没有 TLS 的 ldap://
进行身份查找时,可能会对攻击向量构成风险。特别是中间人(MITM)攻击,例如,攻击者可以通过更改 LDAP 搜索中返回的对象的 UID 或 GID 来冒充用户。
目前,强制 TLS 的 SSSD 配置选项 ldap_id_use_start_tls
默认为 false
。确保您的设置在可信环境中操作,并决定对 id_provider = ldap
使用未加密的通信是否是安全的。注意 id_provider = ad
和 id_provider = ipa
不受影响,因为它们使用 SASL 和 GSSAPI 保护的加密连接。
如果使用未加密的通信不安全,请在 /etc/sssd/sssd.conf
文件中将 ldap_id_use_start_tls
选项设置为 true
来强制使用 TLS。计划在以后的 RHEL 版本中更改的默认行为。
Jira:RHELPLAN-155168[1]
从 RHEL 8.6 到 RHEL 8.7 或更高版本的 pki-core-debuginfo
更新会失败
将 pki-core-debuginfo
软件包从 RHEL 8.6 更新至 RHEL 8.7 或更高版本会失败。要临时解决这个问题,请运行以下命令:
-
yum remove pki-core-debuginfo
-
yum update -y
-
yum install pki-core-debuginfo
-
yum install idm-pki-symkey-debuginfo idm-pki-tools-debuginfo
Jira:RHEL-13125[1]
迁移的 IdM 用户可能会因为不匹的域 SID 而无法登录
如果您使用 ipa migrate-ds
脚本将用户从一个 IdM 部署迁移到另一个,则这些用户可能会在使用 IdM 服务时有问题,因为它们之前存在的安全标识符(SID)没有当前 IdM 环境的域 SID。例如,这些用户可以使用 kinit
工具检索 Kerberos 票据,但不能登录。要临时解决这个问题,请参阅以下知识库文章: Migrated IdM 用户因为不匹配的域 SID 而无法登录。
Jira:RHELPLAN-109613[1]
FIPS 模式下的 IdM 不支持使用 NTLMSSP 协议来建立双向跨林信任
在活动目录(AD)和启用了 FIPS 模式的身份管理(IdM)之间建立双向跨林信任会失败,因为新技术局域网管理器安全支持提供程序 (NTLMSSP)身份验证不符合 FIPS。FIPS 模式下的 IdM 不接受在尝试验证时 AD 域控制器使用的 RC4 NTLM 哈希。
为 Kerberos 主体设置过期日期时不正确的警告
如果您为 Kerberos 主体设置了密码过期日期,则使用 32 位签名的整数变量将当前的时间戳与过期时间戳进行比较。如果过期日期在将来超过 68 年,则会导致整数变量溢出,从而导致显示以下警告信息:
Warning: Your password will expire in less than one hour on [expiration date]
您可以忽略此消息,密码将在配置的日期和时间正确过期。
在 RHEL 8 上,NIS 映射中大量条目的枚举较慢
当您在 RHEL 8 上安装 nis_nss
软件包时,会缺少 /etc/default/NSS
配置文件,因为 glibc-common
软件包不再提供该文件。因此,在 RHEL 8 上,NIS 映射中大量条目的枚举比在 RHEL 7 上花费更长的时间,因为每个请求默认被单独处理,而不是批量处理。
要临时解决这个问题,请使用以下内容创建 /etc/default/nss
文件,并确保将 SETENT_BATCH_READ
变量设置为 TRUE
:
# /etc/default/nss # This file can theoretically contain a bunch of customization variables # for Name Service Switch in the GNU C library. For now there are only # four variables: # # NETID_AUTHORITATIVE # If set to TRUE, the initgroups() function will accept the information # from the netid.byname NIS map as authoritative. This can speed up the # function significantly if the group.byname map is large. The content # of the netid.byname map is used AS IS. The system administrator has # to make sure it is correctly generated. #NETID_AUTHORITATIVE=TRUE # # SERVICES_AUTHORITATIVE # If set to TRUE, the getservbyname{,_r}() function will assume # services.byservicename NIS map exists and is authoritative, particularly # that it contains both keys with /proto and without /proto for both # primary service names and service aliases. The system administrator # has to make sure it is correctly generated. #SERVICES_AUTHORITATIVE=TRUE # # SETENT_BATCH_READ # If set to TRUE, various setXXent() functions will read the entire # database at once and then hand out the requests one by one from # memory with every getXXent() call. Otherwise each getXXent() call # might result into a network communication with the server to get # the next entry. SETENT_BATCH_READ=TRUE # # ADJUNCT_AS_SHADOW # If set to TRUE, the passwd routines in the NIS NSS module will not # use the passwd.adjunct.byname tables to fill in the password data # in the passwd structure. This is a security problem if the NIS # server cannot be trusted to send the passwd.adjuct table only to # privileged clients. Instead the passwd.adjunct.byname table is # used to synthesize the shadow.byname table if it does not exist. #ADJUNCT_AS_SHADOW=TRUE
Jira:RHEL-34075[1]
在引入新选项 local_auth_policy
后,智能卡验证可能需要更新配置
升级到 RHEL 8.10 后,因为 local_auth_policy
选项引入的更改,智能卡验证可能会失败。当 local_auth_policy
设置为默认值时,会匹配
,SSSD 会限制在线可用的离线验证方法。因此,如果配置的后端没有提供智能卡验证,例如使用 auth_provider = ldap
时,它将不适用于用户。要临时解决这个问题,请通过将 local_auth_policy = enable:smartcard
添加到 sssd.conf
文件的 domain 部分来显式启用 Smartcard 验证方法,然后重新启动 SSSD。