1. 如何搭建自己的NTP伺服器
NTP伺服器【Network Time Protocol(NTP)】是用來使計算機時間同步化的一種協議,它可以使計算機對其伺服器或時鍾源(如石英鍾,GPS等等)做同步化,它可以提供高精準度的時間校正(LAN上與標准間差小於1毫秒,WAN上幾十毫秒),且可介由加密確認的方式來防止惡毒的協議攻擊。時間按NTP伺服器的等級傳播。按照離外部UTC源的遠近把所有伺服器歸入不同的Stratum(層)中。
網路時間協議(NTP)用來同步網路上不同主機的系統時間。你管理的所有主機都可以和一個指定的被稱為 NTP 伺服器的時間伺服器同步它們的時間。而另一方面,一個 NTP 伺服器會將它的時間和任意公共 NTP 伺服器,或者你選定的伺服器同步。由 NTP 管理的所有系統時鍾都會同步精確到毫秒級。
在公司環境中,如果他們不想為 NTP 傳輸打開防火牆,就有必要設置一個內部 NTP 伺服器,然後讓員工使用內部伺服器而不是公共 NTP 伺服器。在這個指南中,我們會介紹如何將一個 CentOS 系統配置為 NTP 伺服器。在介紹詳細內容之前,讓我們先來簡單了解一下 NTP 的概念。
為什麼我們需要 NTP?
由於製造工藝多種多樣,所有的(非原子)時鍾並不按照完全一致的速度行走。有一些時鍾走的比較快而有一些走的比較慢。因此經過很長一段時間以後,一個時鍾的時間慢慢的和其它的發生偏移,這就是常說的 「時鍾漂移」 或 「時間漂移」。為了將時鍾漂移的影響最小化,使用 NTP 的主機應該周期性地和指定的 NTP 伺服器交互以保持它們的時鍾同步。
在不同的主機之間進行時間同步對於計劃備份、入侵檢測記錄、分布式任務調度或者事務訂單管理來說是很重要的事情。它甚至應該作為日常任務的一部分。
NTP 的層次結構
NTP 時鍾以層次模型組織。層級中的每層被稱為一個 stratum(階層)。stratum 的概念說明了一台機器到授權的時間源有多少 NTP 跳。
Stratum 0 由沒有時間漂移的時鍾組成,例如原子時鍾。這種時鍾不能在網路上直接使用。Stratum N (N > 1) 層伺服器從 Stratum N-1 層伺服器同步時間。Stratum N 時鍾能通過網路和彼此互聯。
NTP 支持多達 15 個 stratum 的層級。Stratum 16 被認為是未同步的,不能使用的。
准備 CentOS 伺服器
現在讓我們來開始在 CentOS 上設置 NTP 伺服器。
首先,我們需要保證正確設置了伺服器的時區。在 CentOS 7 中,我們可以使用 timedatectl 命令查看和更改伺服器的時區(比如,"Australia/Adelaide",LCTT 譯註:中國可設置為 Asia/Shanghai )
代碼如下:
# timedatectl list-timezones | grep Australia
# timedatectl set-timezone Australia/Adelaide
# timedatectl
繼續並使用 yum 安裝需要的軟體
代碼如下:
# yum install ntp
然後我們會添加全球 NTP 伺服器用於同步時間。
代碼如下:
# vim /etc/ntp.conf
server 0.oceania.pool.ntp.org
server 1.oceania.pool.ntp.org
server 2.oceania.pool.ntp.org
server 3.oceania.pool.ntp.org
默認情況下,NTP 伺服器的日誌保存在 /var/log/messages。如果你希望使用自定義的日誌文件,那也可以指定。
復制代碼
代碼如下:
logfile /var/log/ntpd.log
如果你選擇自定義日誌文件,確保更改了它的屬主和 SELinux 環境。
復制代碼
代碼如下:
# chown ntp:ntp /var/log/ntpd.log
# chcon -t ntpd_log_t /var/log/ntpd.log
現在初始化 NTP 服務並確保把它添加到了開機啟動。
代碼如下:
# systemctl restart ntp
# systemctl enable ntp
驗證 NTP Server 時鍾
我們可以使用 ntpq 命令來檢查本地伺服器的時鍾如何通過 NTP 同步。
下面的表格解釋了輸出列。
remote 源在 ntp.conf 中定義。『*』 表示當前使用的,也是最好的源;『+』 表示這些源可作為 NTP 源;『-』 標記的源是不可用的。
refid 用於和本地時鍾同步的遠程伺服器的 IP 地址。
st Stratum(階層)
t 類型。 'u' 表示單播(unicast)。其它值包括本地(local)、多播(multicast)、廣播(broadcast)。
when 自從上次和伺服器交互後經過的時間(以秒數計)。
poll 和伺服器的輪詢間隔,以秒數計。
reach 表示和伺服器交互是否有任何錯誤的八進制數。值 337 表示 100% 成功(即十進制的255)。
delay 伺服器和遠程伺服器來回的時間。
offset 我們伺服器和遠程伺服器的時間差異,以毫秒數計。
jitter 兩次取樣之間平均時差,以毫秒數計。
控制到 NTP 伺服器的訪問
默認情況下,NTP 伺服器允許來自所有主機的查詢。如果你想過濾進來的 NTP 同步連接,你可以在你的防火牆中添加規則過濾流量。
# iptables -A INPUT -s 192.168.1.0/24 -p udp --dport 123 -j ACCEPT
# iptables -A INPUT -p udp --dport 123 -j DROP
該規則允許從 192.168.1.0/24 來的 NTP 流量(埠 UDP/123),任何其它網路的流量會被丟棄。你可以根據需要更改規則。
配置 NTP 客戶端
1. Linux
NTP 客戶端主機需要 ntpupdate 軟體包來和伺服器同步時間。可以輕松地使用 yum 或 apt-get 安裝這個軟體包。安裝完軟體包之後,用伺服器的 IP 地址運行下面的命令。
代碼如下:
# ntpdate
基於 RHEL 和 Debian 的系統命令都相同。
2. Windows
如果你正在使用 Windows,在日期和時間設置(Date and Time settings)下查找網路時間(Internet Time)。
3. Cisco 設備
如果你想要同步 Cisco 設備的時間,你可以在全局配置模式下使用下面的命令。
代碼如下:
# ntp server
來自其它廠家的支持 NTP 的設備有自己的用於網路時間的參數。如果你想將設備和 NTP伺服器同步時間,請查看設備的說明文檔。
結論
總而言之,NTP 是在你的所有主機上同步時鍾的一個協議。我們已經介紹了如何設置 NTP 伺服器並使支持 NTP 的設備和伺服器同步時間。
2. 如何將PC配置為時鍾伺服器即NTP
我就是這樣用的,很好。
Windows(2003)下配置NTP時間伺服器
一、服務端設置:
因為默認情況下,WINDOWS SERVER 2003 是作為NTP客戶端工作的 ,所以必須通過修改注冊表,以使系統作為NTP伺服器運行。注意,工作之前請先備份注冊表文件。
1、通過開始菜單,輸入regedit命令後打開注冊表設定畫面,此時請一定備份塵山注冊表文件。
2、修改以下選項的鍵值
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\
NtpServer內的「Enabled」設定為1,打開NTP伺服器功歲敬能
3、修改以下鍵值
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config\
AnnounceFlags設定為5,該設定強制主機將它自身宣布為可靠的時間源,從而使用內置的互補金屬氧化物半導體(CMOS) 時鍾。
4、在dos命令行執行以下命令,確保以上修改起作用
net stop w32time
net start w32time
推薦計劃;如果該伺服器和internet連接,那麼為了避免伺服器和internet上的ntp同步,最好追加以下配置:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\
NtpClient的「enable」設定為0 以防止作為客戶端自動同步外界的時派雀中間服務
二、客戶設置:
1、指定主時間伺服器。在DOS方式輸入「net time /setsntp:ntp.sjtu.e.cn」,這里我們指定ntp.sjtu.e.cn是主時間伺服器,也可以是其它地址(210.72.145.44)。
2、自由設定XP時間同步間隔:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\
NtpClient的「SpecialPollInterval」默認設定為604800(或86400)
3. win7鏃墮棿鍚屾ユ湇鍔″櫒璁劇疆
鍦ㄦ垜浠鏃ュ父浣跨敤鐢佃剳鐨勮繃紼嬩腑錛屾湁鏃朵細鍙戠幇鐢佃剳鏃墮棿涓嶅噯紜錛岄偅鏈変粈涔堝姙娉曞彲浠ヨВ鍐寵繖涓闂棰樺憿錛熶笅闈㈠皬緙栨暀浣犲備綍鏍″噯鏃墮棿銆
鎵撳紑鈥淲indows璁劇疆鈥濓紝鐐瑰嚮鈥滄椂闂村拰璇璦鈥
鐐瑰嚮鈥滃尯鍩熲濋」閫夋嫨鈥滃叾浠栨棩鏈熴佹椂闂村拰鍖哄煙璁劇疆鈥濓紙鎴栬呯洿鎺ユ墦寮鎺у埗闈㈡澘錛岀偣鍑燴滄椂閽熷拰鍖哄煙鈥濓級
鐐瑰嚮鈥滆劇疆鏃墮棿鍜屾棩鏈熲
鎵撳紑鈥滄椂闂村拰鏃ユ湡鈥濈獥鍙e悗閫夋嫨鈥淚nternet鏃墮棿鈥濓紝鐒跺悗鐐瑰嚮鈥滄洿鏀硅劇疆鈥
鐐瑰嚮鏈嶅姟鍣ㄥ悗鐨勬柟妗嗚緭鍏ntp.ntsc.ac.cn錛堢綉鍧涓哄浗瀹舵巿鏃朵腑蹇 NTP 鏈嶅姟鍣錛,鐒跺悗鐐瑰嚮鈥滅珛鍗蟲洿鏂扳濓紝鍐嶇偣鍑燴滅『瀹氣濆氨鍙浠ヤ簡錛屼互鍚巜indows緋葷粺灝變細浣跨敤鏇存敼鍚庣殑鏈嶅姟鍣ㄨ繘琛岃嚜鍔ㄥ悓姝
闄や簡涓婃柟灝忕紪鎻愪緵鐨勭綉鍧鍙浠ヨ繘琛屾牎鍑嗘椂闂村栵紝浠ヤ笅緗戝潃閮藉彲浠ョ敤鏉ュ悓姝ユ椂闂達細
涓鍥 NTP 蹇閫熸巿鏃舵湇鍔
cn.ntp.org.cn
闃塊噷浜戝叕鍏 NTP 鏈嶅姟鍣
ntp1.aliyun.com
ntp2.aliyun.com
ntp3.aliyun.com
ntp4.aliyun.com
ntp5.aliyun.com
ntp6.aliyun.com
ntp7.aliyun.com
鑵捐浜戝叕鍏 NTP 鏈嶅姟鍣
time1.cloud.tencent.com
time2.cloud.tencent.com
time3.cloud.tencent.com
time4.cloud.tencent.com
time5.cloud.tencent.com
4. 如何正確的建立windows的時間伺服器
一、選擇伺服器基準時鍾,可選擇內部硬體時鍾和外部NTP授時伺服器。 (首先要保證自己的時間准確)x0dx0aA.配置 Windows 時間服務以使用伺服器內部硬體時鍾x0dx0a(1). 單擊「開始」,單擊「運行」,鍵入 regedit,然後單擊「確定」。x0dx0a(2). 找到並單擊下面的注冊表子項:x0dx0a程序代碼x0dx0aHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config\AnnounceFlagsx0dx0a(3). 在右窗格中,右鍵單擊「AnnounceFlags」,然後單擊「修改」。x0dx0a(4). 在「編輯 DWORD 值」的「數值數據」框中鍵入 A,然後單擊「確定」。x0dx0aB.配置 Windows 時間服務以使用外部時間源x0dx0a(1). 指定時間源。為此,請按照下列步驟操作:x0dx0aa. 找到並單擊下面的注冊表子項:x0dx0a程序代碼x0dx0aHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Parameters\NtpServerx0dx0ab. 在右窗格中,右鍵單擊「NtpServer」,然後單擊「修改」。x0dx0ac. 在「編輯值」的「數值數據」框中鍵入 Peers,然後單擊「確定」。x0dx0a注意:Peers 是一個佔位符,應替換為您的計算機從中獲取時間戳的對等端列表(以空格分隔)。列出的每個 DNS 名稱都必須是唯一的。必須在每個 DNS 名稱後面附加 ,0x1。如果不在每個 DNS 名稱後面附加 ,0x1,則在下面步驟中所做的更改將不會生效。x0dx0a(2). 選擇輪詢間隔。為此,請按照下列步驟操作:x0dx0aa. 找到並單擊下面的注冊表子項:x0dx0a程序代碼x0dx0aHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpClientx0dx0a\SpecialPollIntervalx0dx0ab. 在右窗格中,右鍵單擊「SpecialPollInterval」,然後單擊「修改」。x0dx0ac. 在「編輯 DWORD 值」的「數值數據」框中鍵入 TimeInSeconds,然後單擊「確定」。x0dx0a注意:TimeInSeconds 是一個佔位符,應替換為您希望各次輪詢之間的間隔秒數。建議值為 900(十進制)。該值將時間伺服器配置為每隔 15 分鍾輪詢一次。x0dx0a(3). 配置時間校準設置。為此,請按照下列步驟操作:x0dx0aa. 找到並單擊下面的注冊表子項:x0dx0a程序代碼x0dx0aHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Configx0dx0a\MaxPosPhaseCorrectionx0dx0ab. 在右窗格中,右鍵單擊「MaxPosPhaseCorrection」,然後單擊「修改」。x0dx0ac. 在「編輯 DWORD 值」的「基數」框中單擊以選擇「十進制」。x0dx0ad. 在「編輯 DWORD 值」的「數值數據」框中鍵入 TimeInSeconds,然後單擊「確定」。x0dx0a注意:TimeInSeconds 是一個佔位符,應替換為適當的值,如 1 小時 (3600) 或 30 分鍾 (1800)。您選擇的值將因輪詢間隔、網路狀況和外部時間源而異。x0dx0ae. 找到並單擊下面的注冊表子項:x0dx0a程序代碼x0dx0aHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config\. 在右窗格中,右鍵單擊「MaxNegPhaseCorrection」,然後單擊「修改」。x0dx0ag. 在「編輯 DWORD 值」的「基數」框中單擊以選擇「十進制」。x0dx0ah. 在「編輯 DWORD 值」的「數值數據」框中鍵入 TimeInSeconds,然後單擊「確定」。x0dx0a注意:TimeInSeconds 是一個佔位符,應替換為適當的值,如 1 小時 (3600) 或 30 分鍾 (1800)。您選擇的值將因輪詢間隔、網路狀況和外部時間源而異。x0dx0a二、配置NTP授時伺服器x0dx0a(1). 將伺服器類型更改為 NTP。為此,請按照下列步驟操作:x0dx0aa. 單擊「開始」,單擊「運行」,鍵入 regedit,然後單擊「確定」。x0dx0ab. 找到並單擊下面的注冊表子項:x0dx0a程序代碼x0dx0aHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Parameters\Typex0dx0ac. 在右窗格中,右鍵單擊「Type」,然後單擊「修改」。x0dx0ad. 在「編輯值」的「數值數據」框中鍵入 NTP,然後單擊「確定」。x0dx0a(2). 將 AnnounceFlags 設置為 5。為此,請按照下列步驟操作:x0dx0aa. 找到並單擊下面的注冊表子項:x0dx0a程序代碼x0dx0aHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config\AnnounceFlagsx0dx0ab. 在右窗格中,右鍵單擊「AnnounceFlags」,然後單擊「修改」。x0dx0ac. 在「編輯 DWORD 值」的「數值數據」框中鍵入 5,然後單擊「確定」。x0dx0a(3). 啟用 NTPServer。為此,請按照下列步驟操作:x0dx0aa. 找到並單擊下面的注冊表子項:x0dx0a程序代碼x0dx0aHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpServerx0dx0ab. 在右窗格中,右鍵單擊「Enabled」,然後單擊「修改」。x0dx0ac. 在「編輯 DWORD 值」的「數值數據」框中鍵入 1,然後單擊「確定」。x0dx0a三、使配置即時生效x0dx0a1. 退出注冊表編輯器。x0dx0a2. 在命令提示符處,鍵入以下命令以重新啟動 Windows 時間服務,然後按 Enter:x0dx0a程序代碼x0dx0anet stop w32time && net start w32timex0dx0a四、配置防火牆允許NTP訪問x0dx0a如果你需要在伺服器所在區域外訪問該伺服器的NTP服務,需要在防火牆上添加允許:x0dx0a程序代碼x0dx0a名稱 埠 協議 方向x0dx0aSNTP時間基準 123 UDP 入x0dx0a五、相關注冊表說明x0dx0a注冊表項 MaxPosPhaseCorrectionx0dx0a路徑 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Configx0dx0a注意: 該項指定服務可進行的最大正時間校準量(以秒為單位)。如果服務確定某個更改幅度大於所需的幅度,它將記錄一個事件。(0xFFFFFFFF 是一種特殊情況,它表示總是校準時間。)域成員的默認值是 0xFFFFFFFF。獨立客戶端和伺服器的默認值是 54,000,即 15 小時。x0dx0a注冊表項 MaxNegPhaseCorrectionx0dx0a路徑 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Configx0dx0a注意: 該項指定服務可進行的最大負時間校準量(以秒為單位)。如果服務確定某個更改幅度大於所需的幅度,它將轉而記錄一個事件。(-1 是一種特殊情況,它表示總是校準時間。)域成員的默認值是 0xFFFFFFFF。獨立客戶端和伺服器的默認值是 54,000,即 15 小時。x0dx0a注冊表項 MaxPollIntervalx0dx0a路徑 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Configx0dx0a注意: 該項指定系統輪詢間隔所允許的最大間隔(單位是對數表示的秒)。盡管系統必須根據預定的間隔進行輪詢,但是提供程序可以根據請求拒絕生成示例。域成員的默認值是 10。獨立客戶端和伺服器的默認值是 15。x0dx0a注冊表項 SpecialPollIntervalx0dx0a路徑 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpClientx0dx0a注意: 該項指定手動對等端的特殊輪詢間隔(以秒為單位)。當啟用 SpecialInterval 0x1 標志時,W32Time 將使用此輪詢間隔而非操作系統確定的輪詢間隔。域成員的默認值是 3,600。獨立客戶端和伺服器的默認值是 604,800。x0dx0a注冊表項 MaxAllowedPhaseOffsetx0dx0a路徑 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Configx0dx0a注意: 該項指定 W32Time 嘗試使用時鍾速率調整計算機時鍾的最大偏移量(以秒為單位)。當偏移量大於該速率時,W32Time 將直接設置計算機時鍾。域成員的默認值是 300。獨立客戶端和伺服器的默認值是 1。x0dx0a備注說明:x0dx0a1、一般操作:x0dx0a1)將時間伺服器改成,授時中心地址(210。72。145。44)x0dx0anet time /setsntp:210.72.145.44x0dx0a2)啟動時間同步服務x0dx0asc start w32timex0dx0a3)同步時間x0dx0aw32tm /resync (實際上,大多數情況下,光作第三步即可。) 2、啟動前提:x0dx0a DOS啟動Window Time服務: net stop w32time 、 net start w32timex0dx0a 要啟動 Window Time 服務,必須先啟動 Remote Access Connection Manager 服務。
5. 如何正確的建立windows的時間伺服器
一、選擇伺服器基準時鍾,可選擇內部硬體時鍾和外部NTP授時伺服器。 (首先要保證自己的時間准確)
A.配置 Windows 時間服務以使用伺服器內部硬體時鍾
(1). 單擊「開始」,單擊「運行」,鍵入 regedit,然後單擊「確定」。
(2). 找到並單擊下面的注冊表子項:
程序代碼
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config\AnnounceFlags
(3). 在右窗格中,右鍵單擊「AnnounceFlags」,然後單擊「修改」。
(4). 在「編輯 DWORD 值」的「數值數據」框中鍵入 A,然後單擊「確定」。
B.配置 Windows 時間服務以使用外部時間源
(1). 指定時間源。為此,請按照下列步驟操作:
a. 找到並單擊下面的注冊表子項:
程序代碼
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Parameters\NtpServer
b. 在右窗格中,右鍵單擊「NtpServer」,然後單擊「修改」。
c. 在「編輯值」的「數值數據」框中鍵入 Peers,然後單擊「確定」。
注意:Peers 是一個佔位符,應替換為您的計算機從中獲取時間戳的對等端列表(以空格分隔)。列出的每個 DNS 名稱都必須是唯一的。必須在每個 DNS 名稱後面附加 ,0x1。如果不在每個 DNS 名稱後面附加 ,0x1,則在下面步驟中所做的更改將不會生效。
(2). 選擇輪詢間隔。為此,請按照下列步驟操作:
a. 找到並單擊下面的注冊表子項:
程序代碼
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpClient
\SpecialPollInterval
b. 在右窗格中,右鍵單擊「SpecialPollInterval」,然後單擊「修改」。
c. 在「編輯 DWORD 值」的「數值數據」框中鍵入 TimeInSeconds,然後單擊「確定」。
注意:TimeInSeconds 是一個佔位符,應替換為您希望各次輪詢之間的間隔秒數。建議值為 900(十進制)。該值將時間伺服器配置為每隔 15 分鍾輪詢一次。
(3). 配置時間校準設置。為此,請按照下列步驟操作:
a. 找到並單擊下面的注冊表子項:
程序代碼
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config
\MaxPosPhaseCorrection
b. 在右窗格中,右鍵單擊「MaxPosPhaseCorrection」,然後單擊「修改」。
c. 在「編輯 DWORD 值」的「基數」框中單擊以選擇「十進制」。
d. 在「編輯 DWORD 值」的「數值數據」框中鍵入 TimeInSeconds,然後單擊「確定」。
注意:TimeInSeconds 是一個佔位符,應替換為適當的值,如 1 小時 (3600) 或 30 分鍾 (1800)。您選擇的值將因輪詢間隔、網路狀況和外部時間源而異。
e. 找到並單擊下面的注冊表子項:
程序代碼
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config\
MaxNegPhaseCorrection
f. 在右窗格中,右鍵單擊「MaxNegPhaseCorrection」,然後單擊「修改」。
g. 在「編輯 DWORD 值」的「基數」框中單擊以選擇「十進制」。
h. 在「編輯 DWORD 值」的「數值數據」框中鍵入 TimeInSeconds,然後單擊「確定」。
注意:TimeInSeconds 是一個佔位符,應替換為適當的值,如 1 小時 (3600) 或 30 分鍾 (1800)。您選擇的值將因輪詢間隔、網路狀況和外部時間源而異。
二、配置NTP授時伺服器
(1). 將伺服器類型更改為 NTP。為此,請按照下列步驟操作:
a. 單擊「開始」,單擊「運行」,鍵入 regedit,然後單擊「確定」。
b. 找到並單擊下面的注冊表子項:
程序代碼
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Parameters\Type
c. 在右窗格中,右鍵單擊「Type」,然後單擊「修改」。
d. 在「編輯值」的「數值數據」框中鍵入 NTP,然後單擊「確定」。
(2). 將 AnnounceFlags 設置為 5。為此,請按照下列步驟操作:
a. 找到並單擊下面的注冊表子項:
程序代碼
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config\AnnounceFlags
b. 在右窗格中,右鍵單擊「AnnounceFlags」,然後單擊「修改」。
c. 在「編輯 DWORD 值」的「數值數據」框中鍵入 5,然後單擊「確定」。
(3). 啟用 NTPServer。為此,請按照下列步驟操作:
a. 找到並單擊下面的注冊表子項:
程序代碼
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpServer
b. 在右窗格中,右鍵單擊「Enabled」,然後單擊「修改」。
c. 在「編輯 DWORD 值」的「數值數據」框中鍵入 1,然後單擊「確定」。
三、使配置即時生效
1. 退出注冊表編輯器。
2. 在命令提示符處,鍵入以下命令以重新啟動 Windows 時間服務,然後按 Enter:
程序代碼
net stop w32time && net start w32time
四、配置防火牆允許NTP訪問
如果你需要在伺服器所在區域外訪問該伺服器的NTP服務,需要在防火牆上添加允許:
程序代碼
名稱 埠 協議 方向
SNTP時間基準 123 UDP 入
五、相關注冊表說明
注冊表項 MaxPosPhaseCorrection
路徑 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config
注意: 該項指定服務可進行的最大正時間校準量(以秒為單位)。如果服務確定某個更改幅度大於所需的幅度,它將記錄一個事件。(0xFFFFFFFF 是一種特殊情況,它表示總是校準時間。)域成員的默認值是 0xFFFFFFFF。獨立客戶端和伺服器的默認值是 54,000,即 15 小時。
注冊表項 MaxNegPhaseCorrection
路徑 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config
注意: 該項指定服務可進行的最大負時間校準量(以秒為單位)。如果服務確定某個更改幅度大於所需的幅度,它將轉而記錄一個事件。(-1 是一種特殊情況,它表示總是校準時間。)域成員的默認值是 0xFFFFFFFF。獨立客戶端和伺服器的默認值是 54,000,即 15 小時。
注冊表項 MaxPollInterval
路徑 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config
注意: 該項指定系統輪詢間隔所允許的最大間隔(單位是對數表示的秒)。盡管系統必須根據預定的間隔進行輪詢,但是提供程序可以根據請求拒絕生成示例。域成員的默認值是 10。獨立客戶端和伺服器的默認值是 15。
注冊表項 SpecialPollInterval
路徑 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpClient
注意: 該項指定手動對等端的特殊輪詢間隔(以秒為單位)。當啟用 SpecialInterval 0x1 標志時,W32Time 將使用此輪詢間隔而非操作系統確定的輪詢間隔。域成員的默認值是 3,600。獨立客戶端和伺服器的默認值是 604,800。
注冊表項 MaxAllowedPhaseOffset
路徑 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config
注意: 該項指定 W32Time 嘗試使用時鍾速率調整計算機時鍾的最大偏移量(以秒為單位)。當偏移量大於該速率時,W32Time 將直接設置計算機時鍾。域成員的默認值是 300。獨立客戶端和伺服器的默認值是 1。
備注說明:
1、一般操作:
1)將時間伺服器改成,授時中心地址(210。72。145。44)
net time /setsntp:210.72.145.44
2)啟動時間同步服務
sc start w32time
3)同步時間
w32tm /resync (實際上,大多數情況下,光作第三步即可。) 2、啟動前提:
DOS啟動Window Time服務: net stop w32time 、 net start w32time
要啟動 Window Time 服務,必須先啟動 Remote Access Connection Manager 服務。
6. 如何在 CentOS 中搭建 NTP 伺服器
備 CentOS 伺服器
現在讓我們來開始在 CentOS 上設置 NTP 伺服器。
首先,我們需要保證正確設置了伺服器的時區。在 CentOS 7 中,我們可以使用 timedatectl 命令查看和更改伺服器的時區(比如,"Australia/Adelaide",LCTT 譯註:中國可設置為 Asia/Shanghai )
# timedatectl list-timezones | grep Australia
# timedatectl set-timezone Australia/Adelaide
# timedatectl
控制到 NTP 伺服器的訪問
默認情況下,NTP 伺服器允許來自所有主機的查詢。如果你想過濾進來的 NTP 同步連接,你可以在你的防火牆中添加規則過濾流量。
# iptables -A INPUT -s 192.168.1.0/24 -p udp --dport 123 -j ACCEPT
# iptables -A INPUT -p udp --dport 123 -j DROP
該規則允許從 192.168.1.0/24 來的 NTP 流量(埠 UDP/123),任何其它網路的流量會被丟棄。你可以根據需要更改規則。
配置 NTP 客戶端
1. Linux
NTP 客戶端主機需要 ntpupdate 軟體包來和伺服器同步時間。可以輕松地使用 yum 或 apt-get 安裝這個軟體包。安裝完軟體包之後,用伺服器的 IP 地址運行下面的命令。
# ntpdate <server-IP-address>
基於 RHEL 和 Debian 的系統命令都相同。
2. Windows
如果你正在使用 Windows,在日期和時間設置(Date and Time settings)下查找網路時間(Internet Time)。
3. Cisco 設備
如果你想要同步 Cisco 設備的時間,你可以在全局配置模式下使用下面的命令。
# ntp server <server-IP-address>
來自其它廠家的支持 NTP 的設備有自己的用於網路時間的參數。如果你想將設備和 NTP伺服器同步時間,請查看設備的說明文檔。
結論
總而言之,NTP 是在你的所有主機上同步時鍾的一個協議。我們已經介紹了如何設置 NTP 伺服器並使支持 NTP 的設備和伺服器同步時間。
7. 如何在 Windows XP 中配置權威時間伺服器
在Windows XP 中,Windows 時間服務使您計算機的內部時鍾可與網路中的其他時鍾自動同步。此同步的時間源取決於計算機是在 Active Directory 域中還是在工作組中。
當計算機為工作組的一部分時,您必須手動配置時間同步設置。通過配置使用一個公認精確的時間源的計算機上的 Windows 時間服務,您可以將某一台計算機確定為為本地可靠的時間源,可以使用特定的硬體也可使用 Internet 上的可用時間源。您可以手動配置工作組中的所有其他計算機以便將它們的時間與此本地時間源同步。
如果計算機屬於 Active Directory 域,則 Windows 時間服務使用域控制器上可用的 Windows 時間服務自動配置其自身。Windows 時間服務將其域中的一個域控制器配置為一個可靠的時間源,並周期性地讓其自身與此時間源同步。根據特定的需要您可以修改或覆蓋這些設置。
如何同步域中計算機的時間單擊開始,指向所有程序,指向附件,然後單擊命令提示符。鍵入w32tm /resync,然後按 ENTER 鍵。如何使用外部源同步內部時間伺服器單擊開始,指向所有程序,指向附件,然後單擊命令提示符。鍵入下列行,(其中的 peerlist 為合適時間源的域名系統 (DNS) 名稱或 IP 地址的逗號分隔列表),然後按 ENTER 鍵。
w32tm /config /syncfromflags:manual /manualpeerlist:peerlist鍵入w32tm /config /update,然後按 ENTER 鍵。注意: 此過程最常見的用途是將內部網路的權威時間源與一個非常精確的外部時間源進行同步。不過,您可以在任何基於 Windows XP 的計算機上運行此過程。 如果計算機不能夠到達伺服器,此過程將失敗而且將在事件日誌中寫入一項記錄。 您可以使用 Internet 上的計算機來提供精確的時間信息。例如,可以使用 National Institute of Standards and Technology (NIST),它提供 NIST 網路時間服務。如何配置服務如何啟動、停止、暫停、恢復或重新啟動服務備註:必須以管理員或 Administrators 組成員的身份登錄才能完成此步驟。如果您的計算機已聯網,則網路策略設置也可能使您無法完成此過程。 單擊開始,單擊控制面板,單擊「性能和維護」,單擊管理工具,然後雙擊服務。在「詳細信息」窗格中,單擊該服務。在操作菜單上,單擊開始、停止、暫停、恢復或重新啟動。若要為某項服務配置啟動參數,請右鍵單擊此服務,單擊屬性,然後在單擊開始前,在「啟動參數」框中鍵入參數。這些設置只能使用一次並且不能夠保存。反斜杠字元 (\) 作為轉義符使用,對於參數中的每一個反斜杠字元都要鍵入兩個反斜杠字元。 注意: 如果您停止、啟動或重新啟動一項服務,任何相關的服務也會受到影響。 更改默認服務設置可能會使某些重要服務不能正常運行。當您為配置為自動啟動的服務更改啟動類型和登錄身份設置時務必格外謹慎。 如何配置服務的啟動方式備註:必須以管理員或 Administrators 組成員的身份登錄才能完成此步驟。如果您的計算機已聯網,則網路策略設置也可能使您無法完成此過程。 單擊開始,單擊控制面板,單擊「性能和維護」,單擊管理工具,然後雙擊服務。右鍵單擊要配置的服務,然後單擊屬性。單擊常規選項卡,然後在「啟動類型」框中,單擊自動、手動或禁用。若要指定此服務可用來進行登錄的用戶帳戶,請單擊登錄選項卡,然後使用下列操作方法之一: 若要指定此服務使用 LocalSystem 帳戶,請單擊「本地系統帳戶」。 若要指定此服務使用 LocalService 帳戶,請單擊「此帳戶」,然後鍵入 NT AUTHORITY\LocalService。 若要指定此服務使用 NetworkService 帳戶,請單擊「此帳戶」,然後鍵入 NT AUTHORITY\NetworkService。 若要再指定一個帳戶,請單擊「此帳戶」,單擊瀏覽,然後在選擇用戶對話框中指定一個用戶帳戶。完成之後,單擊確定。在密碼框和「確認密碼」框中鍵入用戶帳戶的密碼,然後單擊確定。注意: 更改默認服務設置可能會使某些重要服務不能正常運行。當您為配置為自動啟動的服務更改啟動類型和登錄身份設置時務必格外謹慎。如果您啟用或禁用一項服務後在啟動計算機時出現問題,您可以在安全模式下啟動計算機。接著您可以更改此服務配置或恢復默認配置。 如果您選中「允許服務與桌面交互」復選框,此服務就配置為在桌面上提供一個用戶界面。只有在您單擊「本地系統帳戶」和此服務配置為與桌面交互時此功能才可用。疑難解答 如果Windows 時間服務被手動停止,則可能會發生客戶機與伺服器不同步的情況。為解決此問題,請啟動 Windows 時間服務。
要啟動 Windows 時間服務,請: 單擊開始,指向所有程序,指向附件,然後單擊命令提示符。鍵入net start w32time,然後按 ENTER 鍵。