21.4. 为排除组或用户列表部署 tlog RHEL 系统角色

您可以使用 tlog 系统角色支持 SSSD 会话记录配置选项 exclude_usersexclude_groups。按照以下步骤准备和应用 Ansible playbook,来配置 RHEL 系统,以便在 systemd 日志中排除用户或组的会话记录。

先决条件

  • 您已设置了从控制节点访问您要配置 tlog 系统角色的目标系统的 SSH 密钥。
  • 您至少有一个要在其上配置 tlog 系统角色的系统。
  • Ansible Core 软件包安装在控制机器上。
  • rhel-system-roles 软件包安装在控制机器上。

流程

  1. 使用以下内容创建一个新的 playbook.yml 文件:

    ---
    - name: Deploy session recording excluding users and groups
      hosts: all
      vars:
        tlog_scope_sssd: all
        tlog_exclude_users_sssd:
          - jeff
          - james
        tlog_exclude_groups_sssd:
          - admins
    
      roles:
        - rhel-system-roles.tlog

    其中,

    • tlog_scope_sssd:

      • all :指定您要记录所有用户和组。
    • tlog_exclude_users_sssd:

      • user names:指定您要从会话记录中排除的用户的用户名。
    • tlog_exclude_groups_sssd:

      • admins 指定要从会话记录中排除的组。
  2. (可选)验证 playbook 语法;

    # ansible-playbook --syntax-check playbook.yml
  3. 在清单文件上运行 playbook:

    # ansible-playbook -i IP_Address /path/to/file/playbook.yml -v

因此,playbook 会在您指定的系统中安装 tlog RHEL 系统角色。该角色包括 tlog-rec-session (终端会话 I/O 日志记录程序),它充当用户的登录 shell。它还会创建一个 /etc/sssd/conf.d/sssd-session-recording.conf SSSD 配置丢弃文件,供用户和组使用,但您定义为排除的用户和组除外。SSSD 解析并读取这些用户和组,并使用 tlog-rec-session 替换其用户 shell。另外,如果系统上安装了 cockpit 软件包,playbook 也会安装 cockpit-session-recording 软件包,它是一个 Cockpit 模块,供您在 web 控制台界面中查看和播放记录。

验证步骤

要验证 SSSD 配置文件是否在系统中创建了,请执行以下步骤:

  1. 进入创建 SSSD 配置丢弃文件的文件夹:

    # cd /etc/sssd/conf.d
  2. 检查文件内容:

    # cat sssd-session-recording.conf

您可以看到该文件包含您在 playbook 中设置的参数。

其他资源