第 2 章 将 IdM 客户端从 RHEL 7 升级到 RHEL 8
与 IdM 服务器不同,支持将 IdM 客户端从 RHEL 7 原位升级到 RHEL 8。
在 RHEL 8 中,一些不常用的选项和不使用的功能已从系统安全服务守护进程(SSSD)中删除,该服务负责 IdM 环境中的身份验证。有关删除这些选项的步骤,请参见以下小节。
2.1. 升级到 RHEL 8 后更新 SSSD 配置
将身份管理(IdM)客户端从 Red Hat Enterprise Linux (RHEL) 7 升级到 RHEL 8 后,某些 SSSD 配置选项可能不再支持。leapp
upgrade 应用程序可能会在生成的预升级报告中提供有关此类选项的更多详情。
以下流程描述了如何更新 SSSD 配置来解决这些问题。
先决条件
- 您已将 IdM 客户端从 RHEL 7 升级到 RHEL 8。
-
你需要有
root
权限才能编辑/etc/sssd/sssd.conf
。
2.1.1. 从 本地
ID 提供程序切换到 文件
ID 提供程序
如果您看到以下错误,请将 本地
ID 提供程序替换为 文件
ID 提供程序:
SSSD Domain "example.com": local provider is no longer supported and the domain will be ignored.
Local provider is no longer supported.
步骤
确保您通过
本地
ID 提供程序检索的任何用户和组也在/etc/passwd
和/etc/group
文件中。这样可确保文件
提供程序可以访问这些用户和组。如果需要创建用户,请使用
useradd
命令。如果需要指定 UID,请添加-u
选项:[root@client ~]# useradd -u 3001 username
如果需要创建组,请使用
groupadd
命令。如果需要指定 GID,请添加-g
选项:[root@client ~]# groupadd -g 5001 groupname
-
在文本编辑器中打开
/etc/sssd/sssd.conf
配置文件。 将
id_provider=local
替换为id_provider=files
。[domain/example.com] id_provider = files ...
-
保存
/etc/sssd/sssd.conf
配置文件。 重启 SSSD 以载入配置更改。
[root@client ~]# systemctl restart sssd
2.1.2. 删除已弃用的选项
如果您看到关于已弃用选项的以下任一错误,红帽建议从 /etc/sssd/sssd.conf
配置文件中删除这些选项:
SSSD Domain "example.com": option ldap_groups_use_matching_rule_in_chain has no longer any effect Option ldap_groups_use_matching_rule_in_chain was removed and it will be ignored.
SSSD Domain "example.com": option ldap_initgroups_use_matching_rule_in_chain has no longer any effect Option ldap_initgroups_use_matching_rule_in_chain was removed and it will be ignored.
步骤
-
在文本编辑器中打开
/etc/sssd/sssd.conf
配置文件。 -
删除任何出现
ldap_groups_use_matching_rule_in_chain
或ldap_initgroups_use_matching_rule_in_chain
选项的地方。 -
保存
/etc/sssd/sssd.conf
配置文件。 重启 SSSD 以载入配置更改。
[root@client ~]# systemctl restart sssd
2.1.3. 为 sudo 规则启用通配符匹配
以下警告表示,在 RHEL 8 中,带有通配符的 sudo
规则默认不起作用,因为 ldap_sudo_include_regexp
选项现在默认设置为 false
。
SSSD Domain "example.com": sudo rules containing wildcards will stop working.
Default value of ldap_sudo_include_regexp changed from true to false for performance reason.
如果您使用带有通配符的 sudo
规则,并希望启用通配符匹配,请手动将 ldap_sudo_include_regexp
选项设置为 true
。
红帽建议您不要使用通配符来匹配 sudo
规则。
如果 ldap_sudo_include_regexp
选项设为 true
,SSSD 会下载 sudoHost
属性中包含通配符的每个 sudo
规则,这会对 LDAP 搜索性能造成负面影响。
步骤
-
在文本编辑器中打开
/etc/sssd/sssd.conf
配置文件。 在
example.com
域中,设置ldap_sudo_include_regexp=true
。[domain/example.com] ... ldap_sudo_include_regexp = true ...
-
保存
/etc/sssd/sssd.conf
配置文件。 重启 SSSD 以载入配置更改。
[root@client ~]# systemctl restart sssd