4.2.1.6 Ensure remote rsyslog messages are only accepted on designated log hosts.

Information

By default, rsyslog does not listen for log messages coming in from remote systems. The ModLoad tells rsyslog to load the imtcp.so module so it can listen over a network via TCP. The InputTCPServerRun option instructs rsyslogd to listen on the specified TCP port.

Note: The $ModLoad imtcp line can have theso extension added to the end of the module, or use the full path to the module.

The guidance in the section ensures that remote log hosts are configured to only accept rsyslog data from hosts within the specified domain and that those systems that are not designed to be log hosts do not accept any remote rsyslog messages. This provides protection from spoofed log data and ensures that system administrators are reviewing reasonably complete syslog data in a central location.

Solution

For hosts that are designated as log hosts, edit the /etc/rsyslog.conf file and un-comment or add the following lines:

$ModLoad imtcp

$InputTCPServerRun 514

For hosts that are not designated as log hosts, edit the /etc/rsyslog.conf file and comment or remove the following lines:

# $ModLoad imtcp

# $InputTCPServerRun 514

Run the following command to reload the rsyslogd configuration:

# systemctl restart rsyslog

See Also

https://workbench.cisecurity.org/benchmarks/8498