Guide to the Secure Configuration of Red Hat Enterprise Linux 8
Rules, Groups, and Values defined within the XCCDF Benchmark
-
Run DNS Software on Dedicated Servers
Since DNS is a high-risk service which must frequently be made available to the entire Internet, it is strongly recommended that no other services ...Group -
Protect DNS Data from Tampering or Attack
This section discusses DNS configuration options which make it more difficult for attackers to gain access to private DNS data or to modify DNS data.Group -
Authenticate Zone Transfers
If it is necessary for a secondary nameserver to receive zone data via zone transfer from the primary server, follow the instructions here. Use dn...Rule Medium Severity -
Disable Dynamic Updates
Is there a mission-critical reason to enable the risky dynamic update functionality? If not, edit <code>/etc/named.conf</code>. For each zone speci...Rule Unknown Severity -
Disable Zone Transfers from the Nameserver
Is it necessary for a secondary nameserver to receive zone data via zone transfer from the primary server? If not, follow the instructions in this...Rule Unknown Severity -
Use Views to Partition External and Internal Information
If it is not possible to run external and internal nameservers on separate physical systems, run BIND9 and simulate this feature using views. Edit ...Group -
Run Separate DNS Servers for External and Internal Queries
Is it possible to run external and internal nameservers on separate systems? If so, follow the configuration guidance in this section. On the exter...Group -
Docker Service
The docker service is necessary to create containers, which are self-sufficient and self-contained applications using the resource isolation fe...Group -
Enable the File Access Policy Service
The File Access Policy service should be enabled. The <code>fapolicyd</code> service can be enabled with the following command: <pre>$ sudo system...Rule Medium Severity -
Configure Fapolicy Module to Employ a Deny-all, Permit-by-exception Policy to Allow the Execution of Authorized Software Programs.
The Fapolicy module must be configured to employ a deny-all, permit-by-exception policy to allow the execution of authorized software programs and ...Rule Medium Severity -
fapolicyd Must be Configured to Limit Access to Users Home Folders
fapolicyd needs be configured so that users cannot give access to their home folders to other users.Rule Medium Severity -
FTP Server
FTP is a common method for allowing remote access to files. Like telnet, the FTP protocol is unencrypted, which means that passwords and other data...Group -
Disable vsftpd if Possible
To minimize attack surface, disable vsftpd if at all possible.Group -
Uninstall vsftpd Package
Thevsftpd
package can be removed with the following command:$ sudo yum erase vsftpd
Rule High Severity -
Disable vsftpd Service
Thevsftpd
service can be disabled with the following command:$ sudo systemctl mask --now vsftpd.service
Rule Medium Severity -
Configure vsftpd to Provide FTP Service if Necessary
The primary vsftpd configuration file is/etc/vsftpd.conf
, if that file exists, or/etc/vsftpd/vsftpd.conf
if it does not.Group -
Configure Firewalls to Protect the FTP Server
By default, <code>iptables</code> blocks access to the ports used by the web server. To configure <code>iptables</code> to allow port 21 traffic,...Rule Unknown Severity -
Disable FTP Uploads if Possible
Is there a mission-critical reason for users to upload files via FTP? If not, edit the vsftpd configuration file to add or correct the following co...Rule Unknown Severity -
Place the FTP Home Directory on its Own Partition
By default, the anonymous FTP root is the home directory of the FTP user account. The df command can be used to verify that this directory is on it...Rule Unknown Severity -
Enable Logging of All FTP Transactions
Add or correct the following configuration options within the <code>vsftpd</code> configuration file, located at <code>/etc/vsftpd/vsftpd.conf</cod...Rule Unknown Severity -
Create Warning Banners for All FTP Users
Edit the vsftpd configuration file, which resides at <code>/etc/vsftpd/vsftpd.conf</code> by default. Add or correct the following configuration ...Rule Medium Severity -
Restrict the Set of Users Allowed to Access FTP
This section describes how to disable non-anonymous (password-based) FTP logins, or, if it is not possible to do this entirely due to legacy applic...Group -
Limit Users Allowed FTP Access if Necessary
If there is a mission-critical reason for users to access their accounts via the insecure FTP protocol, limit the set of users who are allowed this...Rule Unknown Severity -
Restrict Access to Anonymous Users if Possible
Is there a mission-critical reason for users to transfer files to/from their own accounts using FTP, rather than using a secure protocol like SCP/S...Rule Medium Severity -
Use vsftpd to Provide FTP Service if Necessary
If your use-case requires FTP service, install and set-up vsftpd to provide it.Group -
Install vsftpd Package
If this system must operate as an FTP server, install the <code>vsftpd</code> package via the standard channels. The <code>vsftpd</code> package ca...Rule Low Severity -
Web Server
The web server is responsible for providing access to content via the HTTP protocol. Web servers represent a significant security risk because: <br...Group -
Disable Apache if Possible
If Apache was installed and activated, but the system does not need to act as a web server, then it should be disabled and removed from the system.Group -
Uninstall httpd Package
Thehttpd
package can be removed with the following command:$ sudo yum erase httpd
Rule Unknown Severity -
Disable httpd Service
Thehttpd
service can be disabled with the following command:$ sudo systemctl mask --now httpd.service
Rule Unknown Severity -
Disable NGINX if Possible
If NGINX was installed and activated, but the system does not need to act as a web server, then it should be removed from the system.Group -
Uninstall nginx Package
Thenginx
package can be removed with the following command:$ sudo yum erase nginx
Rule Unknown Severity -
Install Apache if Necessary
If <code>httpd</code> was not installed and activated, but the system needs to act as a web server, then it should be installed on the system. Foll...Group -
Confirm Minimal Built-in Modules Installed
The default <code>httpd</code> installation minimizes the number of modules that are compiled directly into the binary (<code>core prefork http_cor...Group -
Secure Apache Configuration
The <code>httpd</code> configuration file is <code>/etc/httpd/conf/httpd.conf</code>. Apply the recommendations in the remainder of this section to...Group -
HTTPD Log Level
The setting for LogLevel in /etc/httpd/conf/httpd.confValue -
Maximum KeepAlive Requests for HTTPD
The setting for MaxKeepAliveRequests in httpd.confValue -
Configure Error Log Format
<code>LogFormat</code> should be enabled and set to the following in <code>/etc/httpd/conf/httpd.conf</code>: <pre>LogFormat "a %A %h %H %l %m %s %...Rule Medium Severity -
Configure The Number of Allowed Simultaneous Requests
The <code>MaxKeepAliveRequests</code> directive should be set and configured to <xccdf-1.2:sub idref="xccdf_org.ssgproject.content_value_var_max_ke...Rule Medium Severity -
MIME types for csh or sh shell programs must be disabled
Users must not be allowed to access the shell programs.Rule Medium Severity -
Enable HTTPD Error Logging
ErrorLog
should be enabled and set to the following in/etc/httpd/conf/httpd.conf
:ErrorLog "logs/error_log"
Rule Medium Severity -
Enable HTTPD LogLevel
<code>LogLevel</code> should be enabled and set to <xccdf-1.2:sub idref="xccdf_org.ssgproject.content_value_var_httpd_loglevel" use="legacy"></xccd...Rule Medium Severity -
Enable HTTPD System Logging
<code>CustomLog</code> should be enabled and set to the following in <code>/etc/httpd/conf/httpd.conf</code>: <pre>CustomLog "logs/access_log" comb...Rule Medium Severity -
The web server password(s) must be entrusted to the SA or Web Manager
Normally, a service account is established for the web server. This is because a privileged account is not desirable and the server is designed to ...Rule Medium Severity -
A public web server, if hosted on the NIPRNet, must be isolated in an accredited DoD DMZ extension
To minimize exposure of private assets to unnecesarry risk by attackers, public web servers must be isolated from internal systems. Logically relo...Rule Medium Severity -
Installation of a compiler on production web server is prohibited
The presence of a compiler on a production server facilitates the malicious user's task of creating custom versions of programs and installing Troj...Rule Medium Severity -
A private web server must be located on a separate controlled access subnet
Private web servers, which host sites that serve controlled access data, must be protected from outside threats in addition to insider threats. Is...Rule Medium Severity -
Public web server resources must not be shared with private assets
It is important to segregate public web server resources from private resources located behind the DoD DMZ in order to protect private assets.Rule Medium Severity -
Backup interactive scripts on the production web server are prohibited
Copies of backup files will not execute on the server, but they can be read by the anonymous user if special precautions are not taken.Rule Medium Severity -
Configure Operating System to Protect Web Server
The following configuration steps should be taken on the system which hosts the web server, in order to provide as safe an environment as possible ...Group
Node 2
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.