4.2.1.5 Ensure rsyslog is configured to send logs to a remote log host

Information

The rsyslog utility supports the ability to send logs it gathers to a remote log host running syslogd(8) or to receive messages from remote hosts, reducing administrative overhead.

Rationale:

Storing log data on a remote host protects log integrity from local attacks. If an attacker gains root access on the local system, they could tamper with or remove log data that is stored on the local system.

If you are running a SIEM tool that uses agents instead of syslog, for example Splunk Forwarder or Elastic Beats then this policy may not be applicable to your environment. Such tools also offer encryption and authentication which typically syslog doesn't.

Solution

Edit the /etc/rsyslog.conf and /etc/rsyslog.d/*.conf files and add the following line (where loghost.example.com is the name of your central log host).

*.* @@loghost.example.com

Run the following command to reload the rsyslogd configuration:

# systemctl restart rsyslog

See Also

https://workbench.cisecurity.org/files/3549