Red Hat Training

A Red Hat training course is available for RHEL 8

110.3. 如果 IdM 信任新域,请手动添加 ID 映射配置

Samba 需要一个 ID 映射配置,用户可从该域访问资源。在 IdM 客户端上运行的现有 Samba 服务器上,在管理员向 Active Directory(AD)域添加了新的信任后,您必须手动添加 ID 映射配置。

先决条件

  • 您在 IdM 客户端中配置了 Samba。之后,IdM 增加了一个新的信任。
  • 在可信 AD 域中必须禁用 Kerberos 的 DES 和 RC4 加密类型。为了安全起见,RHEL 8 不支持这些弱加密类型。

流程

  1. 使用主机的 keytab 进行身份验证:

    [root@idm_client]# kinit -k
  2. 使用ipa idrange-find命令来显示新域的基本 ID 和 ID 范围大小。例如,以下命令显示了ad.example.com域的值:

    [root@idm_client]# ipa idrange-find --name="AD.EXAMPLE.COM_id_range" --raw
    ---------------
    1 range matched
    ---------------
      cn: AD.EXAMPLE.COM_id_range
      ipabaseid: 1918400000
      ipaidrangesize: 200000
      ipabaserid: 0
      ipanttrusteddomainsid: S-1-5-21-968346183-862388825-1738313271
      iparangetype: ipa-ad-trust
    ----------------------------
    Number of entries returned 1
    ----------------------------

    在后续步骤中,您需要ipabaseidipaidrangesize属性的值。

  3. 要计算可用最高的 ID,请使用以下公式:

    maximum_range = ipabaseid + ipaidrangesize - 1

    使用上一步中的值,ad.example.com域的最大可用 ID 是1918599999(1918400000 + 200000 - 1)。

  4. 编辑/etc/samba/smb.conf文件,并将域的 ID 映射配置添加到[global]部分:

    idmap config AD : range = 1918400000 - 1918599999
    idmap config AD : backend = sss

    ipabaseid属性的值指定为最小值,将上一步中的计算值指定为该范围的最大值。

  5. 重启smbwinbind服务:

    [root@idm_client]# systemctl restart smb winbind

验证步骤

  • 使用 Kerberos 身份验证列出 Samba 服务器中的共享:

    $ smbclient -L idm_client.idm.example.com -U user_name --use-kerberos=required
    lp_load_ex: changing to config backend registry
    
        Sharename       Type      Comment
        ---------       ----      -------
        example         Disk
        IPC$            IPC       IPC Service (Samba 4.15.2)
    ...