ubuntu22.04系統如何自建2級ntp服務器

一:ntp服務器詳情

服務器型號

系統版本

IP地址

主機名

ntp服務版本

虛擬機8c-32g-1T

Ubuntu22.04

10.20.30.2

DMZ-NTP-SERVER

4.2.8p15

二:ntp服務端部署配置腳本

#!/bin/bash  # 腳本信息  
echo "----------------------------------------"  
echo "NTP 服務器安裝腳本"  
echo "----------------------------------------"  # 更新軟件包列表  
echo "正在更新軟件包列表..."  
sudo apt update  # 安裝 NTP 服務,避免交互提示  
echo "正在安裝 NTP 服務..."  
sudo DEBIAN_FRONTEND=noninteractive apt install -y ntp  # 備份原配置文件  
echo "正在備份原配置文件 ntp.conf..."  
sudo cp /etc/ntp.conf /etc/ntp.conf.bak  # 配置 NTP 服務器  
echo "正在配置 NTP 服務器..."  
sudo bash -c 'cat > /etc/ntp.conf << EOF  
# 使用來自 pool.ntp.org 項目的公共服務器  
server ntp1.aliyun.com iburst  
server ntp2.aliyun.com iburst  
server ntp3.aliyun.com iburst  # 允許本地網絡中的機器與 NTP 服務器同步  
restrict default nomodify notrap nopeer noquery  
restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap  # 請根據您的內部網絡進行適當修改  # 啟用日志記錄  
logfile /var/log/ntp.log  
EOF'  # 確保配置文件沒有多余的空格或隱藏字符  
sudo sed -i 's/[[:space:]]*$//' /etc/ntp.conf  # 刪除行尾的空格  
sudo sed -i '/^$/d' /etc/ntp.conf  # 刪除空行  # 啟動 NTP 服務  
echo "正在啟動 NTP 服務..."  
sudo systemctl start ntp  
sudo systemctl enable ntp  # 顯示服務狀態  
echo "NTP 服務狀態:"  
sudo systemctl status ntp  # 提示用戶在其他服務器上配置 NTP 客戶端  
echo "----------------------------------------"  
echo "要配置其他服務器,請將此 NTP 服務器的 IP 地址添加到 /etc/ntp.conf:"  
echo "server <NTP_SERVER_IP> iburst"  
echo "最后,在客戶端上重啟 NTP 服務。"

三:ntp服務維護相關命令

查看服務狀態:systemctl status ntp.service

重啟服務:systemctl restart ntp.service 
關閉服務:systemctl stop ntp.service 
啟動服務:systemctl start ntp.service
查看日志:tail -20f /var/log/ntp.log 或者  
查看服務的系統日志:journalctl -u ntp
查看或者編輯配置文件:cat /etc/ntp.conf

四:客戶端安裝配置測試ntp服務

(1)提前保證要配置 ntp 服務的機器和10.20.30.2 ntp 服務端網絡且端口互通:

telnet 10.20.30.2 123

(2)在客戶端機器上安裝 ntp 服務:

sudo apt update 
sudo apt install -y ntp

(3)配置ntp客戶端,編輯 ntp 客戶端的配置文件 /etc/ntp.conf,將 ntp 服務端的 IP 地址添加到配置文件中:

sudo vim /etc/ntp.conf并添加以下行:server 10.20.30.2 iburst

(4)完成配置后,重啟客戶端 ntp 服務使配置生效:

sudo systemctl restart ntp

(5)測試 ntp 時間同步是否生效,使用 ntpq 命令檢查 ntp 同步狀態。運行以下命令:

ntpq -p

此命令會列出已配置的 ntp 服務器及其狀態。如果配置正確應該能夠看到 ntp 服務器的條目以及它的響應時間。會看到類似于以下的輸出(10.20.30.2 ? ? ?202.112.29.82 ? ?2 u ? ?1 ? 64 ? ?1 ? ?0.262 ?+25.187 ? 1.040 這一列代表配置成功,但是還需要測試時間同步是否成功):

