手把手教你在centos 7.4上搭建NTP服务器

本文涉及的产品
云防火墙,500元 1000GB
简介: 手把手教你在centos 7.4上搭建NTP服务器

linux 下构建NTP时间服务器及客户端同步



image.png


NTP 概述


  • 前言


在公司环境中,如果他们不想为 NTP 传输打开防火墙,就有必要设置一个内部 NTP 服务器,然后让员工使用内部服务器而不是公共 NTP 服务器。在这个指南中,我们会介绍如何将一个 CentOS 系统配置为 NTP 服务器。接下来我们从概念到,基础命令,再到企业案列,逐步分享NTP技术点


  • 相关概念


NTP 网络时间协议用来同步网络上不同主机的系统时间。你管理的所有主机都可以和一个指定的被称为 NTP 服务器的时间服务器同步它们的时间。而另一方面,一个 NTP 服务器会将它的时间和任意公共 NTP 服务器,或者你选定的服务器同步。由 NTP 管理的所有系统时钟都会同步精确到毫秒级。


  • 为什么需要设置时钟同步


  由于制造工艺多种多样,所有的(非原子)时钟并不按照完全一致的速度行走。有一些时钟走的比较快而有一些走的比较慢。因此经过很长一段时间以后,一个时钟的时间慢慢的和其它的发生偏移,这就是常说的 “时钟漂移” 或 “时间漂移”。为了将时钟漂移的影响最小化,使用 NTP 的主机应该周期性地和指定的 NTP 服务器交互以保持它们的时钟同步。
在不同的主机之间进行时间同步对于计划备份、入侵检测记录、分布式任务调度或者事务订单管理来说是很重要的事情。它甚至应该作为日常任务的一部分。


NTP 基础命令


  • 查看时区


[root@localhost ~]# timedatectl 
      Local time: Sun 2021-06-20 03:36:34 -02
  Universal time: Sun 2021-06-20 05:36:34 UTC
        RTC time: Sun 2021-06-20 16:36:34
       Time zone: America/Godthab (-02, -0200)
     NTP enabled: n/a
NTP synchronized: no
 RTC in local TZ: no
      DST active: yes
 Last DST change: DST began at
                  Sat 2021-03-27 21:59:59 -03
                  Sat 2021-03-27 23:00:00 -02
 Next DST change: DST ends (the clock jumps one hour backwards) at
                  Sat 2021-10-30 22:59:59 -02
                  Sat 2021-10-30 22:00:00 -03
[root@localhost ~]# 


  • 设置时区


[root@localhost ~]# timedatectl list-timezones   #显示所有时区
Africa/Abidjan
Africa/Accra
Africa/Addis_Ababa
Africa/Algiers
……
[root@localhost ~]#  timedatectl list-timezones | grep Asia/Shanghai
Asia/Shanghai
[root@localhost ~]# 
[root@localhost ~]# timedatectl set-timezone Asia/Shanghai  #设置时区为上海


搭建NTP服务器


  • 实验环境


服务器:192.168.10.11
客户机:192.168.10.10


案例演示


  • 1.服务器端配置


[root@localhost ~]# rpm -qa|grep ntp
[root@localhost ~]# cat /etc/redhat-release       #1.查看服务器、客户端操作系统版本
CentOS Linux release 7.4.1708 (Core) 
[root@localhost ~]# rpm -qa|grep ntp              #2.查看服务器是否默认安装ntp服务
[root@localhost ~]# yum install ntp ntpdate -y    #3.装命令
[root@localhost ~]# rpm -qa|grep ntp              #4.查看ntp服务是否安装成功
ntpdate-4.2.6p5-25.el7.centos.2.x86_64
ntp-4.2.6p5-25.el7.centos.2.x86_64
[root@localhost ~]# systemctl status ntpd         #5.查看ntp服务状态
 ntpd.service - Network Time Service
   Loaded: loaded (/usr/lib/systemd/system/ntpd.service; disabled; vendor preset: disabled)
   Active: inactive (dead)
