如何在Ubuntu上安装NTP服务器和客户端

在本文中,我们将向您展示如何在Ubuntu上安装和配置NTP服务器,并将客户端系统配置为与NTP服务器同步。

网络时间协议 ,通常称为NTP ,是一种负责同步网络中系统时钟的协议。 NTP指的是协议和客户端系统以及驻留在联网系统上的服务器程序。

在本指南中,我们将向您展示如何在Ubuntu 18.04上安装NTP服务器和客户端。

测试环境

本指南旨在实现以下目标:

  • Ubuntu 18.04服务器上安装和配置NTP服务器。
  • Ubuntu 18.04客户端计算机上安装NTP客户端,并确保它由服务器同步。

让我们开始吧 !

在Ubuntu 18.04服务器上安装和配置NTP服务器

下面是安装NTP服务器并进行必要修改以在网络中实现所需时间同步的分步过程。

第1步:更新系统存储库

首先,让我们从更新系统包开始,如图所示。

$ sudo apt update -y
更新Ubuntu系统

更新Ubuntu系统

第2步:在Ubuntu 18.04上安装NTP服务器

在已安装系统软件包的情况下,通过运行在Ubuntu 18.04 LTS上安装NTP协议。

$ sudo apt install ntp 

出现提示时,键入Y 并按Enter以完成安装过程。

在Ubuntu上安装NTP服务器

在Ubuntu上安装NTP服务器

要确认已成功安装NTP协议,请运行该命令。

$ sntp --version
检查Ubuntu上的NTP

检查Ubuntu上的NTP

第3步:在Ubuntu 18.04上配置NTP服务器池

默认情况下, NTP协议附带已在其配置文件中配置的默认NTP池服务器,如下面/etc/ntp.conf文件中所示。

默认NTP服务器池

默认NTP服务器池

这些通常一样好。 但是,您可以考虑更改为距离您所在位置最近的NTP服务器池 下面的链接会将您引导至一个页面,您可以在其中选择最喜欢的NTP池列表。

https://support.ntp.org/bin/view/Servers/NTPPoolServers

在我们的示例中,我们将使用位于欧洲NTP池 ,如图所示。

来自欧洲的NTP池

来自欧洲的NTP池

要替换默认的NTP池服务器 ,请使用您喜欢的文本编辑器打开NTP配置文件,如图所示。

$ sudo vim /etc/ntp.conf

欧洲NTP池列表复制并粘贴到配置文件中,如图所示。

server 0.europe.pool.ntp.org
server 1.europe.pool.ntp.org
server 2.europe.pool.ntp.org
server 3.europe.pool.ntp.org
在Ubuntu上配置NTP池

在Ubuntu上配置NTP池

接下来,保存并退出文本编辑器。

要使更改生效,请重新启动NTP服务并使用命令验证其状态。

$ sudo systemctl restart ntp
$ sudo systemctl status ntp
验证NTP状态

验证NTP状态

如果启用了UFW防火墙 ,我们需要在其上允许NTP服务,以便客户端计算机可以访问NTP服务器。

$ sudo ufw allow ntp 
OR
$ sudo ufw allow 123/udp 

要实施更改,请如图所示重新加载防火墙。

$ sudo ufw reload

要验证所做的更改,请执行命令。

$ sudo ufw status
验证UFW防火墙上的NTP访问权限

验证UFW防火墙上的NTP访问权限

完善! 我们已经在Ubuntu 18.04 LTS系统上成功设置了NTP服务器。 现在让我们在客户端系统上设置NTP

在Ubuntu 18.04客户端上安装和配置NTP客户端

在本节中,我们将在Ubuntu 18.04客户端系统上安装和配置NTP客户端,以便由Ubuntu 18.04 NTP服务器系统进行同步。

第1步:更新系统存储库

首先,通过运行更新系统。

$ sudo apt update -y
更新NTP客户端计算机

更新NTP客户端计算机

第2步:在Ubuntu 18.04上安装Ntpdate

ntpdate是一个实用程序/程序,可以通过查询NTP服务器快速允许系统同步时间和日期。

要安装ntpdate,请运行该命令。

$ sudo apt install ntpdate
在Ubuntu Client上安装ntpdate

在Ubuntu Client上安装ntpdate

要使客户端系统按主机名解析NTP服务器,需要在/ etc / hosts文件中添加NTP服务器的IP地址和主机名。

因此,使用您喜欢的文本编辑器打开文件。

$ sudo vim /etc/hosts

如图所示附加IP地址和主机名。

10.128.0.21	bionic
添加IP地址和主机名

添加IP地址和主机名

第3步:验证客户端与NTP服务器的时间同步

要手动检查客户端系统是否与NTP服务器的时间同步,请运行该命令。

$ sudo ntpdate NTP-server-hostname

在我们的例子中,命令将是。

$ sudo ntpdate bionic

将显示NTP服务器和客户端系统之间的时间偏移,如图所示。

验证客户端与NTP服务器的时间同步

验证客户端与NTP服务器的时间同步

要将客户端时间与NTP服务器同步,您需要关闭客户端系统上的timesynchd服务。

$ sudo timedatectl set-ntp off

第4步:在Ubuntu 18.04上安装NTP客户端

接下来,您需要在客户端系统上安装NTP服务。 要实现此目的,请发出命令。

$ sudo apt install ntp

出现提示时按Y ,然后按Enter键继续安装过程。

在Ubuntu上安装NTP客户端

在Ubuntu上安装NTP客户端

第5步:在Ubuntu 18.04上配置NTP客户端

此步骤的目标是使用先前配置的NTP服务器充当我们的NTP服务器。 为此,我们需要编辑/etc/ntp.conf文件。

$ sudo vim /etc/ntp.conf

在下面的行中添加bionic是NTP服务器的主机名。

server bionic prefer iburst
在Ubuntu上配置NTP客户端

在Ubuntu上配置NTP客户端

保存并退出配置文件。

要使更改生效,请重新启动NTP服务,如图所示。

$ sudo systemctl restart ntp

第6步:验证NTP时间同步队列

通过客户端和NTP服务器不同步,您可以通过执行命令来查看同步详细信息。

$ ntpq -p
样本输出
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
  bionic          71.79.79.71      2 u    6   64  377    0.625   -0.252   0.063

这将我们带到本指南的最后。 此时,您已在Ubuntu 18.04 LTS上成功配置了NTP服务器 ,并将客户端系统配置为与NTP服务器同步。 请随时与我们联系并提供反馈。