root@DMZ-DNS-SERVER:~# ntpq -premote           refid      st t when poll reach   delay   offset  jitter
==============================================================================0.ubuntu.pool.n .POOL.          16 p    -   64    0    0.000   +0.000   0.0001.ubuntu.pool.n .POOL.          16 p    -   64    0    0.000   +0.000   0.0002.ubuntu.pool.n .POOL.          16 p    -   64    0    0.000   +0.000   0.0003.ubuntu.pool.n .POOL.          16 p    -   64    0    0.000   +0.000   0.000ntp.ubuntu.com  .POOL.          16 p    -   64    0    0.000   +0.000   0.00010.20.30.2      202.112.29.82    2 u    1   64    1    0.262  +25.187   1.040ntp1.flashdance 194.58.202.20    2 u    1   64    1  186.576   +5.922   1.366dns2.synet.edu. 202.118.1.48     2 u    1   64    1   33.411  +17.579   0.000electrode.felix 131.188.3.221    2 u    1   64    1  269.660  -17.697   1.204ntp5.flashdance 194.58.202.20    2 u    2   64    1  189.559   +4.068   0.000ntp.wdc2.us.lea 130.133.1.10     2 u    1   64    1  333.790  -17.704   0.000ntp8.flashdance 194.58.202.148   2 u    1   64    1  216.010  +14.262   1.806119.28.183.184  100.122.36.196   2 u    2   64    1   57.018  +18.580   0.852185.125.190.58  79.243.60.50     2 u    4   64    1  279.504  +36.708   0.000time.cloudflare 10.191.8.4       3 u    2   64    1  200.383  +17.699   0.000185.125.190.56  17.253.28.123    2 u    1   64    1  460.684  -39.013   0.000

列名釋義:

  • remote 列顯示了當前連接的 NTP 服務器,包括 10.20.30.2

  • refid 列顯示了該 NTP 服務器的參考時鐘(在您的情況下是 202.112.29.82)。

  • st 列表示服務器的層級(2 表示這是一個二級 NTP 服務器)。

  • reach 列顯示了與該 NTP 服務器的連接狀態,值為 1 表示最近的請求已經成功接收。

  • delay、offset 和 jitter 列顯示了網絡延遲、時間偏移和抖動等信息。

(6)檢查時間是否同步,可以通過以下命令查看當前時間:

date

然后,等待一段時間(通常是幾分鐘),ntp 客戶端會自動與ntp服務端進行同步。再次運行 ntpq -p 查看 ntp 同步狀態,直到 reach 列顯示為 377(即所有請求的回復都成功)。

root@DMZ-DNS-SERVER:~# ntpq -premote           refid      st t when poll reach   delay   offset  jitter
==============================================================================0.ubuntu.pool.n .POOL.          16 p    -   64    0    0.000   +0.000   0.0001.ubuntu.pool.n .POOL.          16 p    -   64    0    0.000   +0.000   0.0002.ubuntu.pool.n .POOL.          16 p    -   64    0    0.000   +0.000   0.0003.ubuntu.pool.n .POOL.          16 p    -   64    0    0.000   +0.000   0.000ntp.ubuntu.com  .POOL.          16 p    -   64    0    0.000   +0.000   0.000
+10.20.30.2      203.107.6.88     3 u  116  128  377    0.287  -14.026   2.050
*dns2.synet.edu. 202.118.1.48     2 u   69  128  377   32.561  -13.713   1.781
-ntp8.flashdance 194.58.202.148   2 u   65  256  377  193.624  -21.543   4.956
+119.28.183.184  100.122.36.196   2 u  231  128  366   55.292   -9.522   3.699
-101.43.66.2     202.112.29.82    2 u    9  128  377   37.396  -12.486   3.318

(7)確保防火墻未阻止 ntp 流量

如果無法同步,請確認防火墻未阻止 ntp 流量。默認情況下,ntp 使用 udp 123 端口。需要在 ntp 服務器上檢查防火墻規則:

sudo ufw status

如果 ntp 服務被阻止,則可以通過以下命令允許 ntp 流量:

sudo ufw allow ntp

(8)備注:自建的ntp還是依賴于阿里云的1級ntp服務器,我們這里屬于2級ntp服務器

ntp1.aliyun.com 
ntp2.aliyun.com 
ntp3.aliyun.com

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/72139.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/72139.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/72139.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

計算機畢業設計SpringBoot+Vue.js汽車資訊網站(源碼+文檔+PPT+講解)

