Skip to content

Guide to the Secure Configuration of Oracle Linux 9

Rules, Groups, and Values defined within the XCCDF Benchmark

  • Uninstall tuned Package

    The tuned package can be removed with the following command:
    $ sudo yum erase tuned
    Rule Medium Severity
  • Updating Software

    The <code>yum</code> command line tool is used to install and update software packages. The system also provides a graphical software update tool in the <b>System</b> menu, in the <b>Administration...
    Group
  • Install dnf-automatic Package

    The dnf-automatic package can be installed with the following command:
    $ sudo yum install dnf-automatic
    Rule Medium Severity
  • Ensure yum Removes Previous Package Versions

    <code>yum</code> should be configured to remove previous software components after new versions have been installed. To configure <code>yum</code> to remove the previous software components after ...
    Rule Low Severity
  • Configure dnf-automatic to Install Available Updates Automatically

    To ensure that the packages comprising the available updates will be automatically installed by <code>dnf-automatic</code>, set <code>apply_updates</code> to <code>yes</code> under <code>[commands]...
    Rule Medium Severity
  • Configure dnf-automatic to Install Only Security Updates

    To configure <code>dnf-automatic</code> to install only security updates automatically, set <code>upgrade_type</code> to <code>security</code> under <code>[commands]</code> section in <code>/etc/dn...
    Rule Low Severity
  • An SELinux Context must be configured for the pam_faillock.so records directory

    The dir configuration option in PAM pam_faillock.so module defines where the lockout records is stored. The configured directory must have the correct SELinux context.
    Rule Medium Severity
  • Ensure gpgcheck Enabled for All yum Package Repositories

    To ensure signature checking is not disabled for any repos, remove any lines from files in /etc/yum.repos.d of the form:
    gpgcheck=0
    Rule High Severity
  • Ensure Software Patches Installed

    If the system is joined to the ULN or a yum server, run the following command to install updates: <pre>$ sudo yum update</pre> If the system is not configured to use one of these sources, updates ...
    Rule Medium Severity
  • Enable dnf-automatic Timer

    The dnf-automatic timer can be enabled with the following command:
    $ sudo systemctl enable dnf-automatic.timer
    Rule Medium Severity
  • Account and Access Control

    In traditional Unix security, if an attacker gains shell access to a certain login account, they can perform any action or access any file to which that account has access. Therefore, making it mor...
    Group
  • Authselect profile

    Specify the authselect profile to select
    Value
  • Enable authselect

    Configure user authentication setup to use the <code>authselect</code> tool. If authselect profile is selected, the rule will enable the <xccdf-1.2:sub idref="xccdf_org.ssgproject.content_value_var...
    Rule Medium Severity
  • Warning Banners for System Accesses

    Each system should expose as little information about itself as possible. <br> <br> System banners, which are typically displayed just before a login prompt, give out information about the s...
    Group
  • Login Banner Verbiage

    Enter an appropriate login banner for your organization. Please note that new lines must be expressed by the '\n' character and special characters like parentheses and quotation marks must be escap...
    Value
  • Modify the System Login Banner for Remote Connections

    To configure the system login banner edit <code>/etc/issue.net</code>. Replace the default text with a message compliant with the local site policy or a legal disclaimer. The DoD required text is ...
    Rule Medium Severity
  • Implement a GUI Warning Banner

    In the default graphical environment, users logging directly into the system are greeted with a login screen provided by the GNOME Display Manager (GDM). The warning banner should be displayed in t...
    Group
  • Enable GNOME3 Login Warning Banner

    In the default graphical environment, displaying a login warning banner in the GNOME Display Manager's login screen can be enabled on the login screen by setting <code>banner-message-enable</code> ...
    Rule Medium Severity
  • Account Lockouts Must Be Logged

    PAM faillock locks an account due to excessive password failures, this event must be logged.
    Rule Medium Severity
  • Account Lockouts Must Persist

    By setting a `dir` in the faillock configuration account lockouts will persist across reboots.
    Rule Medium Severity
  • Password Hashing algorithm

    Specify the system default encryption algorithm for encrypting passwords. Defines the value set as ENCRYPT_METHOD in /etc/login.defs.
    Value
  • remember

    The last n passwords for each user are saved in <code>/etc/security/opasswd</code> in order to force password change history and keep the user from alternating between the same password too frequen...
    Value
  • Disallow Configuration to Bypass Password Requirements for Privilege Escalation

    Verify the operating system is not configured to bypass password requirements for privilege escalation. Check the configuration of the "/etc/pam.d/sudo" file with the following command: <pre>$ sudo...
    Rule Medium Severity
  • Set Lockouts for Failed Password Attempts

    The <code>pam_faillock</code> PAM module provides the capability to lock out user accounts after a number of failed login attempts. Its documentation is available in <code>/usr/share/doc/pam-VERSIO...
    Group
  • fail_deny

    Number of failed login attempts before account lockout
    Value
  • faillock directory

    The directory where the user files with the failure records are kept
    Value
  • fail_interval

    Interval for counting failed login attempts before account lockout
    Value
  • fail_unlock_time

    Seconds before automatic unlocking or permanently locking after excessive failed logins
    Value
  • tally2_unlock_time

    Seconds before automatic unlocking or permanently locking after excessive failed logins
    Value
  • pwhistory_remember

    Prevent password re-use using password history lookup
    Value
  • PAM pwhistory remember - control flag

    'Specify the control flag required for password remember requirement. If multiple values are allowed write them separated by commas as in "required,requisite", for remediations the first value will...
    Value
  • tally2

    Number of failed login attempts
    Value
  • Configure the Use of the pam_faillock.so Module in the /etc/pam.d/password-auth File.

    The pam_faillock.so module must be loaded in preauth in /etc/pam.d/password-auth.
    Rule Medium Severity
  • Limit Password Reuse

    Do not allow users to reuse recent passwords. This can be accomplished by using the remember option for the pam_unix or pam_pwhistory PAM modules.
    Rule Medium Severity
  • Account Lockouts Must Be Logged

    PAM faillock locks an account due to excessive password failures, this event must be logged.
    Rule Medium Severity
  • Configure the root Account for Failed Password Attempts

    This rule configures the system to lock out the <code>root</code> account after a number of incorrect login attempts using <code>pam_faillock.so</code>. pam_faillock.so module requires multiple en...
    Rule Medium Severity
  • Lock Accounts Must Persist

    This rule ensures that the system lock out accounts using <code>pam_faillock.so</code> persist after system reboot. From "pam_faillock" man pages: <pre>Note that the default directory that "pam_fai...
    Rule Medium Severity
  • Set Interval For Counting Failed Password Attempts

    Utilizing <code>pam_faillock.so</code>, the <code>fail_interval</code> directive configures the system to lock out an account after a number of incorrect login attempts within a specified time peri...
    Rule Medium Severity
  • Set Password Quality Requirements

    The default <code>pam_pwquality</code> PAM module provides strength checking for passwords. It performs a number of checks, such as making sure passwords are not similar to dictionary words, are of...
    Group
  • Set Password Quality Requirements with pam_pwquality

    The <code>pam_pwquality</code> PAM module can be configured to meet requirements for a variety of policies. <br> <br> For example, to configure <code>pam_pwquality</code> to require at lea...
    Group
  • dcredit

    Minimum number of digits in password
    Value
  • dictcheck

    Prevent the use of dictionary words for passwords.
    Value
  • difok

    Minimum number of characters not present in old password
    Value
  • lcredit

    Minimum number of lower case in password
    Value
  • maxclassrepeat

    Maximum Number of Consecutive Repeating Characters in a Password From the Same Character Class
    Value
  • maxrepeat

    Maximum Number of Consecutive Repeating Characters in a Password
    Value
  • minclass

    Minimum number of categories of characters that must exist in a password
    Value
  • minlen

    Minimum number of characters in password
    Value
  • ocredit

    Minimum number of other (special characters) in password
    Value
  • retry

    Number of retry attempts before erroring out
    Value

The content of the drawer really is up to you. It could have form fields, definition lists, text lists, labels, charts, progress bars, etc. Spacing recommendation is 24px margins. You can put tabs in here, and can also make the drawer scrollable.

Capacity
Modules