溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

怎么在Linux上安裝和配置NTP服務(wù)器和客戶端

發(fā)布時(shí)間:2021-09-13 17:22:43 來(lái)源:億速云 閱讀:165 作者:chen 欄目:系統(tǒng)運(yùn)維

本篇內(nèi)容介紹了“怎么在Linux上安裝和配置NTP服務(wù)器和客戶端”的有關(guān)知識(shí),在實(shí)際案例的操作過(guò)程中,不少人都會(huì)遇到這樣的困境,接下來(lái)就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細(xì)閱讀,能夠?qū)W有所成!

什么是 NTP 服務(wù)?

NTP 意即網(wǎng)絡(luò)時(shí)間協(xié)議Network Time Protocol。它是通過(guò)網(wǎng)絡(luò)在計(jì)算機(jī)系統(tǒng)之間進(jìn)行時(shí)鐘同步的網(wǎng)絡(luò)協(xié)議。換言之,它可以讓那些通過(guò) NTP 或者 Chrony 客戶端連接到 NTP 服務(wù)器的系統(tǒng)保持時(shí)間上的一致(它能保持一個(gè)精確的時(shí)間)。

NTP 在公共互聯(lián)網(wǎng)上通常能夠保持時(shí)間延遲在幾十毫秒以內(nèi)的精度,并在理想條件下,它能在局域網(wǎng)下達(dá)到低于一毫秒的延遲精度。

它使用用戶數(shù)據(jù)報(bào)協(xié)議(UDP)在端口 123 上發(fā)送和接受時(shí)間戳。它是個(gè) C/S 架構(gòu)的應(yīng)用程序。

NTP 客戶端

NTP 客戶端將其時(shí)鐘與網(wǎng)絡(luò)時(shí)間服務(wù)器同步。

Chrony 客戶端

Chrony 是 NTP 客戶端的替代品。它能以更精確的時(shí)間更快的同步系統(tǒng)時(shí)鐘,并且它對(duì)于那些不總是在線的系統(tǒng)很有用。

為什么我們需要 NTP 服務(wù)?

為了使你組織中的所有服務(wù)器與基于時(shí)間的作業(yè)保持精確的時(shí)間同步。

為了說(shuō)明這點(diǎn),我將告訴你一個(gè)場(chǎng)景。比如說(shuō),我們有兩個(gè)服務(wù)器(服務(wù)器 1 和服務(wù)器 2)。服務(wù)器 1 通常在 10:55 完成離線作業(yè),然后服務(wù)器 2 在 11:00 需要基于服務(wù)器 1 完成的作業(yè)報(bào)告去運(yùn)行其他作業(yè)。

如果兩個(gè)服務(wù)器正在使用不同的時(shí)間(如果服務(wù)器 2 時(shí)間比服務(wù)器 1 提前,服務(wù)器 1 的時(shí)間就落后于服務(wù)器 2),然后我們就不能去執(zhí)行這個(gè)作業(yè)。為了達(dá)到時(shí)間一致,我們應(yīng)該安裝 NTP。

希望上述能清除你對(duì)于 NTP 的疑惑。

在這篇文章中,我們將使用下列設(shè)置去測(cè)試。

  • NTP 服務(wù)器: 主機(jī)名:CentOS7.2daygeek.com,IP:192.168.1.8,OS:CentOS 7

  • NTP 客戶端: 主機(jī)名:Ubuntu18.2daygeek.com,IP:192.168.1.5,OS:Ubuntu 18.04

NTP 服務(wù)器端:如何在 Linux 上安裝 NTP?

因?yàn)樗?C/S 架構(gòu),所以 NTP 服務(wù)器端和客戶端的安裝包沒(méi)有什么不同。在發(fā)行版的官方倉(cāng)庫(kù)中都有 NTP 安裝包,因此可以使用發(fā)行版的包管理器安裝它。

對(duì)于 Fedora 系統(tǒng),使用 DNF 命令 去安裝 ntp。

$ sudo dnf install ntp

對(duì)于 Debian/Ubuntu 系統(tǒng),使用 APT-GET 命令 或者 APT 命令 去安裝 ntp。

$ sudo apt install ntp

對(duì)基于 Arch Linux 的系統(tǒng),使用 Pacman 命令 去安裝 ntp。

$ sudo pacman -S ntp

對(duì) RHEL/CentOS 系統(tǒng),使用 YUM 命令 去安裝 ntp。

$ sudo yum install ntp

對(duì)于 openSUSE Leap 系統(tǒng),使用 Zypper 命令 去安裝 ntp。

$ sudo zypper install ntp

如何在 Linux 上配置 NTP 服務(wù)器?

安裝 NTP 軟件包后,請(qǐng)確保在服務(wù)器端的 /etc/ntp.conf 文件中取消以下配置的注釋。

默認(rèn)情況下,NTP 服務(wù)器配置依賴于 X.distribution_name.pool.ntp.org。 如果有必要,可以使用默認(rèn)配置,也可以訪問(wèn)https://www.ntppool.org/zone/@站點(diǎn),根據(jù)你所在的位置(特定國(guó)家/地區(qū))進(jìn)行更改。