溫馨提示&#xff1a;文末有 CSDN 平臺官方提供的學長聯系方式的名片&#xff01; 溫馨提示&#xff1a;文末有 CSDN 平臺官方提供的學長聯系方式的名片&#xff01; 溫馨提示&#xff1a;文末有 CSDN 平臺官方提供的學長聯系方式的名片&#xff01; 作者簡介&#xff1a;Java領…

UE5切換關卡函數OpenLevel,輸入模式結構體,UI界面

1.輸入模式結構體 FInputModeGameOnly&#xff1a;玩家只能與游戲世界交互&#xff0c;UI 不可交互。FInputModeGameAndUI&#xff1a;玩家可以與游戲世界和 UI 同時交互。FInputModeUIOnly&#xff1a;玩家只能與 UI 交互&#xff0c;無法與游戲世界進行互動。 FInputModeGam…

JavaScript系列03-異步編程全解析

本文介紹了異步相關的內容&#xff0c;包括&#xff1a; 回調函數與回調地獄Promise詳解async/await語法Generator函數事件循環機制異步編程最佳實踐 1、回調函數與回調地獄 JavaScript最初是為處理網頁交互而設計的語言&#xff0c;異步編程是其核心特性之一。最早的異步編…

kali liux的下載

Kali Linux | Penetration Testing and Ethical Hacking Linux Distributionhttps://www.kali.org/ VMware虛擬機https://pan.quark.cn/s/aa869ffbf184 【補充一個今天學到的知識昂和內容無關:&#xff08;遙感&#xff09;指非接觸的遠距離探測技術&#xff0c;使用傳感器探…

windows下玩轉vllm:在wsl下安裝vllm

文章目錄 前言安裝wsl啟動wsl的默認分發使用python部署vllm創建并激活虛擬環境直接說結論試錯過程安裝vllm簡單測試一下,看看行不行附錄,安裝wsl安裝ubuntu分發步驟 3: 設置用戶和密碼步驟 4: 更新系統步驟 5: 使用 WSL前言 當前,部署通義千問2.5-vl已經是一件箭在弦上,不…

《信息論與編碼》課程筆記——緒論和離散信源(一)

目錄 緒論 一、信息論的基本概念 1.1 信息的定義 1.2 信息的三個層次 二、香農信息論的研究內容 2.1 信源與信源編碼 2.2 信道與信道編碼 2.3 保密通信與密碼學 離散信源&#xff08;一&#xff09; 一、自信息 1.1 定義 二、離散信源 2.1 定義 2.2 符號表示 三、…

大模型中的Token到底是什么?

文章目錄 引言什么是Token&#xff1f;定義舉例說明中文Tokenization Tokenization的復雜性子詞TokenizationBPE算法BPE示例 可視化BPE過程 Token在大模型中的作用輸入表示上下文理解輸出生成 Tokenization的挑戰語言差異未登錄詞計算效率 Token消耗的規則Token消耗的基本規則示…

Acwing 哞叫時間II

6134. 哞叫時間II - AcWing題庫 題目大意&#xff1a;統計數組中子序列abb的數量&#xff1a; 做法&#xff1a;從右往左枚舉倒數第二個b&#xff0c;查前面出現過多少次a&#xff0c;查的方法(開一個數組left[x]來統計當前及前面出現過多少次x&#xff0c;cnt記錄不同x的數量…

Go中slice和map引用傳遞誤區

背景 關于slice和map是指傳遞還是引用傳遞&#xff0c;很多文章都分析得模棱兩可&#xff0c;其實在Go中只有值傳遞&#xff0c;但是很多情況下是因為分不清slice和map的底層實現&#xff0c;所以導致很多人在這一塊產生疑惑&#xff0c;下面通過代碼案例分析slice和map到底是…

20250225-代碼筆記03-class CVRPModel AND other class

文章目錄 前言一、class CVRPModel(nn.Module):__init__(self, **model_params)函數功能函數代碼 二、class CVRPModel(nn.Module):pre_forward(self, reset_state)函數功能函數代碼 三、class CVRPModel(nn.Module):forward(self, state)函數功能函數代碼 四、def _get_encodi…

使用Hydra進行AI項目的動態配置管理

