在 Debian 13 上搭建一个 NTP (Network Time Protocol) 服务器

选择 Chrony 作为第三方 NTP 服务器。Chrony 是一个广泛使用的 NTP 实现,适用于多种 Linux 发行版,因其启动快速且更准确的时间同步,尤其在网络不稳定时表现出色。

1. 安装 Chrony

首先,确保你的系统已更新:
sudoapt update &&sudoapt upgrade -y

然后,安装 chrony 包:
sudoapt install chrony -y

2. 配置 Chrony 作为 NTP 服务器

安装完成后,chrony 默认会启动并配置为客户端模式(即从其他服务器同步时间)。我们需要将其配置为服务器模式。

编辑 Chrony 配置文件:

sudonano /etc/chrony/chrony.conf

在配置文件中进行以下修改:

  • 允许网络中的其他设备同步时间

    找到 allow 配置,取消注释或添加以下内容,允许指定网络范围(例如允许局域网内的设备同步时间):

    allow 192.168.1.0/24 # 允许整个子网内的设备同步时间

    如果你希望对所有 IP 地址开放,可以使用:
    allow 0.0.0.0/0

  • 设置 NTP 上游服务器 chrony 默认会从某些公用的 NTP 服务器同步时间。你可以根据需要更改这些服务器或使用本地时间源(例如,GPS 或原子时钟)。找到如下类似的行,并根据需要更改服务器地址:

    server 0.centos.pool.ntp.org iburst server 1.centos.pool.ntp.org iburst server 2.centos.pool.ntp.org iburst

    你可以根据自己的需求选择不同的 NTP 服务器,或者使用本地时间源。

配置本地时间源(如有需求):

如果你有自己的硬件时间源(如 GPS 时钟),可以将其添加为时间源。例如:
server 127.127.1.0 # 本地时间源fudge 127.127.1.0 stratum 10

设置其他参数:

根据需要调整其他配置选项,例如日志文件、最大客户端数量等。

3. 启动并启用 Chrony 服务

配置完成后,保存文件并退出编辑器,然后启动 chrony 服务:
sudosystemctl start chrony

启用 chrony 在系统启动时自动启动:
sudosystemctlenablechrony

4. 检查 Chrony 状态

检查 Chrony 的同步状态:
chronyc tracking

检查是否成功与上游 NTP 服务器进行同步:
chronyc sources

5. 配置防火墙

如果你使用防火墙,需要打开 NTP 端口(UDP 123),允许其他设备连接到你的 NTP 服务器:

使用 UFW(如果使用 UFW 防火墙):

sudoufw allow 123/udp

使用 iptables(如果你使用 iptables):

sudoiptables -A INPUT -p udp --dport 123 -j ACCEPT

6. 测试 NTP 服务器

在CMD上测试 NTP 服务器是否可用。使用以下命令测试 NTP 服务器:
w32tm /stripchart /computer:ntp.xxx.cn

正在跟踪 ntp.xxx.cn [xx.xx.x.xx:123]。
当前时间是 2025/12/21 14:21:01。
14:21:01, d:+00.0211259s o:-00.4493188s [ *| ]
14:21:03, d:+00.0220526s o:-00.4484494s [ *| ]
14:21:05, d:+00.0218960s o:-00.4493847s [ *| ]
14:21:07, d:+00.0212704s o:-00.4502888s [ *| ]
14:21:09, d:+00.0213151s o:-00.4482196s [ *| ]

相关推荐
2601_962071574 小时前
【Java报错已解决】org.springframework.beans.factory.BeanCreationException
java·开发语言
志栋智能4 小时前
超自动化运维如何支持合规审计?
运维·自动化
小诗懂技术4 小时前
【网络通信UDP】基础 进程间不同主机的通信
运维·服务器·网络
weixin_440730504 小时前
selenium实战记录-从登陆-首页-进入应用流程用例三种参数化+日志+报告
服务器·selenium·测试工具
名字还没想好☜4 小时前
Docker 容器安全加固实战:非 root、只读根文件系统、drop capabilities 与最小攻击面
运维·安全·docker·容器·kubernetes
鹤落晴春5 小时前
有状态应用 vs 无状态应用
运维·云原生·k8s
Hstar_chen5 小时前
开源一款 HarmonyOS 服务器监控客户端:星辰云巡 1.0.3
服务器·华为·harmonyos
淡海水5 小时前
07-04-并发-ConcurrentBag-T-工作窃取WorkStealing算法
开发语言·算法·c#·bag·concurrent·workstealing
CS_Zero6 小时前
C语言sizeof是函数吗?
c语言·开发语言
-今昭-7 小时前
《V2V 迁移实战:将 VMware 虚拟机转为 OpenStack 可用 Glance qcow2 镜像》
开发语言·python