Symas employee?Sign in

← Knowledge Base

Installation → Configuration

Timezone/Timesync Using Chrony

Chrony is the recommended Network Time Protocol (NTP) implementation for modern Linux distributions. Chrony synchronizes the system clock with configured NTP servers using UDP port 123.

Important Notes

  • Use at least two NTP servers whenever possible.
  • Internal enterprise NTP servers should be preferred over public NTP servers.
  • Ensure UDP port 123 is permitted between clients and NTP servers.
  • All LDAP providers, consumers, proxy servers, and authentication systems should synchronize to the same NTP source.
  • Time synchronization is critical for TLS certificate validation, Kerberos authentication, log correlation, monitoring, and replication troubleshooting.

Set the Timezone

Display the current timezone configuration:

timedatectl

List available timezones:

timedatectl list-timezones

Example:

timedatectl list-timezones | grep New_York

Set the timezone:

sudo timedatectl set-timezone America/New_York

Verify the change:

timedatectl

Output:

Local time: Tue 2026-06-01 09:30:15 EDT
Universal time: Tue 2026-06-01 13:30:15 UTC
RTC time: Tue 2026-06-01 13:30:15
Time zone: America/New_York (EDT, -0400)
System clock synchronized: yes
NTP service: active

Install Chrony

RHEL, Rocky Linux, AlmaLinux, CentOS Stream

sudo dnf install chrony -y

Debian and Ubuntu

sudo apt update
sudo apt install chrony -y

SUSE Linux Enterprise Server (SLES)

sudo zypper install chrony

Enable and Start the Chrony Service

RHEL, Rocky Linux, AlmaLinux, CentOS Stream, SLES

sudo systemctl enable --now chronyd

Verify service status:

sudo systemctl status chronyd

Output:

● chronyd.service - NTP client/server
   Loaded: loaded
   Active: active (running)

Debian and Ubuntu

sudo systemctl enable --now chrony

Verify service status:

sudo systemctl status chrony

Output:

● chrony.service - chrony, an NTP client/server
   Loaded: loaded
   Active: active (running)

Configure NTP Servers

RHEL, Rocky Linux, AlmaLinux, CentOS Stream, SLES

Edit:

sudo vi /etc/chrony.conf

Debian and Ubuntu

Edit:

sudo vi /etc/chrony/chrony.conf

Example configuration:

server ntp1.company.com iburst
server ntp2.company.com iburst

Or use public NTP pool servers:

server 0.pool.ntp.org iburst
server 1.pool.ntp.org iburst
server 2.pool.ntp.org iburst
server 3.pool.ntp.org iburst

Restart Chrony after making changes:

RHEL/Rocky/SLES:

sudo systemctl restart chronyd

Debian/Ubuntu:

sudo systemctl restart chrony

Verify Time Synchronization

Display synchronization status:

chronyc tracking

Example output:

Reference ID    : C0A80101
Stratum         : 2
System time     : synchronized
Last offset     : 0.000123 seconds

Display configured NTP sources:

chronyc sources -v

Example output:

MS Name/IP address         Stratum Poll Reach LastRx Last sample
===============================================================================
^* ntp1.company.com              2   6   377     42   +15us[ +20us] +/- 1ms
^+ ntp2.company.com              2   6   377     44   +18us[ +23us] +/- 2ms

Verify synchronization using systemd:

timedatectl

Output:

System clock synchronized: yes
NTP service: active

Force an Immediate Time Correction

If the server has significant clock drift:

sudo chronyc makestep

Verify synchronization:

chronyc tracking

Troubleshooting

Check Chrony Service Status

RHEL/Rocky/SLES:

systemctl status chronyd

Debian/Ubuntu:

systemctl status chrony

Check NTP Sources

chronyc sources -v

Check Synchronization Status

chronyc tracking

Review Logs

RHEL/Rocky/SLES:

journalctl -u chronyd

Debian/Ubuntu:

journalctl -u chrony

Verify Network Connectivity

Chrony communicates using UDP port 123.

Verify DNS resolution:

host ntp1.company.com

Verify firewall and network connectivity to configured NTP servers.