第 8 章 配置外部身份验证


通过使用外部身份验证,您可以从外部身份提供程序中的用户组成员资格生成用户和用户组权限。因此,您不必创建这些用户,并在 Satellite 服务器上手动维护其组成员资格。Red Hat Satellite 支持配置外部身份验证的四个常规场景:
以上场景关于提供对 Satellite 服务器的访问。此外,通过 Satellite 置备的主机也可以与 IdM 域集成。Red Hat Satellite 有一个域功能,它会自动管理注册到域或域供应商的任何系统的生命周期。请参阅 第 8.5 节 “置备主机的外部身份验证” 了解更多信息。

8.1. 使用 LDAP

8.1.1. 为安全 LDAP 配置 TLS (LDAPS)

注意
虽然本节中介绍了 LDAP 集成,但红帽建议您使用 SSSD 并根据 IdM、AD 或 LDAP 服务器配置它。本指南的其他地方会解释这些首选配置。
如果您需要 Red Hat Satellite 使用 TLS 建立安全 LDAP 连接(LDAPS),首先获取您要连接的 LDAP 服务器使用的证书,并将其标记为信任的 Satellite 服务器基本操作系统,如下所述。如果您的 LDAP 服务器使用带中间证书颁发机构的证书链,则链中的所有 root 和中间证书都必须被信任,因此请确保获取所有证书。如果您目前不需要安全 LDAP,请继续 过程 8.1, “配置 LDAP 身份验证:”

从 LDAP 服务器获取证书

如果您使用 Active Directory 证书服务,请使用 Base-64 编码 X.509 格式导出企业 PKI CA 证书。如需有关 从 Active Directory 服务器创建和导出 CA 证书的信息,请参阅 如何在 Satellite 6.2 上使用 TLS 配置 Active Directory 身份验证
将 LDAP 服务器证书下载到安装 Satellite 服务器的 Red Hat Enterprise Linux 系统上的临时位置,完成后将其删除。例如: /tmp/example.crt。文件扩展 .cer.crt 只是惯例,可以引用 DER 二进制文件或 PEM ASCII 格式证书。

信任 LDAP 服务器中的证书

Red Hat Satellite Server 要求 LDAP 身份验证的 CA 证书是 /etc/pki/tls/certs/ 目录中的单个文件。
使用 install 命令将导入的证书安装到具有正确权限的 /etc/pki/tls/certs/ 目录中。
# install /tmp/example.crt /etc/pki/tls/certs/
Copy to Clipboard Toggle word wrap
root 用户身份输入以下命令信任从 LDAP 服务器获取的 example.crt 证书:
# ln -s example.crt /etc/pki/tls/certs/$(openssl x509 -noout -hash -in /etc/pki/tls/certs/example.crt).0
Copy to Clipboard Toggle word wrap
重启 httpd 服务:
  • 在 Red Hat Enterprise Linux 6 中:
    # service httpd restart
    Copy to Clipboard Toggle word wrap
  • 在 Red Hat Enterprise Linux 7 上:
    # systemctl restart httpd
    Copy to Clipboard Toggle word wrap

8.1.2. 配置 Red Hat Satellite 以使用 LDAP

按照以下步骤,使用 Web UI 配置 LDAP 身份验证。请注意,如果您需要 Satellite Web UI 上使用 Kerberos 的单点登录功能,您应该改为使用 IdM 和 AD 外部身份验证。有关这些选项的更多信息,请参阅 第 8.2 节 “使用身份管理”第 8.3 节 “使用 Active Directory”

过程 8.1. 配置 LDAP 身份验证:

  1. 将允许网络信息系统(NIS)服务布尔值设置为 true,以防止 SELinux 停止传出的 LDAP 连接:
    • Red Hat Enterprise Linux 6:
      # setsebool -P allow_ypbind on
      Copy to Clipboard Toggle word wrap
    • Red Hat Enterprise Linux 7:
      # setsebool -P nis_enabled on
      Copy to Clipboard Toggle word wrap
  2. 导航到 Administer LDAP Authentication
  3. 单击 New authentication source
  4. LDAP 服务器 选项卡中,输入 LDAP 服务器的名称、主机名、端口和服务器类型。默认端口为 389,默认的服务器类型是 POSIX (您可以根据身份验证服务器类型选择 FreeIPA 或 Active Directory)。对于 TLS 加密连接,请选中 LDAPS 复选框来启用加密。端口应更改为 636,这是 LDAPS 的默认值。
  5. Account 选项卡中,输入帐户信息和域名详情。有关描述和示例,请参阅 第 8.1.3 节 “LDAP 设置描述和示例”
  6. Attribute mappings 选项卡中,将 LDAP 属性映射到 Satellite 属性。您可以映射登录名称、名字、Surname、电子邮件地址和 Photo 属性。如需示例,请参阅 第 8.1.3 节 “LDAP 设置描述和示例”
  7. Locations 选项卡上,从左侧表中选择位置。所选位置将分配给从 LDAP 身份验证源创建的用户,并在首次登录后可用。
  8. Organizations 选项卡上,从左侧列表中选择机构。所选机构将分配给从 LDAP 身份验证源创建的用户,并在首次登录后可用。
  9. 单击 Submit
