TMAegis
More rules for ros

TMA-ROS1-2.2.1.1

Ensure time synchronization is in use

MediumLevel 1Automatedros

Description

System time should be synchronized between all systems in an environment. This is typically done by establishing an authoritative time server or set of servers and having all systems synchronize their clocks to them. The audit requires systemd-timesyncd enabled or the chrony or ntp package installed (host-based VM time sync must be verified manually). Host-level control from the CIS ROS Melodic benchmark (Ubuntu 18.04 robot hosts); run as root.

How it is checked

Audit method: Shell command

shell
s=$(systemctl is-enabled systemd-timesyncd 2>/dev/null)
[ "$s" = enabled ] && { echo compliant; exit 0; }
command -v dpkg-query >/dev/null 2>&1 || exit 1
for p in chrony ntp; do s=$(dpkg-query -W -f='${Status}' "$p" 2>/dev/null); case "$s" in *' installed') echo compliant; exit 0 ;; esac; done
echo 'no time synchronization (systemd-timesyncd, chrony or ntp) in use'
Expected output
compliant

How it is fixed

Fix method: Guidance or infrastructure patch

On systems where host based time synchronization is not available, configure systemd- timesyncd. If "full featured" and/or encrypted time synchronization is required, install chrony or NTP. To install chrony: # atp install chrony To install ntp: # apt install ntp On virtual systems where host based time synchronization is available consult your virtualization software documentation and setup host based synchronization.

Properties

Operating systems
Any
Tags
rosros1melodicservices
Reference
CIS ROS Melodic Benchmark v1.0.0 - 2.2.1.1 Ensure time synchronization is in use

Check this host

Run this on a machine you are allowed to audit. The scan is read-only.

shell
tmaegis scan --target ros