NTP时间对时服务

一. 为什么需要NTP

· 为了让服务器更安全

· 为了让时间同步更准确

二. 时间同步软件

NTP(Network Time Protocol,网络时间协议)是用来使网络中的各个计算机时间同步的一种协议。它的用途是把计算机的时钟同步到世界协调时UTC,其精度在局域网内可达0.1ms,在互联网上绝大多数的地方其精度可以达到1-50ms。

NTP服务器就是利用NTP协议提供时间同步服务的

· NTP(CentOS6)

· Chrony (CentOS7)

二. 部署NTP服务器

1. 安装NTP服务

[root@node01 ~]# yum -y install ntp

2. 修改NTP配置文件

[root@node01 ~]# mv /etc/ntp.conf /etc/ntp.conf.ori

[root@node01 ~]# cat >/etc/ntp.conf << EOF
> driftfile /var/lib/ntp/drift
>
> restrict default nomodify
> restrict 172.16.1.0/24 192.168.10.0/24
>
> restrict ::1
>
> server ntp.aliyun.com iburst
> server ntp.aliyun.com iburst
> server ntp.aliyun.com iburst
> server ntp.aliyun.com iburst
> EOF

注:其中nomodify(表示客户端可以同步) notrap nopeer noquery(表示安全,开启后不能使用ntpstat ntpq -p这两个命令)

3. 关闭chronyd

[root@node01 ~]# systemctl stop chronyd

[root@node01 ~]# systemctl disable chronyd

4. 启动NTP服务

[root@node01 ~]# systemctl start ntpd.service

[root@node01 ~]# systemctl status ntpd.service

5. 测试NTP服务
[root@node01 ~]# ntpq -p #查看NTP服务器和哪些上游服务器同步时间

remote refid st t when poll reach delay offset jitter

==============================================================================
*203.107.6.88 10.137.38.86 2 u 4 64 3 32.120 38.238 1.300

st:即stratum阶层,值越小表示ntp serve的精准度越高

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

Poll表示,每隔多少毫秒与ntp server同步一次

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

delay:网络传输过程钟延迟的时间

offset:时间补偿的结果

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

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

[root@node01 ~]# ntpstat # 显示本机上一次和服务器同步时间的情况

synchronised to NTP server (203.107.6.88) at stratum 3

time correct to within 1005 ms

polling server every 64 s

四. 部署Chronyc服务器

1. 查看是否安装chrony服务

[root@node01 ~]# rpm -qa chrony

chrony-3.4-1.el7.x86_64

2. 修改chronyc配置文件

[root@node01 ~]# vim /etc/chrony.conf

3. 运行程序

[root@node01 ~]# systemctl start chronyd

[root@node01 ~]# systemctl status chronyd

4. 测试
[root@node01 ~]# systemctl stop ntpd

[root@node01 ~]# chronyc sources -v
210 Number of sources = 2

.-- Source mode '^' = server, '=' = peer, '#' = local clock.
/ .- Source state '*' = current synced, ' ' = combined , '-' = not combined,
| / '?' = unreachable, 'x' = time may be in error, '~' = time too variable.
|| .- xxxx [ yyyy ] /- zzzz
|| Reachability register (octal) -. | xxxx = adjusted offset,
|| Log2(Polling interval) --. | | yyyy = measured offset,
|| \ | | zzzz = estimated error.
|| | | \
MS Name/IP address Stratum Poll Reach LastRx Last sample
===============================================================================
^ 120.25.115.20 2 6 167 26 2845us[ 2845us] /- 21ms
^* 203.107.6.88 2 6 77 28 -2116us[-5914us] /- 29ms

客户端

[root@web01 ~]# ntpdate 10.0.0.61

21 Jun 18:47:08 ntpdate[6529]: step time server 10.0.0.61 offset 63.273886 sec

6. 几个命令

chronyc sources -v - 查看时间同步源

chronyc sourcestats -v - 查看时间同步源状态

imedatectl set-ntp yes - 启用NTP时间同步

cronyc tracking - 显示系统时间信息

chronyc accheck - 检查NTP访问是否对特定主机可用

chronyc activity - 该命令会显示有多少NTP源在线/离线

chronyc add server - 手动添加一台新的NTP服务器。

chronyc clients - 在客户端报告已访问到服务器

chronyc delete - 手动移除NTP服务器或对等服务器

chronyc settime - 手动设置守护进程时间

timedatectl set-local-rtc 1 设置硬件时间,硬件时间默认为UTC

(0)

相关推荐