Satellite 服务器现在被配置为使用 LDAP 服务器。如果您没有在 Satellite 中选择 Automatically create accounts,请参阅 第 4.1.1 节 “创建用户” 来手动创建用户帐户。如果您选择了 选项,LDAP 用户现在可以使用其 LDAP 帐户和密码登录 Satellite。第一次登录后,Satellite 管理员需要手动分配角色。请参阅 第 4.1.3 节 “为用户分配角色” 在 Satellite 中分配适当的角色。

8.1.3. LDAP 设置描述和示例

下表提供了 帐户 选项卡中每个设置的描述。
Expand
表 8.1. 帐户选项卡设置
设置 描述
帐户用户名 对 LDAP 服务器具有读取访问权限的 LDAP 用户。如果服务器允许匿名读取,则不需要用户名,否则使用用户对象的完整路径。例如:
uid=$login,cn=users,cn=accounts,dc=example,dc=com
Copy to Clipboard Toggle word wrap
$login 变量将登录页面中输入的用户名存储为字面字符串。在变量扩展时将访问该值。
变量不能与来自 LDAP 源的外部用户组一起使用,因为 Satellite 需要在没有用户登录的情况下检索组列表。使用匿名或专用服务用户。
帐户密码
帐户用户名 字段中定义的用户的 LDAP 密码。如果 帐户用户名 使用 $login 变量,则此字段可以保持空白。
Base DN
LDAP 目录的顶级域名。
组基本 DN
包含组的 LDAP 目录树的顶级域名。
LDAP 过滤器
用于限制 LDAP 查询的过滤器。
在 Satellite 中自动创建帐户
如果选择了此选项,则当 LDAP 用户第一次登录 Satellite 时,会自动为其创建 Satellite 用户帐户。用户将看到 权限拒绝 警告,并需要联系其 Satellite 管理员,使其用户帐户与角色相关联。
usergroup 同步
如果选择了这个选项,则用户的用户组成员资格会在用户登录时自动同步,这样可确保成员资格始终保持最新状态。如果清除此选项,Satellite 依赖于 Cron 作业来定期同步组成员资格(默认为 30 分钟)。有关更多上下文,请参阅 过程 8.6, “配置外部用户组:”
下表显示了不同类型的 LDAP 连接的示例设置。以下所有示例都使用一个名为 redhat 的专用服务帐户,该帐户对用户和组条目具有绑定、读取和搜索权限。请注意,LDAP 属性名称区分大小写。
Expand
表 8.2. Active Directory LDAP 连接设置示例
设置 示例值
帐户用户名 DOMAIN\redhat
帐户密码 P@ssword
基础 DN DC=example,DC=COM
组基本 DN CN=Users,DC=example,DC=com
登录名称属性 userPrincipalName
名字属性 givenName
surname 属性 sn
电子邮件地址属性 mail
注意
userPrincipalName 允许在用户名中使用空格。登录名称属性 sAMAccountName (上面表中没有列出)提供与旧的 Microsoft 系统向后兼容。sAMAccountName 不允许在用户名中使用空格。
Expand
表 8.3. FreeIPA 或 Red Hat Identity Management LDAP 连接设置示例
设置 示例值
帐户用户名 uid=redhat,cn=users,cn=accounts,dc=example,dc=com
基础 DN dc=example,dc=com
组基本 DN cn=groups,cn=accounts,dc=example,dc=com
登录名称属性 uid
名字属性 givenName
surname 属性 sn
电子邮件地址属性 mail
Expand
表 8.4. POSIX (OpenLDAP) LDAP 连接的设置示例
设置 示例值
帐户用户名 uid=redhat,ou=users,dc=example,dc=com
基础 DN dc=example,dc=com
组基本 DN cn=employee,ou=userclass,dc=example,dc=com
登录名称属性 uid
名字属性 givenName
surname 属性 sn
电子邮件地址属性 mail
返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat