UCF STIG Viewer Logo

RHEL 8 must ensure session control is automatically started at shell initialization.


Finding ID Version Rule ID IA Controls Severity
V-230349 RHEL-08-020041 SV-230349r833388_rule Medium
A session lock is a temporary action taken when a user stops work and moves away from the immediate physical vicinity of the information system but does not want to log out because of the temporary nature of the absence. The session lock is implemented at the point where session activity can be determined. Rather than be forced to wait for a period of time to expire before the user session can be locked, RHEL 8 needs to provide users with the ability to manually invoke a session lock so users can secure their session if it is necessary to temporarily vacate the immediate physical vicinity. Tmux is a terminal multiplexer that enables a number of terminals to be created, accessed, and controlled from a single screen. Red Hat endorses tmux as the recommended session controlling package. Satisfies: SRG-OS-000028-GPOS-00009, SRG-OS-000030-GPOS-00011
Red Hat Enterprise Linux 8 Security Technical Implementation Guide 2022-06-15


Check Text ( C-33018r833309_chk )
Verify the operating system shell initialization file is configured to start each shell with the tmux terminal multiplexer with the following commands:

Determine if tmux is currently running:
$ sudo ps all | grep tmux | grep -v grep

If the command does not produce output, this is a finding.

Determine the location of the tmux script:
$ sudo grep -r tmux /etc/bashrc /etc/profile.d

/etc/profile.d/tmux.sh: case "$name" in (sshd|login) exec tmux ;; esac

Review the tmux script by using the following example:
$ sudo cat /etc/profile.d/tmux.sh
if [ "$PS1" ]; then
parent=$(ps -o ppid= -p $$)
name=$(ps -o comm= -p $parent)
case "$name" in (sshd|login) exec tmux ;; esac

If "tmux" is not configured as the example above, is commented out, or is missing, this is a finding.
Fix Text (F-32993r833310_fix)
Configure the operating system to initialize the tmux terminal multiplexer as each shell is called by adding the following lines to a custom.sh shell script in the /etc/profile.d/ directory:

if [ "$PS1" ]; then
parent=$(ps -o ppid= -p $$)
name=$(ps -o comm= -p $parent)
case "$name" in (sshd|login) exec tmux ;; esac

This setting will take effect at next logon.