NTP 服务配置
NTP 服务概述:
1、原理
NTP(Network Time Protocol,网络时间协议)是用来使计算机时间同步化的一种协议。它可以使计
算机对其服务器戒时钟源做同步化,它可以提供高精准度的时间校正(LAN 上不标准间差小于 1 毫秒,
WAN 上几十毫秒),且可介由加密确认的方式来防止恶毒的协议攻击。
模式: C/S 模式
运行模式:从上往下的树形层级结构向下分发
2、端口
[root@xuegod64 ~]# vim /etc/services
扩展:
NNTP(Network News Transport Protocol),中文释义:(RFC-977)网络新闻传输协议。这是一个主要用于阅读和发布新闻文章(俗称为“帖子”,比较正式的名字是 “新闻组邮件”)到 Usenet 上的 Internet 应用协议,也负责新闻在服务器间的传送。
环境说明:
NTP 服务端:xuegod63.cn IP:192.168.1.63
NTP 客户端:xuegod64.cn IP:192.168.1.64
1、安装 NTP
1、安装 NTP 服务端软件软件包,优先安装依赖包autogen-libopts和 ntpdate,最后安装ntp
[root@CentOS7-63 Packages]# rpm -ivh autogen-libopts-5.18-5.el7.x86_64.rpm
[root@CentOS7-63 Packages]# rpm -ivh ntpdate-4.2.6p5-29.el7.centos.x86_64.rpm
[root@CentOS7-63 Packages]# rpm -ivh ntp-4.2.6p5-29.el7.centos.x86_64.rpm
或
yum -y install ntp
安装客户端:
[root@centos7-64 Packages]# rpm -ivh ntpdate-4.2.6p5-29.el7.centos.x86_64.rpm
2、配置文件位置:
[root@xue63 ~]# ls /etc/ntp.conf
3、启劢 NTP 服务
安装net-tools工具,支持netstat命令使用
[root@CentOS7-63 ~]# yum install net-tools
先查看 123 端口是否开放:
[root@xue63 ~]# netstat -anutp | grep 123
CentOS6
[root@xue63 ~]# service ntpd start
Starting ntpd: [ OK ]
[root@xue63 ~]# chkconfig ntpd on
CentOS7
[root@CentOS7-63 ~]# systemctl start ntpd
[root@CentOS7-63 ~]# systemctl enable ntpd
Created symlink from /etc/systemd/system/multi-user.target.wants/ntpd.service to /usr/lib/systemd/system/ntpd.service.
再查看:
实例:服务器同步时间
ntpdate # linux时间同步命令
用法:ntpdate IP 或 ntpdate 服务器域名。
例:
[root@xuegod63 ~]# vim /etc/ntp.conf #找一个可以使用 NTP 时间服务器
[root@xuegod63 ~]# ntpdate ntp1.aliyun.com #使用国内阿里云的NTP服务
注意:已经运行了 ntp 服务的机器,执行同步命令会报错:
[root@xuegod63 ~]# ntpdate 192.168.1.63
6 Mar 19:26:41 ntpdate[3420]: the NTP socket is in use, exiting
问题分析:出现该错误的原因是系统 ntpd服务器正在运行中,通过 ps aux | grep ntpd 查看,会看到 ntpd 正在运行。解决方法:
1.#service ntpd stop
同步:
[root@xuegod63 Desktop]# ntpdate 0.rhel.pool.ntp.org
6 Mar 20:57:58 ntpdate[3926]: the NTP socket is in use, exiting
[root@xuegod63 Desktop]# /etc/init.d/ntpd stop
Shutting down ntpd: [ OK ]
[root@xuegod63 Desktop]# ntpdate 0.rhel.pool.ntp.org
6 Mar 20:59:08 ntpdate[3939]: step time server 202.112.10.36 offset 45.287426 sec
[root@xuegod63 Desktop]# date
Fri Mar 6 20:59:20 CST 2015
[root@xuegod63 Desktop]# ntpdate 0.rhel.pool.ntp.org
6 Mar 20:59:27 ntpdate[3947]: adjust time server 202.112.10.36 offset 0.000150 sec
注:offset 表示便宜矫正的时间差
修改配置文件,实例搭建一个内网 NTP 服务器,让内网服务器通过此 NTP 服务器进行时间同步
实验前请确保此服务器可以上网
[root@xuegod63 ~]# vim /etc/ntp.conf #修改以下红色框选标记内容,改为自己需要的即可
fudge 127.127.1.0 stratum 10 # 127.127.1.0 为第 10层。 ntp和 127.127.1.0 同步完后,就变成了 11 层。 ntp是层次阶级的。同步上层服务器的 stratum 大小不能超过戒等于 16。
六.ntp 服务的启动与观察
在启劢 NTP 服务前,先对提供服务的这台主机手劢的校正一次时间。 ntpd 有一个自我保护设置: 如果
本机与上源时间相差太大, ntpd不运行.
使用ntpdate或者date命令手动更新时间:
ntpdate ntp1.aliyun.com
date -s "2020-3-6 20:13"
然后,启劢 ntpd 服务。
查看服务是否正常运行:
方法一:
[root@CentOS7-63 ~]# ntpstat
synchronised to NTP server (114.118.7.161) at stratum 3 #可以看到我们当前在 3 层。
time correct to within 90 ms #该指令可列出 NTP 服务器是否不上层联机。输出结果可知,时间校正约为90ms
polling server every 64 s #每隔 64 秒会主动更新时间。
方法二:
[root@CentOS7-63 ~]# ntpq -p #列出我们的 NTP 服务器与上游服务器的连接状态
以上的几个字段的意义如下:
remote:即 remote - 本机和上层 ntp 的 ip 或主机名,“+”表示优先,“*”表示次优先。
refid:参考的上一层 NTP 主机的地址
st:即 stratum 阶层
poll:下次更新在几秒之后
offset:时间补偿的结果
方法三:
[root@CentOS7-63 ~]# timedatectl
客户端配置:
不同机器之间的时间同步
为了避免主机时间因为长期运作下所导致的时间偏差,进行时间同步(synchronize)的工作是非常必要的。
同步时间,可以使用 ntpdate 命令,也可以使用 ntpd 服务。
方法一:
使用 ntpdate + crontab定时同步。
ntpdate 格式如下:
[root@linux ~]# ntpdate [-nv] [NTP IP/hostname]
[root@linux ~]# ntpdate 192.168.0.2
[root@linux ~]# ntpdate time.ntp.org
在 crontab 中添加:
[root@xuegod64 ~]# crontab -e
0 12 * * * /usr/sbin/ntpdate 0.rhel.pool.ntp.org
方法 2:使用 ntpd 服务进行同步。
要注意的是,ntpd 有一个自我保护设置: 如果本机不上源时间相差太大, ntpd 不运行. 所以新设置的时
间服务器一定要先 ntpdate 从上源取得时间初值, 然后启动 ntpd 服务。
快速配置文档:、
连外网配置文档:ntp.txt
使用内部网络配置文档:NTP1.txt
共有 0 条评论