CentOS7使用NTP搭建时间同步服务器

前言

为何要搭建时间同步服务器呢?场景是这样的。html

咱们有两台CentOS服务器,其中一台是能够链接外网的,下文中咱们称它为A服务器,另外一台不能链接外网,可是与A服务器在同一局域网中,下文中咱们称它为服务器B。编程

如今咱们须要将A服务器的时间进行网络校准,这部分操做仍是比较容易的,按照下面的步骤操做便可。vim

一、yum进行ntp的安装:服务器

yum -y install ntp

二、执行同步命令:网络

ntpdate time1.aliyun.com

三、查看当前系统时间: 并发

date

这样咱们A服务器的时间就经过阿里提供的时间服务器进行了时间的校准工做。app

那么问题来了,咱们的B服务器也是须要校准时间的,但又没有外网,因此没法使用相同的步骤来进行时间同步,因此王子就想到了在A服务器上搭建时间同步服务器,B服务器经过A服务器进行时间校准工做。ide

接下来就是去网上查阅资料实现了,可是网络上大部分人的文章写的都很不完善,致使实践出现了各类问题。post

本文就是为了记录下正确的搭建流程而编写的,相信会对小伙伴们有所帮助。spa

时间服务器搭建流程

首先咱们要清楚,NTP服务器默认是会使用udp的123端口的,因此咱们的第一步就是开放123端口,命令以下:

firewall-cmd --permanent --zone=public --add-port=123/udp

增长端口后固然要从新加载防火墙,让配置生效了

firewall-cmd --state

固然,若是小伙伴们用不到防火墙,直接关闭防火墙便可。

Centos7默认经过chronyd服务实现时钟同步,咱们须要关闭chronyd服务并使其开机不自启,同时启动ntpd并将其加入开机自启:

systemctl stop chronyd
systemctl disable chronyd 
systemctl enable ntpd
systemctl start ntpd

接下来就是去修改ntp的配置文件了:

vi /etc/ntp.conf

这个配置文件中的内容咱们主要修改以下内容:

#1 把下边这行注释掉
# restrict default nomodify notrap nopeer noquery
#2 删除掉原有的4行server,增长下边的两行,127.127.1.0表明把本机做为时间服务器
server 127.127.1.0
fudge   127.127.1.0 stratum 10

你去看其余的文章,会让你修改不少东西,其实彻底没有必要,只要修改上边这两部分就能够了。

修改后从新启动NTP服务便可。

systemctl restart ntpd

到这里其实咱们的时间服务器就搭建完成了,如今咱们只要在B服务器上执行下边的命令就能够进行时间同步了。

ntpdate A服务器的IP地址

写在后边

实际的状况,咱们不该该去手动执行时间同步命令,应该设置一个定时任务,每隔多长时间就自动去进行一次时间校对工做。

咱们能够直接执行以下命令:

crontab -e

进入定时任务的vim界面,在其中设置定时任务执行同步时间的命令就能够了,好比下边的内容,就是每隔1个小时执行一次同步命令:

0 */1 * * * ntpdate 192.160.99.201

 保存后,能够经过下边的命令查看已经存在的任务:

crontab -l

 

往期文章推荐:

JVM专栏

消息中间件专栏

并发编程专栏

相关文章
相关标签/搜索