| name | cis-ubuntu1804-v220-5-1-2-6 |
| description | Ensure rsyslog is configured to send logs to a remote log host |
| category | cis-logging |
| version | 2.2.0 |
| author | cyberstrike-official |
| tags | ["cis","ubuntu","linux","ubuntu-18.04","rsyslog","logging"] |
| cis_id | 5.1.2.6 |
| cis_benchmark | CIS Ubuntu Linux 18.04 LTS Benchmark v2.2.0 |
| tech_stack | ["ubuntu","linux"] |
| cwe_ids | [] |
| chains_with | [] |
| prerequisites | [] |
| severity_boost | {} |
5.1.2.6 Ensure rsyslog is configured to send logs to a remote log host (Manual)
Profile
- Level: 1 - Server
- Level: 1 - Workstation
- Assessment Status: Manual
Description
RSyslog supports the ability to send log events it gathers to a remote log host or to receive messages from remote hosts, thus enabling centralised log management.
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.
Audit Procedure
Command Line
Review the /etc/rsyslog.conf and /etc/rsyslog.d/*.conf files and verify that logs are sent to a central host (where loghost.example.com is the name of your central log host):
Old format:
grep "*.*[^I][^I]*@" /etc/rsyslog.conf /etc/rsyslog.d/*.conf
Output should include @@<FQDN or IP of remote loghost>, for example:
*.* @@loghost.example.com
New format:
grep -E '^\s*([^#]+\s+)?action\(([^#]+\s+)?\btarget=\"?[^#"]+\"?\b' /etc/rsyslog.conf /etc/rsyslog.d/*.conf
Output should include target=<FQDN or IP of remote loghost>, for example:
*.* action(type="omfwd" target="loghost.example.com" port="514" protocol="tcp"
Expected Result
Output should show logs being sent to a remote host.
Remediation
Command Line
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). The target directive may either be a fully qualified domain name or an IP address.
*.* action(type="omfwd" target="192.168.2.100" port="514" protocol="tcp"
action.resumeRetryCount="100"
queue.type="LinkedList" queue.size="1000")
Run the following command to reload the rsyslogd configuration:
systemctl restart rsyslog
Default Value
Logs are not sent to a remote host by default.