Linux(openEuler、CentOS8)基于chrony企业内网NTP服务器搭建实验

news2024/11/15 13:42:57

一、知识点

  1. chrony 是由 守护进程 chronyd 以及 命令行工具 chronyc 组成的
    在这里插入图片描述
    在这里插入图片描述

  2. chronyd 在后台静默运行并通过 123 端口与时间服务器定时同步时间,默认的配置文件是 /etc/chrony.conf

  3. chronyc 通过 323 端口与 chronyd 交互,可监控 chronyd 的性能并在运行时更改各种操作参数,chronyc 通过下面的方式访问 chronyd(默认情况下,chronyc 先通过 Unix 域 socket 访问 chronyd,默认的 socket 文件是 /var/run/chrony/chronyd.sock, 如果失败-常见的原因是使用非 root 用户运行 chronyc ),将尝试通过 127.0.0.1 访问 chronyd

  4. chrony默认情况下,不允许任何客户端访问,这意味着chronyd主要作为NTP客户端运行。当使用allow指令时(allow all允许所有<#如果写成0.0.0.0/24实验不通过>;allow 192.168.59.0/24 允许网段),chronyd将既是其服务器的客户端,又是其他客户端的服务器

  5. chronyd常用命令说明

    1. 查看时间同步源状态: chronyc sourcestats -v【-v是列出详细,可以不要】

    2. 强制同步时间:chronyc makestep【这个命令会立即尝试将系统时间设置为 NTP 服务器的当前时间。请注意,这可能会导致系统时间突然跳跃,这可能会影响正在运行的服务或应用程序。】

    3. 启用NTP时间同步: timedatectl set-ntp yes【默认是启用的,timedatectl命令可以查看状态】

    4. 查看客户端连接情况【服务端执行】:chronyc clients

    5. 列出ntp状态详细:timedatectl

    6. 下面timedatectl说明中有详细介绍
      设置硬件时间

      1. 硬件时间默认为UTC: timedatectl set-local-rtc 1/0
      2. 设置硬件时钟为本地时间:timedatectl set-local-rtc 1
      3. 设置硬件时钟为UTC时间:timedatectl set-local-rtc 0
      4. 启用NTP时间同步: timedatectl set-ntp yes
      5. 开启 NTP:timedatectl set-ntp true/flase
      6. 查询和调试 NTP: chronyc tracking查询和调试 NTP(网络时间协议)客户端的状态
    7. hwclock -w用于将系统时间写入到硬件时钟(也称为RTC,即实时时钟)中。在Linux系统中,硬件时钟是一个独立的时钟,它可以在系统关闭时继续运行,并且可以在系统启动时用来初始化系统时间。

更多相关知识,请访问:https://blog.csdn.net/cuichongxin/article/details/123178318

本实验与上文链接不一致的地方:

  1. 查询和调试 NTP: chronyc tracking查询和调试 NTP(网络时间协议)客户端的状态
  2. chronyc makestep #强制同步
  3. hwclock -w#用于将系统时间写入到硬件时钟
  4. allow all #如果写成0.0.0.0/24实验不通过

二、实验步骤

  1. 创建两台ntp服务器
序号服务器名称IP备注
1ntp1192.168.200.123
2ntp2192.168.200.124

在这里插入图片描述

  1. 安装chrony
dnf install -y chrony

在这里插入图片描述
我安装openEuler时,选择的是server安装,自带chrony

  1. 修改配置文件
 vim /etc/chrony.conf

修改内容如下(192.168.200.1是淘宝买的硬件授时服务器)

#pool pool.ntp.org iburst
# Use public servers from the pool.ntp.org project.
# Please consider joining the pool (https://www.pool.ntp.org/join.html).
#pool pool.ntp.org iburst
pool 192.168.200.1

# Allow NTP client access from local network.
#allow 192.168.0.0/16
allow all #如果写成0.0.0.0/24实验不通过
# Serve time even if not synchronized to a time source.
#local stratum 10
local stratum 10

在这里插入图片描述

在这里插入图片描述

  1. 检测
systemctl restart chronyd
chronyc sourcestats -v

在这里插入图片描述

三、手动修改服务器1时间,用服务器2去同步错误时间

  1. 测试之前先临时关闭两台服务器selinux和firewalld,功能测试通过后再针对实际情况开启
clear
setenforce 0
systemctl stop firewalld

在这里插入图片描述

  1. 手动调整服务器1时间
timedatectl set-ntp false
timedatectl set-time "2023-12-12 00:00:00"
hwclock -w #用于将系统时间写入到硬件时钟
timedatectl set-ntp true
date #查看时间
timedatectl #查看详细时间

在这里插入图片描述

  1. 进入服务器2,从服务器1同步错误时间
chronyc makestep #强制同步
hwclock -w #用于将系统时间写入到硬件时钟(这个必须有,否则date查询和timedatectl查询不一致,时间并没改)
date #查看时间
timedatectl #查看详细时间

备用1:检查同步源状态

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

备用2:查询和调试 NTP

chronyc tracking #查询和调试 NTP

在这里插入图片描述

  1. 从这段 chronyc tracking 的输出中,我们可以分析以下关于 NTP(网络时间协议)同步状态的信息:

  2. Reference ID : C0A8C87B (192.168.200.123)
    这是 NTP 服务器的标识符,通常对应于服务器的 IP 地址。在这里,服务器 IP 地址是 192.168.200.123。

  3. Stratum : 11
    这表示 NTP 服务器的层次。Stratum 1 是最高级的服务器,直接与原子钟相连。Stratum 11 表示这个服务器从其他服务器获取时间,且距离原始时间源已经相当远。

  4. Ref time (UTC) : Mon Dec 11 16:09:09 2023
    这是 NTP 服务器的当前参考时间,以协调世界时(UTC)表示。

  5. System time : 1010.213012695 seconds fast of NTP time
    这表明系统时间比 NTP 服务器时间快了约 1010 秒。

  6. Last offset : -0.000107685 seconds
    上一次时间同步时,系统时间与 NTP 服务器时间的偏差是负的,即系统时间略慢于 NTP 时间。

  7. RMS offset : 2199082.750000000 seconds
    RMS(均方根)偏移量表示系统时间与 NTP 服务器时间的平均差异。这个值非常大,表明系统时间和 NTP 服务器时间之间存在显著的差异。

  8. Frequency : 0.359 ppm fast
    这表示系统时钟频率比 NTP 服务器时钟频率快了 0.359 百万分之一(ppm)。

  9. Residual freq : -0.077 ppm
    剩余频率误差,表示在最近一次时间同步后,系统时钟与 NTP 服务器时钟之间的频率差异。

  10. Skew : 0.955 ppm
    Skew 表示系统时钟与 NTP 服务器时钟之间的频率偏差率。

  11. Root delay : 0.000785275 seconds
    从系统到 NTP 时间源的总延迟。

  12. Root dispersion : 0.000260121 seconds
    NTP 服务器的不确定度。

  13. Update interval : 194.2 seconds
    系统从 NTP 服务器获取更新的时间间隔。

  14. Leap status : Normal
    Leap 秒状态。Normal 表示没有 leap 秒事件正在进行或计划。

从上述数据中,我们可以看到系统时间与 NTP 服务器时间之间存在较大的偏差(约 1010 秒),并且 RMS 偏移量也非常大。这可能是由于网络问题、NTP 服务器配置问题或系统时钟问题导致的。为了解决这个问题,你可能需要检查网络连接、NTP 服务器的状态,以及系统时钟设置。同时,RMS 偏移量这么大也可能是因为刚开始同步,还未稳定,所以多等待一段时间并观察数据的变化也是很有帮助的。

  1. 进入服务器1,查看clients
chronyc clients

在这里插入图片描述

  1. 使用windows客户端同步时间
    在这里插入图片描述
  2. 再次进入服务器1,查看clients
chronyc clients

在这里插入图片描述
8. 分别开启两台服务器的防火墙

setenforce 1
systemctl start firewalld
firewall-cmd --zone=public --add-port=123/udp --permanent
firewall-cmd --reload
firewall-cmd --list-ports

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1643663.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

EPAI手绘建模APP资源管理和模型编辑器2

g) 矩形 图 26模型编辑器-矩形 i. 修改矩形的中心位置。 ii. 修改矩形的长度和宽度。 h) 正多边形 图 27模型编辑器-内接正多边形 图 28模型编辑器-外切正多边形 i. 修改正多边形的中心位置。 ii. 修改正多边形中心距离端点的长度。 iii. 修改正多边形的阶数。阶数为3&…

