NTP(网络时间协议)是一种在传输层端口 123 UDP 上运行的协议,允许计算机通过网络同步时间。
随着时间的流逝,计算机的内部时钟往往会发生漂移,这可能会导致时间不一致的问题,特别是在服务器和客户端的日志文件上,或者如果您想要复制服务器的资源或数据库。
本教程将演示如何安装和配置NTP(慢性的) 服务器开启通过使用 NTP 公共池时间服务器列表,自动与您的服务器位置可用的最近地理对等点同步时间。
如何在 Linux 中安装 Chrony
克罗尼是一个实现网络时间协议(NTP),用于在计算机网络上高精度地同步系统时钟。
克罗尼专门设计用于解决与其他 NTP 实施相关的一些限制和挑战。这是默认的 NTP 实现,包括红帽企业 Linux (RHEL) 8。
安装克罗尼,使用以下或者命令。
sudo dnf install chrony OR sudo yum install chrony
服务器安装好后,首先去官方NTP 公共池时间服务器,选择你的大陆服务器实际所在的区域,然后搜索您的国家应显示位置和 NTP 服务器列表。

然后打开 NTP 守护进程主配置文件(/etc/chrony.conf)进行编辑,注释掉默认的公共服务器列表pool.ntp.org项目并将其替换为为您所在国家/地区提供的列表,如下面的屏幕截图所示。
$ sudo vi /etc/chrony.conf

此外,您需要允许网络中的客户端与该服务器同步时间。为此,请将以下行添加到 NTP 配置文件中,其中限制语句控制允许哪个网络查询和同步时间 - 相应地替换网络 IP。
restrict 192.168.1.0 netmask 255.255.255.0 nomodify notrap
这不修改不陷阱声明表明您的客户端不允许配置服务器或用作时间同步的对等方。
如果您需要其他信息来进行故障排除,以防您的 NTP 守护程序出现问题,请添加一个日志文件语句,该语句会将所有 NTP 服务器问题记录到一个专用日志文件中/var/log/chrony。
允许防火墙中的 Chrony
NTP服务使用UDP端口123在 OSI 传输层(第 4 层)上,该层专门设计用于抵抗可变延迟(抖动)的影响。
如果防火墙已启用,则允许克罗尼通过它进行通信:
sudo firewall-cmd --add-service=ntp --permanent sudo firewall-cmd --reload
打开防火墙123端口后,重新启动防火墙克罗尼服务器并确保在系统范围内启用它。
sudo systemctl restart chronyd sudo systemctl enable chronyd sudo systemctl status chronyd

之后NTP守护进程已启动,请等待几分钟,让服务器与其池列表服务器同步时间,然后运行以下命令来验证 NTP 对等方的同步状态和您的系统时间。
chronyc sources

就这样!在网络上设置本地 NTP 计时器可确保所有服务器和客户端都设置相同的时间,以防 Internet 连接失败,并且它们都相互同步。
