中央民族大學信息化建設管理處 楊 明
引言:高校服務器眾多,各系統間通信頻繁,為保證各系統的準確、連續以及切換日期后的一致性,再有各系統的聯合排查問題時日志的一致性均要求在校內部署一套NTP服務。本文介紹了如何在CentOS服務器上部署NTP服務的過程和配置防火墻的方法,并設置開機自啟動服務。
NTP是網絡時間協議(Network Time Protocol)的縮寫,它是用來同步網絡中每個計算機的時間的協議,其時間精度可達到毫秒級。要獲得準確的時間,必須要有準確的時間來源,世界標準時間UTC(Universal Time Coordinated)可以來源于原子鐘、衛星、天文臺和Internet等。關于NTP原理、報文、工作過程及算法請參閱(陳敏.基于NTP協議的網絡時間同步系統的研究與實現[D].武漢:華中科技大學,2005.)。
高校隨著數字校園的建設,校內建設了大量的服務,這些服務占用了大量的服務器,隨著服務器規模的擴大,各服務器操作系統間需要交互的數據越來越多,數據記錄的準確性要求越來越高,NTP服務在其間的變得越來越重要。
本文以CentOS 6.10 64位操作系統(因其在國內大量作為服務器操作系統在使用,而CentOS 7改變了包管理方式,配置會稍有不同)為基礎介紹在校內搭建NTP服務,一般來說至少要搭建2臺NTP服務,可以避免一臺出問題的情況全校時間無法再同步。
2臺的NTP搭建完全相同,只需在客戶端的配置時填寫2臺NTP的地址就好。首先安裝NTP服務,yum install -y ntp;然后配置NTP服務,vim /etc/ntp.conf,配置如下:

關于NTP的參數說明,請參閱(夏建磊,王雅卓.Linux的NTP服務在數字化校園系統中的應用[J].技術應用.2014(13):116-117.)。再啟動NTP服務,service ntpd start;配置自啟動,chkconfig --add ntpd on;最后配置防火墻,放開UDP 123端口,vim /etc/sysconfig/iptables。

Linux客戶端安裝ntpdate,yum install -y ntpdate;驗證,ntpdate 10.119.128.26,可以看到實際精度達到毫秒級。

Windows客戶端驗證比較簡單,不需要安裝軟件,調整 “與Internet時間服務器同步”的服務器就好,設為NTP服務的IP,點“擊立即更新”。

實測NTP服務時間精度誤差可達到毫秒級,若想進一步提高精度,請使用PTPd,其誤差可以控制到微妙級,請參閱linuxptp和ptpd兩個實現的安裝、配置與說明。