引言:機器學習中的超參數調優挑戰 在機器學習領域,超參數調優是決定模型性能的關鍵環節。不同的模型架構,如神經網絡中的層數、節點數,決策樹中的最大深度、最小樣本分割數等;以及各種訓練相關的超參數,像學習率、優化器類型、批量大小等,其取值的選擇對最終模型的效果…

preg_replace 與 str_replace 的比較與選擇

preg_replace 與 str_replace 的比較與選擇 ——PHP字符串處理的核心工具深度解析 一、核心功能定位 在PHP的字符串處理中&#xff0c;str_replace和preg_replace是兩種最常用的替換函數&#xff0c;但其設計目標和應用場景存在本質差異&#xff1a; str_replace 簡單字符串替…

嵌入式開發:傅里葉變換(4):在 STM32上面實現FFT(基于STM32L071KZT6 HAL庫+DSP庫)

目錄 步驟 1&#xff1a;準備工作 步驟 2&#xff1a;創建 Keil 項目&#xff0c;并配置工程 步驟 3&#xff1a;在MDK工程上添加 CMSIS-DSP 庫 步驟 5&#xff1a;編寫代碼 步驟 6&#xff1a;配置時鐘和優化 步驟 7&#xff1a;調試與驗證 步驟 8&#xff1a;優化和調…

【MySQL篇】數據類型

目錄 前言&#xff1a; 1&#xff0c;數據類型的分類 ?編輯 2 &#xff0c;數值類型 2.1 tinyint類型 2.2 bit類型 2.3 小數類型 2.3.1 float類型 2.3.2 decimal類型 3&#xff0c;字符串類型 3.1 char 3.2 varchar 3.3 char與varchar的比較 3.4日期和時間類型 3.5 …

nuxt常用組件庫html-validator應用解析

html-validator 主要用于自動驗證nuxt服務器呈現的HTML(SSR和SSG)&#xff0c;以檢測可能導致水合錯誤的HTML常見問題&#xff0c;有助于減少水合錯誤&#xff0c;檢測常見的可訪問性錯誤。 安裝 npx nuxilatest module add html-validator配置 若自動更新nuxt.config.ts配置文…

智能圖像處理平臺:圖片管理

接著我們講圖片管理&#xff0c;先實現圖片基礎的增刪改查&#xff0c;再去考慮圖像處理。 主要是&#xff0c;我們需要完成查詢時&#xff0c;查詢的圖片的上傳者的角色等級小于等于我們當前登陸賬號。 后端controller&#xff1a; package com.llpp.controller;import cn.…

大模型知識蒸餾技術(8)——知識蒸餾應用場景

版權聲明 本文原創作者:谷哥的小弟作者博客地址:http://blog.csdn.net/lfdfhl1. 知識蒸餾概述 知識蒸餾是一種將大型復雜模型(教師模型)的知識遷移到小型簡單模型(學生模型)的技術。其核心原理是通過教師模型的輸出(通常是softmax后的概率分布)來指導學生模型的訓練,…

LeetCode:131. 分割回文串(DP Java)

目錄 131. 分割回文串 題目描述&#xff1a; 實現代碼與解析&#xff1a; 動態規劃 原理思路&#xff1a; 131. 分割回文串 題目描述&#xff1a; 給你一個字符串 s&#xff0c;請你將 s 分割成一些子串&#xff0c;使每個子串都是 回文串 。返回 s 所有可能的分割方案。…

INT202 Complexity of Algroithms 算法的復雜度

文章目錄 1. 前言1.1 算法&#xff08;Algorithms&#xff09;和數據結構&#xff08;Data Structure&#xff09;1.2 什么是好的算法&#xff1f;1.3 算法分析1.3.1 實驗分析&#xff08;Experimental Analysis&#xff09;1.3.2 理論分析1.3.2.1 偽代碼&#xff08;Pseudo-co…

BDF報告翻譯簡介后:關于A φ方法criterion引理1如何由范數導出內積

關于A φ方法criterion 引理1 如何由范數導出內積 在數學中&#xff0c;特別是在泛函分析中&#xff0c;給定一個范數&#xff0c;可以定義一個與之相關的內積。這個過程不是總是可能的&#xff0c;但當一個賦范向量空間是完備的且滿足平行四邊形恒等式時&#xff0c;可以導出…