構建NTP時間服務器(以centos爲例)

        首先介紹一下NTP服務器的用途和基本知識。(來源於百度百科)NTP是網絡時間協議(Network Time Protocol),它是用來同步網絡中各個計算機的時間的協議。

   在計算機的世界裏,時間非常地重要,例如對於火箭發射這種科研活動,對時間的統一性和準確性要求就非常地高,是按照A這臺計算機的時間,還是按照B這臺計算機的時間?NTP就是用來解決這個問題的,NTP(Network Time Protocol,網絡時間協議)是用來使網絡中的各個計算機時間同步的一種協議。它的用途是把計算機的時鐘同步到世界協調時UTC,其精度在局域網內可達0.1ms,在互聯網上絕大多數的地方其精度可以達到1-50ms。

   它可以使計算機對其服務器或時鐘源(如石英鐘,GPS等等)進行時間同步,它可以提供高精準度的時間校正,而且可以使用加密確認的方式來防止惡毒的協議***。

   在NTP中,定義了時間按照服務器的等級傳播,按照離外部UTC源遠近將所有的服務器歸入不同的Stratum(層)中,例如把通過GPS(Global Positioning System,全球定位系統)取得發送標準時間的服務器叫Stratum-1的NTP服務器,而Stratum-2則從Stratum-1獲取時間,Stratum-3從Stratum-2獲取時間,以此類推,但Stratum層的總數限制在15以內。所有這些服務器在邏輯上形成階梯式的架構相互連接,而Stratum-1的時間服務器是整個系統的基礎,這種階梯式的架構示意圖如圖1所示。

wKiom1dZAYfRcNf-AABtvyTni-Q807.jpg-wh_50

好了(我想你一定時略過基礎知識,直接看配置了吧),廢話不多說,下面時詳細的配置步驟:

實驗環境:CentOS6.7虛擬機兩臺

                  服務端IP:192.168.1.3

                  客戶端IP:192.168.1.4

注:紅色字體標示配置命令或特別注意,藍色標示理論解釋。特別注意:請關掉服務端的防火牆或者開啓遠程客戶端訪問的123端口。操作爲:編輯 vi /etc/sysconfig/iptables 加上下面這行

-A INPUT -m state --state NEW -m udp -p tcp --dport 123 -j ACCEPT

強烈建議做實驗時直接關掉防火牆,不然你會煩死。

步驟1.服務端安裝ntp ntpdate.可用命令yum -y install ntp ntpdate(使用Yum時請確定虛擬機能連上網,虛擬機工作在橋接模式或者NAT模式下),客戶端安裝ntpdate,同樣的命令yum -y install ntpdate

步驟2.修改服務端的配置文件。文件目錄/etc/ntp.conf。爲了確保配置出錯無法拯救,先備份文件。

cp /etc/ntp.conf /etc/ntp.conf.bak

下面修改配置文件

vi  /etc/ntp.conf 

      (該文件只需要配置主要的兩部分:權限、連接遠程服務器。添加允許訪問你ntp服務器的網路或者主機。

      增加:
restrict 192.168.0.0 mask 255.255.0.0 nomodify notrap
restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap

restrict格式:restrict [ip] mask [mask_number] [parameter]其中parameter如下:ignore:拒絕所有類型的ntp連接,nomodify:不允許客戶端修改服務器的時間參數,但是允許客戶端透過這部主機進行時間校驗。noquery:不允許客戶端進行時間校驗。notrap:不提供trap時間登錄。notrust:拒絕沒有認證的客戶端;
然後設置server段,設置上層ntp服務器。具體格式:server [IP or HOSTNAME] [PREFER]國內經常用到的ntp服務器有如下:

wKiom1dZCDCBBV0FAAEIJuhEfPk108.jpg-wh_50

 ntp.sjtu.edu.cn
 s1a.time.edu.cn
 s1b.time.edu.cn
 s1c.time.edu.cn
 s1d.time.edu.cn
 s1e.time.edu.cn
 s2a.time.edu.cn
 s2b.time.edu.cn
 s2c.time.edu.cn
 s2d.time.edu.cn
 s2e.time.edu.cn
 s2f.time.edu.cn

 s2g.time.edu.cn
 s2h.time.edu.cn
 s2j.time.edu.cn
 s2k.time.edu.cn
 s2m.time.edu.cn
 clock.cuhk.edu.hk)

註釋或者刪掉(行首加#號註釋)0.centos.pool.ntp.org、1.centos.pool.ntp.org、2.centos.pool.ntp.org,添加上述的服務器之一即可,如下所示:
server ntp.sjtu.edu.cn
server s1a.time.edu.cn
保存後退出

wKiom1dZCAmgJzvoAACs0WAFwxE758.jpg-wh_50

      步驟3.在服務端啓動你的NTP服務,並設爲開機自啓動。

  wKiom1dZDTHDNnrDAAAtOOxM6cQ878.jpg-wh_50

     步驟4.檢查ntp啓動情況

wKioL1dZDnbTTp1_AAA51LEu6sc113.jpg-wh_50

wKiom1dZDbegWP4hAABcnLVV-A4951.jpg-wh_50

顯示有UPD的123端口,證明ntp啓動成功。

       步驟5.運行ntpstat檢測ntp服務器是否於上層服務器連接,如圖顯示證明成功連接202.118.1.130,如果不成,請等待一分鐘在檢測。

wKioL1dZD0jid975AAAkM38W7vs266.jpg

          步驟6.客戶端連接ntp服務端。建議客戶端只需要用ntpdate + 服務端IP地址的命令向服務器提出同步請求即可,然後利用hwclock -w 命令進行寫入客戶端的BIOS。如果需要定時同步,可以利用crontab每小時(或者每分鐘)同步一次即可,這裏我用的時每分鐘。

wKiom1dZD7_Tmuv2AAAm_XxVmNQ818.jpg

crontab -e  #編輯定時任務

*/1 * * * * /usr/sbin/ntpdate 192.168.1.3 >>/usr/local/logs/crontab/ntpdate.log

crontab -l      #查看任務

wKioL1dZEsrC7z_TAAAdxgAk9n0762.jpg-wh_50

配置結束。


   

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章