LLVM Instruction Selection 笔记

Instruction Selection 所处阶段 注&#xff1a;上图来源于 Welcome to the back-end: The LLVM machine representation 可以看到 SelectionDAG 架在 LLVM IR 和 LLVM MIR 之间&#xff0c;在此之前 machine independent optimization 已经完成。之后基本上就进入了 machine …

Dynamics 365: 从0到1了解如何创建Custom API(2) - Custom API与插件关联

接上一篇文章Dynamics 365: 从0到1了解如何创建Custom API(1) - 在Power Apps中创建-CSDN博客 这次我们主要写一个插件&#xff0c;与我们之前创建的Custom API进行关联。 1. 编写插件代码 因为代码太少了&#xff0c;我就不写注释了&#xff0c;大家如果有不懂的可以在评论…

2024牛客五一集训派对day5 K.Stack

题目 思路&#xff1a; #include <bits/stdc.h> using namespace std; #define int long long #define pb push_back #define fi first #define se second #define lson p << 1 #define rson p << 1 | 1 const int maxn 1e6 5, inf 1e18, maxm 4e4 5; c…

知乎23届数据分析校招A卷——笔记

1、and 和 or的并列运用[先看and] 条件1 OR 条件2 AND 条件3 执行顺序是先执行AND操作符&#xff08;先看条件2和3&#xff09;&#xff0c;再根据其结果判断是否需要执行OR操作符&#xff0c;并最终返回整个表达式的逻辑结果。 条件1 and 条件2 or 条件3 执行逻辑是先执行…

