如何在CentOS 8上安装ChronyNTP服务器

如何在CentOS 8上安装ChronyNTP服务器

Chrony是CentOS 8操作系统的默认网络时间协议(NTP)服务器。这是在旧版Linux操作系统中使用的旧Ntpd的替代。它用于将系统时钟与远程Internet时间服务器同步。设置正确的时间对于应用程序正常运行非常重要。

它由chronyc和chronyd两个组件组成。 chronyd是在系统引导时启动的守护程序。 chronyc是用于监视chronyd性能的命令行界面。

本教程将向您展示如何在CentOS 8服务器上安装和使用Chrony。

先决条件

  • 两台运行CentOS8的服务器。
  • 超级用户密码由服务器组成。

入门

在安装Chrony之前,您需要在服务器上设置正确的时区。可以使用以下命令进行设置。

timedatectl set-timezone Asia/Kolkata

然后使用以下命令检查当前时区:

timedatectl

您应该获得以下输出:

               Local time: Sun 2021-05-02 20:00:44 IST
           Universal time: Sun 2021-05-02 14:30:44 UTC
                 RTC time: Sun 2021-05-02 14:30:43
                Time zone: Asia/Kolkata (IST, +0530)
System clock synchronized: yes
              NTP service: active
          RTC in local TZ: no

安装Chrony服务器

默认情况下,Chrony软件包包含在CentOS 8默认存储库中。您可以使用以下命令进行安装。

dnf install chrony -y

一旦安装了Chrony,请启动Chrony服务,以便可以在系统重新引导时启动它。

systemctl start chronydsystemctl enable chronyd

您还可以使用以下命令检查Chrony的状态:

systemctl status chronyd

您应该看到以下输出:

? chronyd.service - NTP client/server
   Loaded: loaded (/usr/lib/systemd/system/chronyd.service; enabled; vendor preset: enabled)
   Active: active (running) since Sun 2021-05-02 20:00:13 IST; 1min 7s ago
     Docs: man:chronyd(8)
           man:chrony.conf(5)
 Main PID: 616 (chronyd)
    Tasks: 1 (limit: 25014)
   Memory: 2.3M
   CGroup: /system.slice/chronyd.service
           ??616 /usr/sbin/chronyd

May 02 20:00:12 centos8 systemd[1]: Starting NTP client/server...
May 02 20:00:12 centos8 chronyd[616]: chronyd version 3.5 starting (+CMDMON +NTP +REFCLOCK +RTC +PRIVDROP +SCFILTER +SIGND +ASYNCDNS +SECHASH >
May 02 20:00:12 centos8 chronyd[616]: Frequency 18.331 +/- 0.061 ppm read from /var/lib/chrony/drift
May 02 20:00:12 centos8 chronyd[616]: Using right/UTC timezone to obtain leap second data
May 02 20:00:13 centos8 systemd[1]: Started NTP client/server.
May 02 20:00:20 centos8 chronyd[616]: Selected source 129.250.35.250
May 02 20:00:20 centos8 chronyd[616]: System clock TAI offset set to 37 seconds
May 02 20:00:20 centos8 chronyd[616]: System clock wrong by 1.153394 seconds, adjustment started
May 02 20:00:21 centos8 chronyd[616]: System clock was stepped by 1.153394 seconds

配置Chrony服务器

Chrony的主要配置文件位于/etc/chrony.conf中。您需要对其进行编辑,并更改离您最近的时间服务器。

nano /etc/chrony.conf

注释掉默认池,并添加最接近您所在位置的NTP服务器列表。

#pool 2.centos.pool.ntp.org iburst
server 1.in.pool.ntp.org
server 2.in.pool.ntp.org
server 3.in.pool.ntp.org

完成后,保存文件,将其关闭,并使用以下命令设置NTP同步:

timedatectl set-ntp true

然后重新启动Chrony服务以应用更改。

systemctl restart chronyd

您还可以在本地网络上允许特定的IP范围,以允许访问NTP服务器。 您可以通过在/etc/chrony.conf文件中添加以下行来允许它:

# Allow NTP client access from local network.
allow 192.168.0.0/24

您可以使用以下命令检查NTP服务器是否正在运行:

chronyc sources

如果一切正常,您应该获得以下输出:

210 Number of sources = 4
MS Name/IP address         Stratum Poll Reach LastRx Last sample               
===============================================================================
^? ntp7.mum-in.hosts.301-mo>     2   6     1     8    +31ms[  +31ms] +/-  248ms
^? static.15.192.216.95.cli>     2   6     1     8  +2616us[+2616us] +/-   88ms
^? 157.245.102.2                 2   6     1     9  -4088us[-4088us] +/-  139ms
^? ec2-13-126-27-131.ap-sou>     2   6     1     9  +6017us[+6017us] +/-  181ms

配置防火墙

接下来,您需要允许NTP服务通过防火墙。您可以使用以下命令允许它:

firewall-cmd --permanent --add-service=ntp --permanent

然后重新加载防火墙服务以应用您的更改。

firewall-cmd --reload

配置Chrony客户端

接下来,您需要在客户端计算机上安装Chrony客户端,并将其配置为使用Chrony服务器。

在客户端计算机上,使用以下命令设置正确的时区。

timedatectl set-timezone Asia/Kolkata

然后使用以下命令安装Chrony软件包:

dnf install chrony -y

安装完成后,编辑Chrony配置文件以指定NTP服务器。

nano /etc/chrony.conf

注释掉默认池,并添加以下行:

server chrony-server-ip

保存并关闭文件,并使用以下命令设置NTP同步:

timedatectl set-ntp true

然后启动Chrony服务,以便可以使用以下命令在系统重新启动时启动它:

systemctl start chronydsystemctl enable chronyd

然后使用以下命令检查时间同步。

chronyc sources

您应该获得以下输出:

210 Number of sources = 1
MS Name/IP address         Stratum Poll Reach LastRx Last sample
===============================================================================
^? chrony-server-ip              0   6     0   10y     +0ns[   +0ns] +/-    0ns

结论

在上面的指南中,您学习了如何在CentOS 8上设置ChronyNTP服务器。您还学习了如何安装Chrony客户端并将其配置为与Chrony服务器同步时间。如有任何疑问,请随时与我们联系。

Sidebar