Este conteúdo não está disponível no idioma selecionado.
Chapter 47. Configuring session recording by using the CLI
Learn how to configure user terminal session recordings using the System Security Services Daemon (SSSD), and how to manage and play back these recordings using the tlog command-line utility.
47.1. Session recording overview and components Copiar o linkLink copiado para a área de transferência!
Session recording captures and saves a user’s terminal activity. This provides a detailed, unchangeable record of all commands, output, and error messages, which you can use for auditing, troubleshooting, and investigating a security incident.
SSSD enforces the recording policies you define, and the tlog utility handles the actual recording and playback.
- Components of the session recording
tlogutilityThe
tlogutility provides tools for recording and playing back terminal I/O.tlog-rec-sessionfunctions as an intermediary login shell and captures all data between the user’s terminal and shell. Alltlogrecordings are in JSON format. You can play back recorded sessions usingtlog-play. Note that by default, terminal input recording is disabled for security reasons. For detailed configuration options, see the/etc/tlog/tlog-rec-session.conffile and thetlog-rec-session.conf(5)man page on your system.SSSD
SSSD provides a set of daemons that manage access to remote directories and authentication mechanisms. When you configure session recording, SSSD overlays the user’s default shell with the
tlog-rec-sessionprogram.
- Limitations of session recording
- You can configure session recording for the root user, but the root user has the privileges to disable or bypass the recording process, which makes the session recording unreliable for auditing purposes.
-
Terminal sessions in a GNOME graphical session are not recorded. This is because all terminals within a graphical session share a single audit session ID, which prevents
tlogfrom distinguishing between them and capturing recordings correctly. A logging loop can occur when viewing the journal. When a recorded user views the system journal or
/var/log/messages, it generates new logs, which are then recorded and displayed, causing a loop of flooded output.To prevent the logging loop, view the journal in real time and filter out the log entries which create the loop:
journalctl -f | grep -v 'tlog-rec-session'
journalctl -f | grep -v 'tlog-rec-session'Copy to Clipboard Copied! Toggle word wrap Toggle overflow You can also configure
tlogto limit the output. For details, seetlog-rec-session.confman pages.-
You must configure session recording on the target host for remote execution. For example, if you want to record a user’s session when they use
sshto connect to a remote system, configure the recording on the remote system they connect to. -
All recordings are lost on reboot if
systemd-journaldservice uses its default configuration to store the journal in-memory.
47.2. Enabling and configuring session recording with SSSD from the CLI Copiar o linkLink copiado para a área de transferência!
You can configure and enable session recording for specific users and groups from the command line.
When you configure session recording, you use SSSD to define which users or groups to record by setting the scope option to one of the following values:
-
noneto record no sessions -
someto record only specified users and groups -
allto record all users
Prerequisites
-
Commands that start with the
#command prompt require administrative privileges provided bysudoor root user access. For information on how to configuresudoaccess, see Enabling unprivileged users to run certain commands. - You are using SSSD for authentication.
Procedure
Install the
tlogpackage:dnf install tlog
# dnf install tlogCopy to Clipboard Copied! Toggle word wrap Toggle overflow Open the
sssd-session-recording.confconfiguration file:vi /etc/sssd/conf.d/sssd-session-recording.conf
# vi /etc/sssd/conf.d/sssd-session-recording.confCopy to Clipboard Copied! Toggle word wrap Toggle overflow Specify the scope of session recording and the users and groups to record. For example:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow For more details, see the
sssd-session-recording(5)man page on your system.To enable the SSSD profile, run the following command:
authselect select sssd with-tlog
# authselect select sssd with-tlogCopy to Clipboard Copied! Toggle word wrap Toggle overflow Restart SSSD to load the configuration changes:
systemctl restart sssd
# systemctl restart sssdCopy to Clipboard Copied! Toggle word wrap Toggle overflow
47.3. Playing back session recordings Copiar o linkLink copiado para a área de transferência!
The system journal stores session recordings. By default, it saves them in-memory, so you lose recordings on reboot unless you configure persistent storage.
You can play back recordings directly from the system journal by using the tlog-play utility. Alternatively, you can install the cockpit-session-recording package to manage and play back recordings on the RHEL web console.
Prerequisites
- Terminal sessions have been recorded.
Procedure
Optional: List recorded sessions:
journalctl COMM=tlog-rec-session
$ journalctl COMM=tlog-rec-sessionCopy to Clipboard Copied! Toggle word wrap Toggle overflow Play back a specific session:
tlog-play --reader=journal --journal-id=<recorded_session_id>
# tlog-play --reader=journal --journal-id=<recorded_session_id>Copy to Clipboard Copied! Toggle word wrap Toggle overflow For more advanced options, such as changing playback speed or fast-forwarding, see the
tlog-playman page on your system.