linux NTP服务搭建

一. 配置时区

[root@client ~]# tzselect  #配置正确时区
[root@www ~]# vim /etc/sysconfig/clock

二. 搭建NTP服务

1. 配置主配置文件

[root@www ~]# vim /etc/ntp.conf

logfile /var/log/ntp.log
driftfile /var/lib/ntp/drift
interface listen 192.168.100.254
interface ignore wildcard
interface listen lo

# 1. 先处理权限方面的问题,包括放行上层服务器以及开放区网用户来源:
restrict default kod nomodify notrap nopeer noquery     <==拒绝 IPv4 的用户
restrict -6 default kod nomodify notrap nopeer noquery  <==拒绝 IPv6 的用户
restrict 220.130.158.71   <==放行 tock.stdtime.gov.tw 进入本 NTP 服务器
restrict 59.124.196.83    <==放行 tick.stdtime.gov.tw 进入本 NTP 服务器
restrict 59.124.196.84    <==放行 time.stdtime.gov.tw 进入本 NTP 服务器
restrict 127.0.0.1        <==底下两个是默认值,放行本机来源
restrict -6 ::1
restrict 192.168.100.0 mask 255.255.255.0 nomodify <==放行区网来源

# 2. 设定主机来源,请先将原本的 [0|1|2].centos.pool.ntp.org 的设定批注掉:
server 220.130.158.71 prefer  <==以这部主机为最优先
server 59.124.196.83
server 59.124.196.84
server time.nuri.net
server 0.asia.pool.ntp.org
server 1.asia.pool.ntp.org
server ntp.tuna.tsinghua.edu.cn

# 3.预设时间差异分析档案与暂不用到的 keys 等,不需要更动它:
driftfile /var/lib/ntp/drift
keys      /etc/ntp/keys

2. 启动服务

# 1. 启动 NTP 
[root@www ~]# /etc/init.d/ntpd start
[root@www ~]# chkconfig --level 35 ntpd on

3. 观察NTP运行

[root@www ~]# tail -f logfile /var/log/ntp.log
[root@www ~]# ntpstat       #这个指令可以列出我们的 NTP 服务器有跟上层联机否。
[root@www ~]# ntpq -p

     remote           refid      st t when poll reach   delay   offset  jitter

==============================================================================

*tock.stdtime.go 59.124.196.87    2 u   19  128  377   12.092   -0.953   0.942

+59-124-196-83.H 59.124.196.86    2 u    8  128  377   14.154    7.616   1.533

+59-124-196-84.H 59.124.196.86    2 u    2  128  377   14.524    4.354   1.079

这个 ntpq -p 可以列出目前我们的 NTP 与相关的上层 NTP 的状态,上头的几个字段的意义为:

  • remote:亦即是 NTP 主机的 IP 或主机名啰~注意最左边的符号
    • 如果有『 * 』代表目前正在作用当中的上层 NTP
    • 如果是『 + 』代表也有连上线,而且可作为下一个提供时间更新的候选者。
  • refid:参考的上一层 NTP 主机的地址
  • st:就是 stratum 阶层啰!
  • when:几秒钟前曾经做过时间同步化更新的动作;
  • poll:下一次更新在几秒钟之后;
  • reach:已经向上层 NTP 服务器要求更新的次数
  • delay:网络传输过程当中延迟的时间,单位为 10^(-6) 秒
  • offset:时间补偿的结果,单位与 10^(-3) 秒
  • jitter:Linux 系统时间与 BIOS 硬件时间的差异时间, 单位为 10^(-6) 秒。

三. 客户端时间更新方式

#1. 自动同步时间的前提是找到NTP服务器,如下为NTP服务器
#中国国家授时中心:210.72.145.44   ----暂时无法使用
#NTP服务器(上海) :ntp.api.bz
#中国ntp服务器:cn.pool.ntp.org
#pool.ntp.org

#2. 时间同步工具
#rdate -s
#ntpdate -u(使用-u参数会返回误差,也可以使用-s)

#3. 自动同步时间举例:
[root@client ~]# tzselect  #配置正确时区
[root@client ~]# /usr/sbin/ntpdate -u cn.pool.ntp.org  #同步时间
[root@client ~]# hwclock -w   #将时间写入blos

#4. 将以上自动同步时间加入开机启动校验
vim /etc/rc.d/rc.local   
/usr/sbin/ntpdate -u cn.pool.ntp.org> /dev/null 2>&1; /sbin/hwclock -w

#5. 将以上自动同步时间写入定时任务执行
vim /etc/crontab  或者 crontab -e
00 09 * * * root /usr/sbin/ntpdate -u cn.pool.ntp.org > /dev/null 2>&1; /sbin/hwclock -w 
posted @ 2020-03-18 22:18  IamJet  阅读(397)  评论(0编辑  收藏  举报