Skip to content

Guide to the Secure Configuration of Red Hat Enterprise Linux 7

Rules, Groups, and Values defined within the XCCDF Benchmark

  • Disable Squid if Possible

    If Squid was installed and activated, but the system does not need to act as a proxy server, then it should be disabled and removed.
    Group
  • Uninstall squid Package

    The squid package can be removed with the following command:
     $ sudo yum erase squid
    Rule Unknown Severity
  • Disable Squid

    The squid service can be disabled with the following command:
    $ sudo systemctl mask --now squid.service
    Rule Unknown Severity
  • Remote Authentication Dial-In User Service (RADIUS)

    Remote Authentication Dial-In User Service (RADIUS) is a networking protocol, operating on port 1812 that provides centralized Authentication, Auth...
    Group
  • Remove the FreeRadius Server Package

    The <code>freeradius</code> package should be removed if not in use. Is this system a RADIUS server? If not, remove the package. The <code>freeradi...
    Rule Low Severity
  • Hardware RNG Entropy Gatherer Daemon

    The rngd feeds random data from hardware device to kernel random device.
    Group
  • Network Routing

    A router is a very desirable target for a potential adversary because they fulfill a variety of infrastructure networking roles such as access to ...
    Group
  • Disable Quagga if Possible

    If Quagga was installed and activated, but the system does not need to act as a router, then it should be disabled and removed.
    Group
  • Uninstall quagga Package

    The quagga package can be removed with the following command:
     $ sudo yum erase quagga
    Rule Low Severity
  • Disable Quagga Service

    The zebra service can be disabled with the following command:
    $ sudo systemctl mask --now zebra.service
    Rule Medium Severity
  • Samba(SMB) Microsoft Windows File Sharing Server

    When properly configured, the Samba service allows Linux systems to provide file and print sharing to Microsoft Windows systems. There are two soft...
    Group
  • Configure Samba if Necessary

    All settings for the Samba daemon can be found in <code>/etc/samba/smb.conf</code>. Settings are divided between a <code>[global]</code> configurat...
    Group
  • Require Client SMB Packet Signing, if using mount.cifs

    Require packet signing of clients who mount Samba shares using the <code>mount.cifs</code> program (e.g., those who specify shares in <code>/etc/fs...
    Rule Unknown Severity
  • Require Client SMB Packet Signing, if using smbclient

    To require samba clients running <code>smbclient</code> to use packet signing, add the following to the <code>[global]</code> section of the Samba ...
    Rule Unknown Severity
  • Disable Root Access to SMB Shares

    Administrators should not use administrator accounts to access Samba file and printer shares. Disable the root user and the wheel administrator gro...
    Rule Unknown Severity
  • Restrict Printer Sharing

    By default, Samba utilizes the CUPS printing service to enable printer sharing with Microsoft Windows workstations. If there are no printers on the...
    Group
  • Restrict SMB File Sharing to Configured Networks

    Only users with local user accounts will be able to log in to Samba shares by default. Shares can be limited to particular users or network address...
    Group
  • Disable Samba if Possible

    Even after the Samba server package has been installed, it will remain disabled. Do not enable this service unless it is absolutely necessary to pr...
    Group
  • Uninstall Samba Package

    The samba package can be removed with the following command:
     $ sudo yum erase samba
    Rule Unknown Severity
  • Disable Samba

    The smb service can be disabled with the following command:
    $ sudo systemctl mask --now smb.service
    Rule Low Severity
  • SNMP Server

    The Simple Network Management Protocol allows administrators to monitor the state of network devices, including computers. Older versions of SNMP w...
    Group
  • Disable SNMP Server if Possible

    The system includes an SNMP daemon that allows for its remote monitoring, though it not installed by default. If it was installed and activated but...
    Group
  • Uninstall net-snmp Package

    The <code>net-snmp</code> package provides the snmpd service. The <code>net-snmp</code> package can be removed with the following command: <pre> $...
    Rule Unknown Severity
  • Disable snmpd Service

    The snmpd service can be disabled with the following command:
    $ sudo systemctl mask --now snmpd.service
    Rule Low Severity
  • Configure SNMP Server if Necessary

    If it is necessary to run the snmpd agent on the system, some best practices should be followed to minimize the security risk from the installation...
    Group
  • SNMP read-only community string

    Specify the SNMP community string used for read-only access.
    Value
  • SNMP read-write community string

    Specify the SNMP community string used for read-write access.
    Value
  • Ensure SNMP Read Write is disabled

    Edit <code>/etc/snmp/snmpd.conf</code>, remove any <code>rwuser</code> entries. Once the read write users have been removed, restart the SNMP servi...
    Rule Medium Severity
  • Ensure Default SNMP Password Is Not Used

    Edit <code>/etc/snmp/snmpd.conf</code>, remove or change the default community strings of <code>public</code> and <code>private</code>. This profil...
    Rule High Severity
  • Configure SNMP Service to Use Only SNMPv3 or Newer

    Edit <code>/etc/snmp/snmpd.conf</code>, removing any references to <code>rocommunity</code>, <code>rwcommunity</code>, or <code>com2sec</code>. Upo...
    Rule Medium Severity
  • SSH Server

    The SSH protocol is recommended for remote login and remote file transfer. SSH provides confidentiality and integrity for data exchanged between tw...
    Group
  • SSH enabled firewalld zone

    Specify firewalld zone to enable SSH service. This value is used only for remediation purposes.
    Value
  • SSH Approved ciphers by FIPS

    Specify the FIPS approved ciphers that are used for data integrity protection by the SSH server.
    Value
  • SSH Approved MACs by FIPS

    Specify the FIPS approved MACs (message authentication code) algorithms that are used for data integrity protection by the SSH server.
    Value
  • SSH session Idle time

    Specify duration of allowed idle time.
    Value
  • SSH Server Listening Port

    Specify port the SSH server is listening.
    Value
  • SSH Max authentication attempts

    Specify the maximum number of authentication attempts per connection.
    Value
  • SSH is required to be installed

    Specify if the Policy requires SSH to be installed. Used by SSH Rules to determine if SSH should be uninstalled or configured.<br> A value of 0 mea...
    Value
  • SSH Strong KEX by FIPS

    Specify the FIPS approved KEXs (Key Exchange Algorithms) algorithms that are used for methods in cryptography by which cryptographic keys are exch...
    Value
  • SSH Max Sessions Count

    Specify the maximum number of open sessions permitted.
    Value
  • SSH Max Keep Alive Count

    Specify the maximum number of idle message counts before session is terminated.
    Value
  • Install the OpenSSH Server Package

    The <code>openssh-server</code> package should be installed. The <code>openssh-server</code> package can be installed with the following command: <...
    Rule Medium Severity
  • Remove the OpenSSH Server Package

    The <code>openssh-server</code> package should be removed. The <code>openssh-server</code> package can be removed with the following command: <pre>...
    Rule Medium Severity
  • Enable the OpenSSH Service

    The SSH server service, sshd, is commonly needed. The <code>sshd</code> service can be enabled with the following command: <pre>$ sudo systemctl e...
    Rule Medium Severity
  • Disable SSH Server If Possible

    The SSH server service, sshd, is commonly needed. However, if it can be disabled, do so. This is unusual, as SSH is a common method for encrypted ...
    Rule High Severity
  • Verify Group Who Owns SSH Server config file

    To properly set the group owner of /etc/ssh/sshd_config, run the command:
    $ sudo chgrp root /etc/ssh/sshd_config
    Rule Medium Severity
  • Verify Group Ownership on SSH Server Private *_key Key Files

    SSH server private keys, files that match the /etc/ssh/*_key glob, must be group-owned by ssh_keys group.
    Rule Medium Severity
  • Verify Group Ownership on SSH Server Public *.pub Key Files

    SSH server public keys, files that match the /etc/ssh/*.pub glob, must be group-owned by root group.
    Rule Medium Severity
  • Verify Owner on SSH Server config file

    To properly set the owner of /etc/ssh/sshd_config, run the command:
    $ sudo chown root /etc/ssh/sshd_config 
    Rule Medium Severity
  • Verify Ownership on SSH Server Private *_key Key Files

    SSH server private keys, files that match the /etc/ssh/*_key glob, must be owned by root user.
    Rule Medium Severity

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