Red Hat Training

A Red Hat training course is available for RHEL 8

30.7. 添加 ID 视图以覆盖 IdM 客户端中的 IdM 用户主目录

Identity Management(IdM)中的 ID 视图覆盖与特定 IdM 用户关联的 POSIX 属性值。本节论述了如何在名为 host1 的 IdM 客户端上创建应用于 idm_user 的 ID 视图,以便用户将 /home/user_1234/ 目录用作用户主目录,而不是 /home/idm_user/

先决条件

  • 具有 host1.idm.example.com 的 root 访问权限。
  • 您以具有所需特权的用户身份登录,如 admin

流程

  1. 以 root 用户身份,创建您要在 host1.idm.example.com 上用作用户主目录的目录

    [root@host1 /]# mkdir /home/user_1234/
  2. 更改目录的所有权:

    [root@host1 /]# chown idm_user:idm_user /home/user_1234/
  3. 创建 ID 视图。例如,创建名为 example_for_host1 的 ID 视图:

    $ ipa idview-add example_for_host1
    ---------------------------
    Added ID View "example_for_host1"
    ---------------------------
      ID View Name: example_for_host1
  4. 将用户覆盖添加到 example_for_host1 ID 视图。覆盖用户主目录:

    • 输入 ipa idoverrideuser-add 命令
    • 添加 ID 视图的名称
    • 添加用户名,也称为定位符
    • 添加 --homedir 选项:
    $ ipa idoverrideuser-add example_for_host1 idm_user --homedir=/home/user_1234
    -----------------------------
    Added User ID override "idm_user"
    -----------------------------
      Anchor to override: idm_user
      Home directory: /home/user_1234/
  5. example_for_host1 应用到 host1.idm.example.com 主机:

    $ ipa idview-apply example_for_host1 --hosts=host1.idm.example.com
    -----------------------------
    Applied ID View "example_for_host1"
    -----------------------------
    hosts: host1.idm.example.com
    ---------------------------------------------
    Number of hosts the ID View was applied to: 1
    ---------------------------------------------
    注意

    ipa idview-apply 命令也接受 --hostgroups 选项。选项将 ID 视图应用到属于指定主机组但不会将 ID 视图与主机组本身相关联的主机。相反,hostgroups 选项会展开指定主机组的成员,并单独应用 --hosts 选项到其中每一个。

    这意味着,如果以后将主机添加到主机组中,该 ID 视图不会应用到新主机。

  6. 将新配置立即应用到 host1.idm.example.com 系统:

    1. 以 root 身份通过 SSH 连接到该系统:

      $ ssh root@host1
      Password:
    2. 清除 SSSD 缓存:

      root@host1 ~]# sss_cache -E
    3. 重启 SSSD 守护进程:
    root@host1 ~]# systemctl restart sssd

验证步骤

  1. idm_user 用户身份通过 SSH 连接到 host 1:

    [root@r8server ~]# ssh idm_user@host1.idm.example.com
    Password:
    Activate the web console with: systemctl enable --now cockpit.socket
    
    Last login: Sun Jun 21 22:34:25 2020 from 192.168.122.229
    [idm_user@host1 /]$
  2. 打印工作目录:

    [idm_user@host1 /]$ pwd
    /home/user_1234/