NTP时间服务器搭建
系统时区设置:::
查看当前时区
# date -R
修改系统时区
# timeconfig 或
# cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime 覆盖
# vim /etc/sysconfig/clock文件: ZONE="Asia/Shanghai
# hwclock 将当前时间和日期写入BIOS
-------------------------------------------------------------------------------------------------
[root@wjoyxt ~]# cat /etc/ntp.conf
driftfile /var/lib/ntp/drift
restrict default kod nomodify notrap nopeer noquery
restrict -6 default kod nomodify notrap nopeer noquery
restrict 127.0.0.1
restrict 10.1.0.0 mask 255.255.0.0 nomodify notrap
restrict -6 ::1
server 0.centos.pool.ntp.org iburst
server 1.centos.pool.ntp.org iburst
server 2.centos.pool.ntp.org iburst
server 3.centos.pool.ntp.org iburst
includefile /etc/ntp/crypto/pw
keys /etc/ntp/keys
以上各项说明:
driftfile 文件名
在与上级时间服务器联系时所花费的时间,记录在driftfile参数后面的文件内。解决NTP服务器校准时间时的传送延迟。
注意: driftfile 后面接的文件需要使用完整的路径文件名,不能是链接文件,并且文件的权限需要设定成 ntpd守护进程可以写入。
第一种配置:允许任何IP的客户机都可以进行时间同步
#restrict default kod nomodify notrap nopeer noquery(表示默认拒绝所有IP的时间同步)
restrict default nomodify notrap
第二种配置:只允许192.168.2.***网段的客户机进行时间同步
在 restrict default kod nomodify notrap nopeer noquery (表示默认拒绝所有IP的时间同步) 之后增加一行:
restrict 192.168.2.0 mask 255.255.255.0 nomodify notrap
------------------------------------------------------------------------------
restrict [IP] mask [netmask_IP] [parameter]
Parameter 的参数主要如下:
ignore :拒绝所有类型的NTP联机服务。
nomodify: 客户端不能使用ntpc 与ntpq 这两个程序来修改服务器的时间参数,但客户端可透过这部主机来进行网络校时;
noquery:客户端不能够使用ntpc 与ntpq 等指令来查询时间服务器,不提供NTP的网络校时。
notrap :不提供trap 这个远程事件登入的功能。
notrust:拒绝没有认证的客户端。
Kod:kod:技术可以阻止“Kiss of Death “包对服务器的破坏。
Nopeer:不与其他同一层的NTP服务器进行时间同步。
利用server 设定上层NTP服务器,格式如下:
server [IP or hostname] [prefer]
perfer : 表示优先级最高
burst :当一个远程NTP服务器可用时,向它发送一系列的并发包进行检测。
iburst :当一个远程NTP服务器不可用时,向它发送一系列的并发包进行检测。
注:默认情况小15分钟后才会与上层NTP服务器进行时间校对。
查看NTP服务的运行状况:
[root@wjoyxt ~]# ntpq -p
remote refid st t when poll reach delay offset jitter
==============================================================================
*202.118.1.130 202.118.1.46 2 u 289 512 377 11.357 15.553 3.046
+dns1.synet.edu. 202.118.1.46 2 u 187 512 377 11.317 16.464 5.835
+dns.sjtu.edu.cn 79.213.241.147 3 u 103 512 377 27.736 16.920 2.079
位置 | 标志 | 含义 |
remote之前 | * | 响应的NTP服务器和最精确的服务器 |
+ | 响应这个查询请求的NTP服务器 | |
blank(空格) | 没有响应的NTP服务器 | |
列表上方 | remote | 响应这个请求的NTP服务器的名称 |
refid | NTP服务器使用的更高一级服务器的名称 | |
st | 正在响应请求的NTP服务器的级别 | |
when | 上一次成功请求之后到现在的秒数 | |
poll | 本地和远程服务器多少时间进行一次同步,单位秒,在一开始运行NTP的时候这个poll值会比较小,服务器同步的频率大,可以尽快调整到正确的时间范围,之后poll值会逐渐增大,同步的频率也就会相应减小 | |
reach | 用来测试能否和服务器连接,是一个八进制值,每成功连接一次它的值就会增加 | |
delay | 从本地机发送同步要求到ntp服务器的往返时间 | |
offset | 主机通过NTP时钟同步与所同步时间源的时间偏移量,单位为毫秒,offset越接近于0,主机和ntp服务器的时间越接近 | |
jitter | 统计了在特定个连续的连接数里offset的分布情况。简单地说这个数值的绝对值越小,主机的时间就越精确 |
[root@wjoyxt ~]# ntpstat
synchronised to NTP server (202.112.31.197) at stratum 2 #进行时间校对的NTP服务器为 ntp.conf中server项指定的第2个服务器
time correct to within 97 ms #本地主机与上层NTP服务器的时间差,时间校正到相差97ms之内
polling server every 128 s #每128秒会向上级NTP轮询更新一次时间
-------------------------------------------------------------------------------------
在使用 ntpq -p 查询的过程中,曾出现如下的 error log:
# ntpq -p
localhost: timed out, nothing received
***Request timed out
原因很简单,ntpd 需要有 loopback 的参与,而默认是拒绝所有,将 loopback 放行就好了,在ntp.conf文件里添加:
restrict 127.0.0.1