[root@localhost ~]# 
[root@localhost ~]# vim /etc/ntp.conf             #6.修改配置文件,去掉默认注释即可
server 127.127.1.0 iburst                         #7.添加此内容:
当外部时间不可用时,使用本地时间
[root@localhost ~]# systemctl start ntpd          #8.重启ntpd服务
[root@localhost ~]# netstat -tulnp | grep ntp     #检查 ntp 端口起来没有
udp        0      0 192.168.10.11:123       0.0.0.0:*                           23208/ntd          
udp        0      0 127.0.0.1:123           0.0.0.0:*                           23208/ntd          
udp        0      0 0.0.0.0:123             0.0.0.0:*                           23208/ntd          
udp6       0      0 fe80::a30b:879b:3f1:123 :::*                                23208/ntd          
udp6       0      0 ::1:123                 :::*                                23208/ntd          
udp6       0      0 :::123                  :::*                                23208/ntd          
[root@localhost ~]# systemctl enable ntpd          #9.设置开机自启动
Created symlink from /etc/systemd/system/multi-user.target.wants/ntpd.service to /usr/lib/systemd/system/ntpd.service.
[root@localhost ~]# firewall-cmd --permanent --add-port=123/udp #10.设置防火墙,打开udp123端口
success
[root@localhost ~]# 
[root@localhost ~]# firewall-cmd --reload           #10.重启firewalld防火墙
success
[root@localhost ~]# 
[root@localhost ~]# ntpq -p                         #11.查看是否同步
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
+electrode.felix 253.10.71.116    3 u   60   64  177  250.132  583.747   9.784
*vmd46520.contab 79.133.44.136    2 u   61   64  157  278.278  607.237   6.266
+162.159.200.123 10.4.1.175       3 u   56   64  177  163.803  591.728   4.587
 cronos.unad.edu .INIT.          16 u    -   64    0    0.000    0.000   0.000
 LOCAL(0)        .LOCL.           5 l  398   64  300    0.000    0.000   0.000
[root@localhost ~]# 


  • 2.客户端配置


1.查看是否安装                  [root@localhost ~]# rpm -qa|grep ntp   
2.安装命令                     [root@localhost ~]# yum install ntp ntpdate -y 
3.检查ntp服务是否安装成功        [root@localhost ~]# rpm -qa|grep ntp  
4.查看ntp 服务状态              [root@localhost ~]# systemctl status ntp
5.修改ntp 服务器配置文件         [root@localhost ~]# vim /etc/ntp.conf 
  去掉注释(:g/^#/d)
  添加
    server 127.127.1.0 iburst     #当外部时间不可用时,使用本地时间
    server 192.168.10.11        #增加ntp服务器IP
    restrict 192.168.10.11 nomodify notrap noquery #禁止其他ip来更新时间
7.重启客户端NTP服务器             [root@localhost ~]# systemctl start ntpd
8.验证NTP 服务器
[root@localhost ~]# ntpq -p
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
 94-172-186-238. .INIT.          16 u    -   64    0    0.000    0.000   0.000
 162.159.200.123 10.4.1.175       3 u    1   64    3  163.164  -313119   8.941
 ntp1.flashdance 194.58.202.20    2 u    1   64    3  268.103  -313119  18.023
*LOCAL(0)        .LOCL.           5 l    3   64    3    0.000    0.000   0.000
 192.168.10.11   144.91.116.85    3 u    2   64    0    0.000    0.00


  • 验证配置


[root@localhost ~]# date -s '2022-06-18'    #修改同步时间
Sat Jun 18 00:00:00 CST 2022
[root@localhost ~]# 
[root@localhost ~]# date
Sat Jun 18 00:00:04 CST 2022
[root@localhost ~]# ntpdate 192.168.10.11
18 Jun 00:00:25 ntpdate[2244]: the NTP socket is in use, exiting
关闭客户端服务,如果还不行杀掉进程。
[root@localhost ~]# ntpdate 192.168.10.11
20 Jun 14:33:25 ntpdate[2361]: step time server 192.168.10.11 offset -31311901.342790 sec
[root@localhost ~]# date
Sun Jun 20 14:33:34 CST 2021
[root@localhost ~]# 


  • 加入计划任务


[root@localhost ~]# which ntpdate
/usr/sbin/ntpdate
[root@localhost ~]# crontab -e                               #编写计划任务
[root@localhost ~]# crontab -l
*/60 * * * * /usr/sbin/ntpdate 192.168.10.11 >>/tmp/ntp.log  #每60分钟同步一次
[root@localhost ~]# 


  • 报错解决办法


1.问题:
  the NTP socket is in use, exiting
2.处理思路:
[root@localhost ~]# ps -ef|grep xntpd
root     124185   6192  0 15:49 pts/1    00:00:00 grep xntpd
可惜没有找到pid。
使用lsof –i:123
没有lsof命令的话:yum install -y lsof
[root@localhost ~]# yum install -y lsof
[root@localhost ~]# 
  oot@localhost ~]# lsof -i:123
