完解LINUX服务器之NTP服务

NTP:Network Time Protocol  是用来使计算机时间同步化的一种协议,它可以使计算机对其服务器或时钟源(如石英钟,GPS等等)做同步化,它可以提供高精准度的时间校正(LAN上与标准间差小于1毫秒,WAN上几十毫秒),且可介由加密确认的方式来防止恶意的协议攻击.

1.安装:

yum install NTP
yum install tzdata

NTP协议使用的是UDP,Port:123    

2.配置文件:

/etc/ntp.conf                #NTF服务器的主配置文件。

/usr/share/zoneinfo    #由tzdata所提供的为各时区的时间格式式对应的文件。

/etc/sysconfig/clock    #设置时区是否使用UTC时钟的配置文件。我们一般选择的时区为/usr/share/zoneinfo/Asia/Shanghai

/etc/localtime              #本地终端的时间配置文件,如果clock文件中规定了使用的时间设定文件为/usr/share/zoneinfo/Asia/Shanghai,Linux操作系统就会将Shanghai那个文件复制一份为/etc/localtime,所以系统的时间显示就会以Shanghai那个时间设定文件为准。

driftfile    :记录时间差异,格式为: driftfile [完整路径名],该定义在/etc/ntp.conf中。

3.配置

配置上游NTP服务器

vim /etc/ntp.conf
#添加以下内容
restrict 133.100.11.8
restrict 192.168.1.0 mask 255.255.255.0 nomodify
server 133.100.11.8 prefer
#允许上游服务器133.100.11.8通过,并且指定上游服务器为133.100.11.8,并且设置为首先服务器。

restrict管理权限控制

ignore    :拒绝所有类型的连接

nomodify    :客户端不能使用ntpc和ntpq这两个程序去修改服务器的时间参数,但客户端仍可通过这部主机来进行网络校时。

noquery        :客户端不能使用ntpc和ntpq这两个程序去查询时间服务器,等于不提供ntp网络校时。

notrap        :不提供trap这个远程事件登陆(remote event logging)的功能。

notrust        :拒绝没有认证的客户端。

4.启动

配置完成后启动NTP

service ntpd start

5.查看状态

netstat -tunlp | grep ntp

ntpstat     :列出是否与上游服务器连接

ntpq -p    :列出我们的NTP服务器与上游服务器的连接状态,

ntpq -p 
     remote refid st t when poll reach delay offset jitter
==============================================================================
*133.100.11.8 133.100.53.51 2 u 95 128 67 194.077 48.430 57.956
+dns2.synet.edu. 202.118.1.46 2 u 79 128 177 60.418 9.773 53.180
dns.sjtu.edu.cn .INIT. 16 u - 1024 0 0.000 0.000 0.000
+dns1.synet.edu. 223.255.185.2 2 u 210 128 176 104.460 -22.500 25.028

remot    :NTP上游主机的IP或域名,*表示当前正在使用中的上层NTP,+表示已连接成功,可作为下一个提供时间更新的候选者。

refid    :参考的上一层NTP服务器地址

st        :就是stratum阶层

when    :几秒钟前曾经做过时间同步化更新的操作。

poll    :下一次更新在几秒钟之后。

reach    :已经向上层NTP服务器要求更新的次数。

delay    :网络传输过程中延迟的时间,单位来10 -6秒

offset    :时间补偿的结果,单位为10 -3秒。

jitter    :linux系统时间与BIOS硬件时间的差异时间。

6.时间校正

Linux中的时间分为:

    软件时钟:linux自己的系统时间,从1970年1月1日开始记录的时间参数。用date修改。

    硬件时钟:计算机系统在BIOS中记录的实际时间,这也是硬件所记录的时间。用hwclock修改。

hwclock -r    :读出BIOS的时间参数

hwclock -w    :将当前系统时间写入BIOS中。

网络校时方法:

1.手动校时:ntpdate NTP_SERVER

2.自动校时:

    a.编写脚本:

    b.定时任务:

crontab -e
10 * * * * root (/usr/sbin/ntpdate 192.168.1.107 && /bin/hwclock -w ) &>/dev/null

    c.客户端启动ntp服务,自动校时。在/etc/ntp.conf配置,

restrict    192.168.1.107
server      192.168.1.107

启动服务

service ntpd start ; chkconfig ntpd on

注意:启动完成后需等待一会就NTP服务就会正常运行了,我这测试等待时间差不多为5分钟,否则windows会提供如下错误。

更新成功。

附:可用的授时中心地址:

133.100.11.8 prefer    
210.72.145.44    
203.117.180.36    
131.107.1.10

完解LINUX服务器之NTP服务,古老的榕树,5-wow.com

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。