14.2. 使用红帽身份管理
本节介绍如何将 Satellite 服务器与红帽身份管理服务器集成以及如何启用基于主机的访问控制。
您可以将 Red Hat Identity Management 附加到没有单点登录支持的外部身份验证源。如需更多信息,请参阅 第 14.1 节 “使用 LDAP”。
用户不能同时使用 Red Hat Identity Management 和 LDAP 作为身份验证方法。用户使用某种方法进行身份验证后,他们无法使用其他方法。
要更改用户的身份验证方法,您必须从 Satellite 中删除自动创建的用户。
前提条件
- Satellite 服务器的基本操作系统必须由您的组织的红帽身份管理管理员在 Red Hat Identity Management 域中注册。
本章中的示例假定 Red Hat Identity Management 和 Satellite 配置之间的隔离。但是,如果您对两个服务器具有管理员特权,您可以配置 Red Hat Identity Management,如 Red Hat Enterprise Linux 7 Linux 域身份、身份验证和策略指南 中所述。
14.2.1. 在 Satellite 服务器上配置红帽身份管理身份验证 复制链接链接已复制到粘贴板!
在 Satellite CLI 中,首先在红帽身份管理服务器上创建主机条目来配置红帽身份管理身份验证。
流程
在 Red Hat Identity Management 服务器上,要进行身份验证,请输入以下命令并在提示时输入您的密码:
kinit admin
# kinit admin
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 要验证您是否经过身份验证,请输入以下命令:
klist
# klist
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在 Red Hat Identity Management 服务器上,为 Satellite 服务器创建一个主机条目并生成一次性密码,例如:
ipa host-add --random hostname
# ipa host-add --random hostname
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注意生成的一次性密码必须在客户端上使用,以完成 Red Hat Identity Management-enrollment。
有关主机配置属性的更多信息,请参阅 Red Hat Enterprise Linux 7 Linux 域身份、身份验证和策略指南中的 关于 主机条目配置属性。
为 Satellite 服务器创建 HTTP 服务,例如:
ipa service-add HTTP/hostname
# ipa service-add HTTP/hostname
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 有关管理服务的更多信息,请参阅 Red Hat Enterprise Linux 7 Linux 域身份、身份验证和策略指南中的管理服务。https://access.redhat.com/documentation/zh-cn/red_hat_enterprise_linux/7/html/linux_domain_identity_authentication_and_policy_guide/services
在 Satellite 服务器中,安装 IPA 客户端:
警告此命令可能会在安装软件包的过程中重新启动 Satellite 服务。有关在 Satellite 上安装和更新软件包的详情请参考 第 11.8 节 “在 Satellite 服务器或 Capsule 服务器的基本操作系统中管理软件包”。
satellite-maintain packages install ipa-client
# satellite-maintain packages install ipa-client
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在 Satellite 服务器上,以 root 用户身份输入以下命令来配置 Red Hat Identity Management-enrollment:
ipa-client-install --password OTP
# ipa-client-install --password OTP
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将 OTP 替换为 Red Hat Identity Management 管理员提供的一次性密码。
如果 Satellite 服务器在 Red Hat Enterprise Linux 7 上运行,请执行以下命令:
subscription-manager repos --enable rhel-7-server-optional-rpms
# subscription-manager repos --enable rhel-7-server-optional-rpms
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 安装程序依赖于 Red Hat Enterprise Linux 7 上的软件包,它们位于可选存储库
rhel-7-server-optional-rpms
中。使用以下命令将
foreman-ipa-authentication
设置为 true:satellite-installer --foreman-ipa-authentication=true
# satellite-installer --foreman-ipa-authentication=true
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 重启 Satellite 服务:
satellite-maintain service restart
# satellite-maintain service restart
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
外部用户现在可以使用其红帽身份管理凭据登录 Satellite。现在,他们可以选择直接使用其用户名和密码直接登录 Satellite 服务器,或者利用配置的 Kerberos 单点登录,并在客户端机器上获取票据并自动登录。也支持使用一次性密码(2FA OTP)进行双因素身份验证。如果 Red Hat Identity Management 中的用户被配置为 2FA,并且 Satellite 服务器在 Red Hat Enterprise Linux 7 上运行,则此用户也可以使用 OTP 向 Satellite 进行身份验证。
14.2.2. 配置基于主机的身份验证控制 复制链接链接已复制到粘贴板!
HBAC 规则定义红帽身份管理用户允许访问的机器。您可以在 Red Hat Identity Management 服务器上配置 HBAC,以防止所选用户访问 Satellite 服务器。通过这种方法,您可以防止 Satellite 为不允许登录的用户创建数据库条目。有关 HBAC 的更多信息,请参阅 Red Hat Enterprise Linux 7 Linux 域身份、身份验证和策略指南中的 配置基于主机的访问控制。
在 Red Hat Identity Management 服务器上,配置基于主机的身份验证控制(HBAC)。
流程
在 Red Hat Identity Management 服务器上,要进行身份验证,请输入以下命令并在提示时输入您的密码:
kinit admin
# kinit admin
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 要验证您是否经过身份验证,请输入以下命令:
klist
# klist
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 在红帽身份管理服务器上创建 HBAC 服务和规则,并将它们链接在一起。以下示例使用 PAM 服务名称 satellite-prod。在 Red Hat Identity Management 服务器上执行以下命令:
ipa hbacsvc-add satellite-prod ipa hbacrule-add allow_satellite_prod ipa hbacrule-add-service allow_satellite_prod --hbacsvcs=satellite-prod
# ipa hbacsvc-add satellite-prod # ipa hbacrule-add allow_satellite_prod # ipa hbacrule-add-service allow_satellite_prod --hbacsvcs=satellite-prod
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 添加需要访问服务 satellite-prod 的用户,以及 Satellite 服务器的主机名:
ipa hbacrule-add-user allow_satellite_prod --user=username ipa hbacrule-add-host allow_satellite_prod --hosts=satellite.example.com
# ipa hbacrule-add-user allow_satellite_prod --user=username # ipa hbacrule-add-host allow_satellite_prod --hosts=satellite.example.com
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 或者,主机组和用户组可以添加到 allow_satellite_prod 规则中。
要检查规则的状态,请执行:
ipa hbacrule-find satellite-prod ipa hbactest --user=username --host=satellite.example.com --service=satellite-prod
# ipa hbacrule-find satellite-prod # ipa hbactest --user=username --host=satellite.example.com --service=satellite-prod
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 确保 Red Hat Identity Management 服务器上禁用了 allow_all 规则。有关如何在不破坏其他服务的情况下执行此操作的说明,请参阅红帽客户门户网站中的 IdM 文章 如何在 IdM 中配置 HBAC 规则。
配置红帽身份管理与 Satellite 服务器集成,如 第 14.2.1 节 “在 Satellite 服务器上配置红帽身份管理身份验证” 所述。在 Satellite 服务器上,将 PAM 服务定义为 root :
satellite-installer --foreman-pam-service=satellite-prod
# satellite-installer --foreman-pam-service=satellite-prod
Copy to Clipboard Copied! Toggle word wrap Toggle overflow