怎樣在CentOS中搭建NTP服務(wù)器
歡迎來到學(xué)習(xí)啦。這篇是學(xué)習(xí)啦小編特地為大家整理的,希望對(duì)大家有所幫助!
網(wǎng)絡(luò)時(shí)間協(xié)議(NTP)用來同步網(wǎng)絡(luò)上不同主機(jī)的系統(tǒng)時(shí)鐘。所有受管理的主機(jī)可以與一臺(tái)名為NTP服務(wù)器的指定時(shí)間服務(wù)器同步時(shí)間。另一方面,NTP服務(wù)器則與任何公共NTP服務(wù)器或者你所選擇的任何服務(wù)器同步自己的時(shí)間。所有NTP管理的設(shè)備其系統(tǒng)時(shí)間同步時(shí)可以精確到毫秒級(jí)。
在企業(yè)環(huán)境下,如果企業(yè)不想為NTP流量打開防火墻,就有必要搭建一臺(tái)內(nèi)部的NTP服務(wù)器,讓員工可以使用內(nèi)部服務(wù)器,而不是公共NTP服務(wù)器。我們在本教程中將介紹如何將CentOS系統(tǒng)配置成NTP服務(wù)器。在具體介紹細(xì)節(jié)之前,不妨先來了解NTP概念。
我們?yōu)楹涡枰狽TP?
由于制造方面的差異,所有(非原子)時(shí)鐘并不完全以一樣的速度運(yùn)行。有些時(shí)鐘往往走得快點(diǎn),而有些時(shí)鐘走得慢點(diǎn)。所以經(jīng)過一段很長的時(shí)間后,一個(gè)時(shí)鐘的時(shí)間與另一個(gè)時(shí)鐘逐漸發(fā)生偏差,導(dǎo)致所謂的“時(shí)鐘漂移”或“時(shí)間漂移”。為了盡量減小時(shí)鐘漂移影響,使用NTP的主機(jī)應(yīng)該定期與指定的NTP服務(wù)器進(jìn)行聯(lián)系,保持時(shí)鐘同步。
不同主機(jī)之間的時(shí)間同步對(duì)計(jì)劃備份、入侵檢測日志、分布式任務(wù)調(diào)度或事務(wù)簿記之類的事務(wù)而言很重要,甚至可能是監(jiān)管合規(guī)所需要的一個(gè)要求。
NTP層次結(jié)構(gòu)
NTP時(shí)鐘以分層層次結(jié)構(gòu)來加以組織。該層次結(jié)構(gòu)中的每一層被稱為層(stratum)。層這個(gè)概念描述了某機(jī)器距離權(quán)威時(shí)間源有多少個(gè)NTP跳。
Stratum 0含有幾乎沒有時(shí)間漂移的時(shí)鐘,比如原子鐘。這些時(shí)鐘無法通過網(wǎng)絡(luò)直接使用。Stratum N(N > 1)服務(wù)器對(duì)照Stratum N-1服務(wù)器同步其時(shí)間。Stratum N時(shí)鐘可以通過網(wǎng)絡(luò)彼此連接。
NTP最多可支持層次結(jié)構(gòu)中的15層。Stratum 16被認(rèn)為不同步、無法使用。
準(zhǔn)備CentOS服務(wù)器
現(xiàn)在不妨接著講講如何在CentOS上搭建NTP服務(wù)器。
首先,我們需要確保服務(wù)器的時(shí)區(qū)正確設(shè)置。在CentOS 7中,我們可以使用timedatectl命令來查看和更改服務(wù)器的時(shí)區(qū)(比如“Australia/Adelaide”)。
# timedatectl list-timezones | grep Australia
# timedatectl set-timezone Australia/Adelaide
# timedatectl
接下來使用yum,安裝必要的軟件。
# yum install ntp
然后,我們將添加用來同步時(shí)間的全局NTP服務(wù)器。
# 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
默認(rèn)情況下,NTP服務(wù)器日志保存在/var/log/messages中。如果你想使用自定義的日志文件,也可以指定該文件的位置。
logfile /var/log/ntpd.log
如果你果真選擇使用自定義的日志文件,確保更改其所有權(quán)和SELinux上下文。
# chown ntp:ntp /var/log/ntpd.log
# chcon -t ntpd_log_t /var/log/ntpd.log
現(xiàn)在啟動(dòng)NTP服務(wù),確保它已添加到啟動(dòng)項(xiàng)。
# systemctl restart ntp
# systemctl enable ntp
驗(yàn)證NTP服務(wù)器時(shí)鐘
我們可以使用ntpq命令,檢查本地服務(wù)器的時(shí)鐘如何通過NTP實(shí)現(xiàn)同步。
控制對(duì)NTP服務(wù)器的訪問
在默認(rèn)情況下,NTP服務(wù)器允許來自所有主機(jī)的入站查詢。如果你想過濾入站NTP同步連接,可以在防火墻中添加一條規(guī)則,以過濾流量。
# iptables -A INPUT -s 192.168.1.0/24 -p udp --dport 123 -j ACCEPT
# iptables -A INPUT -p udp --dport 123 -j DROP
該規(guī)則將允許來自192.168.1.0/24的NTP服務(wù)器(經(jīng)由端口UDP/123),拒絕來自其他所有網(wǎng)絡(luò)的流量。你可以更新規(guī)則以符合自己的要求。
配置NTP客戶端
1. Linux
NTP客戶端主機(jī)需要ntpdate程序包來對(duì)照服務(wù)器同步其時(shí)間。可以使用yum或apt-get,很容易安裝該程序包。安裝該程序包后,運(yùn)行帶服務(wù)器IP地址的命令。
# ntpdate
如果是基于RHEL和Debian的系統(tǒng),命令完全一樣。
2. Windows
如果你使用Windows,在日期和時(shí)間設(shè)置下尋找“Internet時(shí)間”。
3. 思科設(shè)備
如果你想同步思科設(shè)備的時(shí)間,可以從全局配置模式使用下面這個(gè)命令。
# ntp server
來自其他廠商的具有NTP功能的設(shè)備在Internet時(shí)間方面有各自的參數(shù)。如果你想與NTP服務(wù)器同步時(shí)間,就要查閱設(shè)備的說明文檔。
結(jié)束語
總而言之,NTP這種協(xié)議可以讓你所有主機(jī)上的時(shí)鐘保持同步。我們已演示了如何搭建一臺(tái)NTP服務(wù)器,讓具有NTP功能的設(shè)備對(duì)照該服務(wù)器同步其時(shí)間。
但愿本文對(duì)大家有所幫助。