linux時間伺服器配置及各種作業系統客戶端配置

datapeng發表於2014-01-13

      現在企業中部署時間時間伺服器已經是很普遍的一件事情,確保企業區域網中,各臺機器時間同步,特別是企業中伺服器的時間是同步的,避免因為時間不同引起故障。
      最近,到客戶那兒去,有一個微軟的傢伙幫人家搭建了一個windows時間伺服器,但不知道怎麼讓linux伺服器去同步windows時間伺服器(伺服器端和客戶端都不知道怎麼配置)。於是問我怎麼配置,我說我也不知道怎麼配置,但我知道linux時間伺服器怎麼配置。這下掉大了,客戶要求我們友情贊助搭一個linux時間伺服器,沒有辦法,我們只好幫忙了,下面把整個過程記錄下來,供大家參考!

1、安裝linux環境,我在這裡安裝的是redhat5.8,具體的安裝部署就不多說了

[root@mynts ~]# uname -r
2.6.18-308.el5xen

--檢查時間伺服器需要的包是否存在

[root@mynts ~]# rpm -qa | grep ntp
chkfontpath-1.10.1-1.1
ntp-4.2.2p1-15.el5_7.1

如果上述沒有顯示,證明你沒有安裝這個包,需要補上!

2、把這臺伺服器放在公網上

由於我們要同步網際網路上的時間伺服器,必須把這個ip地址放到公網上,這個工作由網路工程師搞定就行了!

3、配置伺服器端

    總體說來在配置linux時間伺服器端是比較簡單的,編輯/etc/ntp.conf檔案即可。
   
    在這裡,我們轉述一下里面的一配置選項說明。

3.1 restrict IP mask 掩碼引數
IP是允許或不允許訪問的地址,配合掩碼可以對一段網段使用;
引數包括:
ignore:關閉所有NTP聯網服務
nomodify:客戶端不能修改服務端的時間,但可以作為客戶端的校正伺服器
notrust:除透過認證外,否則指定的網段為不信任網段
noquery:不提供時間查詢
如果不配置,表示允許網路中的所有機器向這臺時間伺服器發起被同步請求

3.2授時伺服器
語法如下
server [IP|FQDN] [prefer]
IP|FQDN就是給出作為你服務端同步的基準NTP伺服器
prefer是用於指定主次伺服器的,有標識的就是主要伺服器咯

server 0.pool.ntp.org
server 1.pool.ntp.org
server 2.pool.ntp.org

3.3 我們配置成如下的設定
[root@mynts ~]# vi /etc/ntp.conf

restrict default nomodify notrap noquery
restrict 127.0.0.1
server 210.72.145.44  --中國國家授時中心伺服器地址 prefer表示優先 注意把預設的server更改成這樣  
server 218.21.130.42  --cn.pool.ntp.org的IP
server 202.120.2.101 prefer  --上海交大的
fudge 127.127.1.0 stratum 10
driftfile /var/lib/ntp/drift

其中,我們發現國家授時中心的連線非常慢,而第二個一直連不上,所以,我們把交大的設定為優先

我們最終的配置結果如下:
[root@mynts ~]# cat /etc/ntp.conf | grep -v "#"

restrict default nomodify notrap noquery
restrict 127.0.0.1
restrict 0.0.0.0 mask 0.0.0.0 nomodify
server 202.120.2.101 prefer            --上海交大的
server 210.72.145.44
fudge 127.127.1.0 stratum 10
driftfile /var/lib/ntp/drift
keys /etc/ntp/keys

4、啟動時間伺服器

[root@mynts ~]# service ntpd start
Starting ntpd: [  OK  ]

[root@mynts ~]# chkconfig time-stream on       
上面的命令可以不要,如果開啟時間服務,在客戶端,可以使用rdate的命令來向伺服器發起被同步的請求

[root@mynts ~]# netstat -ln|grep 123
udp        0      0 192.168.88.240:123          0.0.0.0:*                              
udp        0      0 127.0.0.1:123               0.0.0.0:*                              
udp        0      0 0.0.0.0:123                 0.0.0.0:*                              
udp        0      0 fe80::250:56ff:fe93:5583:123 :::*                                  
udp        0      0 ::1:123                     :::*                                   
udp        0      0 :::123                      :::*

可以看到預設的埠123已經被開啟

[root@mynts ~]# ntpq -p
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
 202.120.2.101   202.112.31.197   3 u   63   64   17   29.469    0.609   0.361
 210.72.145.44   .INIT.          16 u    -   64    0    0.000    0.000   0.000
 
[root@mynts ~]# ntpq -p
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
*202.120.2.101   202.112.31.197   3 u    1   64   37   29.469    0.609   0.971
 210.72.145.44   .INIT.          16 u    -   64    0    0.000    0.000   0.000
 
[root@mynts ~]# ntpq -p
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
*202.120.2.101   202.112.31.197   3 u   58   64  377   29.546    0.032   1.610
 210.72.145.44   .ACTS.           1 u  315   16   20   70.313   -3.612   0.001

其實,我們可以看到國家授時中心的確實花了更長的時間才同步上。

--停止時間伺服器如下:

[root@mynts ~]# service ntpd stop
Shutting down ntpd: [  OK  ]

經過以上的幾步操作,我們企業內部的時間伺服器已經搭建完成了,區域網中的其它機器,可以向這臺伺服器發起被同步的請求

5、客戶端的配置

5.1 linux與unix的配置相對簡單

方法如下:
[root@mytest ~]# crontab -e
00 11 * * * /usr/sbin/ntpdate -s 10.10.1.250

也可以使用/usr/bin/rdate -s 10.10.1.250

注意:aix及solaris不需要加-s引數的,如下

10 20 * * * /usr/sbin/ntpdate 10.10.1.250

5.2 windows客戶端配置

--修改ntp伺服器鍵值

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Parameters\NtpServer   

這一項是設定標準時鍾源IP   地址的。將10.10.1.250替換為選定的時鐘伺服器的IP地址,後面的,0×1留著不要改。這樣就指定了同步源

--修改發起被同步請求的時間間隔

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpClient\SpecialPollInterval  

這一項是設定客戶端向伺服器同步的輪詢間隔,單位為秒,預設設為1小時,可根據需要做修改。

--時間校準量調整

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config\MaxPosPhaseCorrection  

這一項是設定最大的正時間校準量,單位為秒,預設設為15 小時,可根據需要修改。

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config\MaxNegPhaseCorrection   

這一項是設定最大的負時間校準量,單位為秒,預設設為15 小時,可根據需要修改。

--在命令提示符處,啟動時間同步服務

net stop w32time && net start w32time

也可以到系統的服務裡找到windows time服務,重啟該服務。

--修改時間服務自動啟動

在服務中找到windows time 啟動型別改為自動

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29371470/viewspace-1069874/,如需轉載,請註明出處,否則將追究法律責任。

相關文章