Swiper轮播图

版本&#xff1a;“swiper”: “^6.8.4”, 处理每分钟重新请求数据后&#xff0c;播放卡顿&#xff0c;快速闪&#xff0c;没按照设置时间播放等bug 以下是直接vue2 完整的组件代码 使用&#xff1a; <SwiperV :imgList“swiperList” / <template><div class"…

【论文阅读笔记】关于“二进制函数相似性检测”的调研(Security 22)

个人博客链接 注&#xff1a;部分内容参考自GPT生成的内容 [Security 22] 关于”二进制函数相似性检测“的调研&#xff08;个人阅读笔记&#xff09; 论文&#xff1a;《How Machine Learning Is Solving the Binary Function Similarity Problem》&#xff08;Usenix Securi…

docker-compose启动mysql5.7报错

描述一下问题经过&#xff1a; 使用docker compose 部署mysql5.7 文件如下: 使用命名卷的情况下&#xff0c;匿名卷不存在该问题 services:mysql:restart: alwaysimage: mysql:5.7container_name: mysql-devports:- 3306:3306environment:- MYSQL_DATABASEdev- MYSQL_ROOT_PAS…

备忘: 使用langchain结合千问大模型,用本地知识库辅助AI生成代码

本文主要是寻求解决把预先准备的文字需求转换为代码的方法 主要思路&#xff1a; 把某一类文字需求储存到本地知识库&#xff0c;使得用户输入需求目标&#xff0c;然后程序自动从知识库抽取相关需求&#xff0c;然后转发给在线的大模型形成代码。 工具&#xff1a; 本地在库用…

【UnityRPG游戏制作】Unity_RPG项目_玩法相关