比如說(shuō)如果你在印度,然后你的 NTP 服務(wù)器將是 0.in.pool.ntp.org,并且這個(gè)地址適用于大多數(shù)國(guó)家。

# vi /etc/ntp.conf restrict default kod nomodify notrap nopeer noqueryrestrict -6 default kod nomodify notrap nopeer noqueryrestrict 127.0.0.1restrict -6 ::1server 0.asia.pool.ntp.orgserver 1.asia.pool.ntp.orgserver 2.asia.pool.ntp.orgserver 3.asia.pool.ntp.orgrestrict 192.168.1.0 mask 255.255.255.0 nomodify notrapdriftfile /var/lib/ntp/driftkeys /etc/ntp/keys

我們僅允許 192.168.1.0/24 子網(wǎng)的客戶端訪問(wèn)這個(gè) NTP 服務(wù)器。

由于默認(rèn)情況下基于 RHEL7 的發(fā)行版的防火墻是打開(kāi)的,因此要允許 ntp 服務(wù)通過(guò)。

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

更新配置后要重啟服務(wù):

對(duì)于 sysvinit 系統(tǒng)?;?Debian 的系統(tǒng)需要去運(yùn)行 ntp 而不是 ntpd。

# service ntpd restart# chkconfig ntpd on

對(duì)于 systemctl 系統(tǒng)?;?Debian 的需要去運(yùn)行 ntpntpd

# systemctl restart ntpd# systemctl enable ntpd

NTP 客戶端:如何在 Linux 上安裝 NTP 客戶端?

正如我在這篇文章中前面所說(shuō)的。NTP 服務(wù)器端和客戶端的安裝包沒(méi)有什么不同。因此在客戶端上也安裝同樣的軟件包。

對(duì)于 Fedora 系統(tǒng),使用 DNF 命令 去安裝 ntp。

$ sudo dnf install ntp

對(duì)于 Debian/Ubuntu 系統(tǒng),使用 APT-GET 命令 或者 APT 命令 去安裝 ntp。

$ sudo apt install ntp

對(duì)基于 Arch Linux 的系統(tǒng),使用 Pacman 命令 去安裝 ntp。

$ sudo pacman -S ntp

對(duì) RHEL/CentOS 系統(tǒng),使用 YUM 命令 去安裝 ntp。

$ sudo yum install ntp

對(duì)于 openSUSE Leap 系統(tǒng),使用 Zypper 命令 去安裝 ntp。

$ sudo zypper install ntp

我已經(jīng)在 CentOS7.2daygeek.com` 這臺(tái)主機(jī)上安裝和配置了 NTP 服務(wù)器,因此將其附加到所有的客戶端機(jī)器上。

# vi /etc/ntp.conf
restrict default kod nomodify notrap nopeer noqueryrestrict -6 default kod nomodify notrap nopeer noqueryrestrict 127.0.0.1restrict -6 ::1server CentOS7.2daygeek.com prefer iburstdriftfile /var/lib/ntp/driftkeys /etc/ntp/keys

更新配置后重啟服務(wù):

對(duì)于 sysvinit 系統(tǒng)。基于 Debian 的系統(tǒng)需要去運(yùn)行 ntp 而不是 ntpd。

# service ntpd restart# chkconfig ntpd on

對(duì)于 systemctl 系統(tǒng)。基于 Debian 的需要去運(yùn)行 ntpntpd。

# systemctl restart ntpd# systemctl enable ntpd

重新啟動(dòng) NTP 服務(wù)后等待幾分鐘以便從 NTP 服務(wù)器獲取同步的時(shí)間。

在 Linux 上運(yùn)行下列命令去驗(yàn)證 NTP 服務(wù)的同步狀態(tài)。

# ntpq –p或# ntpq -pn      remote           refid      st t when poll reach   delay   offset  jitter==============================================================================*CentOS7.2daygee 133.243.238.163  2 u   14   64   37    0.686    0.151  16.432

運(yùn)行下列命令去得到 ntpd 的當(dāng)前狀態(tài)。

# ntpstatsynchronised to NTP server (192.168.1.8) at stratum 3   time correct to within 508 ms   polling server every 64 s

運(yùn)行 date 命令。

# dateTue Mar 26 23:17:05 CDT 2019

如果你觀察到 NTP 中輸出的時(shí)間偏移很大。運(yùn)行下列命令從 NTP 服務(wù)器手動(dòng)同步時(shí)鐘。當(dāng)你執(zhí)行下列命令的時(shí)候,確保你的 NTP  客戶端應(yīng)該為未活動(dòng)狀態(tài)。(LCTT 譯注:當(dāng)時(shí)間偏差很大時(shí),客戶端的自動(dòng)校正需要花費(fèi)很長(zhǎng)時(shí)間才能逐步追上,因此應(yīng)該手動(dòng)運(yùn)行以更新)

# ntpdate –uv CentOS7.2daygeek.com

“怎么在Linux上安裝和配置NTP服務(wù)器和客戶端”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識(shí)可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實(shí)用文章!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI