Guide to the Secure Configuration of Anolis OS 23
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 -
Minimize the DHCP-Configured Options
Create the file <code>/etc/dhcp/dhclient.conf</code>, and add an appropriate setting for each of the ten configuration settings which can be obtain...Rule Unknown Severity -
Configure DHCP Server
If the system must act as a DHCP server, the configuration information it serves should be minimized. Also, support for other protocols and DNS-upd...Group -
Minimize Served Information
Edit /etc/dhcp/dhcpd.conf. Examine each address range section within the file, and ensure that the following options are not defined unless there i...Rule Unknown Severity -
Disable DHCP Client
DHCP is the default network configuration method provided by the system installer, and common on many networks. Nevertheless, manual management of ...Group -
Disable DHCP Server
The DHCP server <code>dhcpd</code> is not installed or activated by default. If the software was installed and activated, but the system does not n...Group -
Disable DHCP Service
The <code>dhcpd</code> service should be disabled on any system that does not need to act as a DHCP server. The <code>dhcpd</code> service can be ...Rule Medium Severity -
DNS Server
Most organizations have an operational need to run at least one nameserver. However, there are many common attacks involving DNS server software, a...Group -
Disable DNS Server
DNS software should be disabled on any systems which does not need to be a nameserver. Note that the BIND DNS server software is not installed on A...Group -
Uninstall bind Package
The <code>named</code> service is provided by the <code>bind</code> package. The <code>bind</code> package can be removed with the following comman...Rule Low Severity -
Disable named Service
Thenamed
service can be disabled with the following command:$ sudo systemctl mask --now named.service
Rule Medium Severity -
Isolate DNS from Other Services
This section discusses mechanisms for preventing the DNS server from interfering with other services. This is done both to protect the remainder of...Group -
Run DNS Software in a chroot Jail
Install the <code>bind-chroot</code> package: <pre>$ sudo yum install bind-chroot</pre> Place a valid named.conf file inside the chroot jail: <pre>...Group -
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 -
Application Whitelisting Daemon
Fapolicyd (File Access Policy Daemon) implements application whitelisting to decide file access rights. Applications that are known via a reputatio...Group -
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 -
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 -
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 -
Configure PERL Securely
PERL (Practical Extraction and Report Language) is an interpreted language optimized for scanning arbitrary text files, extracting information from...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 -
Use vsftpd to Provide FTP Service if Necessary
If your use-case requires FTP service, install and set-up vsftpd to provide it.Group -
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 -
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 -
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 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 -
Run httpd in a chroot Jail if Practical
Running <code>httpd</code> inside a <code>chroot</code> jail is designed to isolate the web server process to a small section of the filesystem, li...Group -
Restrict File and Directory Access
Minimize access to criticalhttpd
files and directories.Group -
Configure PHP Securely
PHP is a widely-used and often misconfigured server-side scripting language. It should be used with caution, but configured appropriately when need...Group -
Directory Restrictions
The Directory tags in the web server configuration file allow finer grained access control for a specified directory. All web directories should be...Group -
Minimize Web Server Loadable Modules
A default installation of <code>httpd</code> includes a plethora of dynamically shared objects (DSO) that are loaded at run-time. Unlike the aforem...Group -
httpd Core Modules
These modules comprise a basic subset of modules that are likely needed for base <code>httpd</code> functionality; ensure they are not commented ou...Group -
Minimize Modules for HTTP Basic Authentication
The following modules are necessary if this web server will provide content that will be restricted by a password. <br><br> Authentication can be p...Group -
Minimize Configuration Files Included
The <code>Include</code> directive directs <code>httpd</code> to load supplementary configuration files from a provided path. The default configura...Group -
Enable SSL Support
SSL should be used to encrypt network traffic between the Dovecot server and its clients. Users must authenticate to the Dovecot server in order ...Group -
Minimize Various Optional Components
The following modules perform very specific tasks, sometimes providing access to just a few additional directives. If such functionality is not req...Group -
Use Appropriate Modules to Improve httpd's Security
Among the modules available for <code>httpd</code> are several whose use may improve the security of the web server installation. This section reco...Group -
Deploy mod_security
The <code>security</code> module provides an application level firewall for <code>httpd</code>. Following its installation with the base ruleset, s...Group -
Deploy mod_ssl
Because HTTP is a plain text protocol, all traffic is susceptible to passive monitoring. If there is a need for confidentiality, SSL should be conf...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.