&#x1f468;‍&#x1f4bb;个人主页&#xff1a;元宇宙-秩沅 &#x1f468;‍&#x1f4bb; hallo 欢迎 点赞&#x1f44d; 收藏⭐ 留言&#x1f4dd; 加关注✅! &#x1f468;‍&#x1f4bb; 本文由 秩沅 原创 &#x1f468;‍&#x1f4bb; 收录于专栏&#xff1a;就业…

jvm 马士兵 01 JVM简介,class文件结构

01.JVM是什么 JVM是一个跨平台的标准 JVM只识别class文件&#xff0c;符合JVM规范的class文件都可以被识别 u1 是一个字节 u2是两个字节

正则表达式_字符匹配/可选字符集

正则表达式&#xff08;Regular Expression&#xff09;也叫匹配模式(Pattern)&#xff0c;用来检验字符串是否满足特 定规则&#xff0c;或从字符串中捕获满足特定规则的子串。 字符匹配 最简单的正则表达式由“普通字符”和“通配符”组成。比如“Room\d\d\d”就这样 的正则…

1.pytorch加载收数据(B站小土堆)

数据的加载主要有两个函数&#xff1a; 1.dataset整体收集数据&#xff1a;提供一种方法去获取数据及其label&#xff0c;告诉我们一共有多少数据&#xff08;就是自开始把要的数据和标签都收进来&#xff09; 2.dataloader&#xff0c;后面传入模型时候&#xff0c;每次录入数…

C++类定义时成员变量初始化

在C11中允许在类定义时对成员变量初始化。 class A { public:A() { }void show(){cout << "m_a " << m_a << endl;cout << "m_b " << m_b << endl;} private:int m_a 10;//类定义时初始化int m_b; //没有初始化…

2024阿里云ctf-web-chain17学习

agent jdk17依赖有h2思路清晰打jdbc attack <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <!-- https://mvnrepository.com/artifact/com.aliba…

踏春正当时!VELO Prevail Ride带你探索多元骑行潮流体验~

嘿&#xff0c;朋友&#xff01;踏春正当时嘞&#xff01;在这个追求个性化与多元化的新时代&#xff0c;骑行爱好者们也开始寻找能适应各种骑行场景的理想坐垫。从悠闲自在的日常通勤&#xff0c;到热血沸腾的公路竞速&#xff0c;再到勇攀高峰的山地探险&#xff0c;维乐VELO…

更深层次理解传输层两协议【UDP | TCP】【UDP 缓冲区 | TCP 8种策略 | 三次握手四次挥手】

博客主页&#xff1a;花果山~程序猿-CSDN博客 文章分栏&#xff1a;Linux_花果山~程序猿的博客-CSDN博客 关注我一起学习&#xff0c;一起进步&#xff0c;一起探索编程的无限可能吧&#xff01;让我们一起努力&#xff0c;一起成长&#xff01; 目录 再谈端口号 端口号的返回…

C语言-整体内容简单的认识

目录 一、数据类型的介绍二、数据的变量和常量三、变量的作用域和生命周期四、字符串五、转义字符六、操作符六、常见的关键字6.1 关键字static 七、内存分配八、结构体九、指针 一、数据类型的介绍 sizeof是一个操作符&#xff0c;是计算机类型/变量所占内存空间的大小   sc…

AEC Capital Limited:开启可持续金融新纪元

在当今社会&#xff0c;环保和可持续发展已成为全球关注的焦点。在这个背景下&#xff0c;AEC Capital Limited作为香港的一家金融服务公司&#xff0c;以其专业、高端的服务和创新的理念&#xff0c;成为可持续金融领域的引领者。我们致力于将环境保护与金融服务相结合&#x…

设计模式之拦截过滤器模式

想象一下&#xff0c;在你的Java应用里&#xff0c;每个请求就像一场冒险旅程&#xff0c;途中需要经过层层安检和特殊处理。这时候&#xff0c;拦截过滤器模式就化身为你最可靠的特工团队&#xff0c;悄无声息地为每一个请求保驾护航&#xff0c;确保它们安全、高效地到达目的…