▽OMMAND  PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
ntpd    2347  ntp   16u  IPv4  28603      0t0  UDP *:ntp 
ntpd    2347  ntp   17u  IPv6  28604      0t0  UDP *:ntp 
ntpd    2347  ntp   18u  IPv4  28609      0t0  UDP localhost:ntp 
ntpd    2347  ntp   19u  IPv4  28610      0t0  UDP localhost.localdomain:ntp 
ntpd    2347  ntp   20u  IPv6  28611      0t0  UDP localhost:ntp 
ntpd    2347  ntp   21u  IPv6  28612      0t0  UDP localhost.localdomain:ntp 
[root@localhost ~]# kill -9 2347
[root@localhost ~]# ntpdate 192.168.10.11
20 Jun 14:33:25 ntpdate[2361]: step time server 192.168.10.11 offset -31311901.342790 sec
  ok。问题完美解决


总结



  • 感谢大家阅读到最后。本文主要介绍了ntp 服务在本地配置。在不同的主机之间进行时间同步对于计划备份、入侵检测记录、分布式任务调度或者事务订单管理来说是很重要的事情。它甚至应该作为日常任务的一部分。


相关文章
|
2月前
|
NoSQL Linux Redis
在 centos7 下重启/开启 redis 服务器
本文提供了一种在Centos 7操作系统下如何重启Redis服务器的步骤,包括停止Redis服务、确认停止成功以及重新启动Redis服务。
170 2
在 centos7 下重启/开启 redis 服务器
|
2月前
|
监控 安全 Linux
CentOS7下安装配置ntp服务的方法教程
通过以上步骤,您不仅能在CentOS 7系统中成功部署NTP服务,还能确保其配置合理、运行稳定,为系统时间的精确性提供保障。欲了解更多高级配置或遇到特定问题,提供了丰富的服务器管理和优化资源,可作为进一步学习和求助的平台。
120 1
|
2月前
|
存储 网络协议 Linux
AWS实操-EC2-创建购买linux(centos)EC2服务器
AWS实操-EC2-创建购买linux(centos)EC2服务器
|
2月前
|
弹性计算 关系型数据库 MySQL
CentOS 7.x操作系统的ECS云服务器上搭建WordPress网站
CentOS 7.x操作系统的ECS云服务器上搭建WordPress网站
|
2月前
|
Linux 数据安全/隐私保护 Windows
centos 7.2 搭建svn服务器
centos 7.2 搭建svn服务器
56 0
|
3月前
|
网络安全
构建 NTP 时间服务器
构建 NTP 时间服务器
142 2
|
3天前
|
弹性计算 运维 安全
阿里云轻量应用服务器与ECS的区别及选择指南
轻量应用服务器和云服务器ECS(Elastic Compute Service)是两款颇受欢迎的产品。本文将对这两者进行详细的对比,帮助用户更好地理解它们之间的区别,并根据自身需求做出明智的选择。
|
4天前
|
SQL 弹性计算 安全
阿里云上云优选与飞天加速计划活动区别及购买云服务器后续必做功课参考
对于很多用户来说,购买云服务器通常都是通过阿里云当下的各种活动来购买,这就有必要了解这些活动的区别,同时由于活动内的云服务器购买之后还需要单独购买并挂载数据盘,还需要设置远程密码以及安全组等操作之后才能正常使用云服务器。本文就为大家介绍一下目前比较热门的上云优选与飞天加速计划两个活动的区别,以及通过活动来购买云服务器之后的一些必做功课,确保云服务器可以正常使用,以供参考。
|
7天前
|
弹性计算 安全 开发工具
灵码评测-阿里云提供的ECS python3 sdk做安全组管理
批量变更阿里云ECS安全组策略(批量变更)
|
24天前
|
存储 人工智能 弹性计算
阿里云弹性计算(ECS)提供强大的AI工作负载平台,支持灵活的资源配置与高性能计算,适用于AI训练与推理
阿里云弹性计算(ECS)提供强大的AI工作负载平台,支持灵活的资源配置与高性能计算,适用于AI训练与推理。通过合理优化资源分配、利用自动伸缩及高效数据管理,ECS能显著提升AI系统的性能与效率,降低运营成本,助力科研与企业用户在AI领域取得突破。
45 6