在 Linux 服务器中,查看和配置 NTP(网络时间协议)服务的方法取决于所用的服务类型。以下内容将分步骤介绍主流 NTP 客户端与服务端的管理方式,便于知识分享和操作记录。


1. 查看NTP服务状态

1.1 使用 timedatectl(适用于 systemd-timesyncd)

现代 Linux 发行版(如 Debian、大多数 NAS)默认使用 systemd-timesyncd,仅支持客户端模式。


timedatectl status

# 查看同步详情
timedatectl show-timesync --all

# 查看配置文件
cat /etc/systemd/timesyncd.conf

1.2 使用 chronyc(适用于 Chrony)

高性能服务器常用 Chrony,支持客户端和服务端模式。

# 查看时间同步源
chronyc sources -v

# 查看同步详情
chronyc tracking

# 查看配置文件
cat /etc/chrony/chrony.conf

1.3 使用 ntpq(适用于 ntpd)

传统 ntpd,功能丰富但同步速度较慢,支持客户端和服务端模式。

# 查看对时源
ntpq -p

# 查看配置文件
cat /etc/ntp.conf

2. NTP安装方法

2.1 安装 systemd-timesyncd(轻量通用)

适合希望使用系统自带轻量工具的用户:

# 安装服务
apt update && apt install systemd-timesyncd -y

# 启动服务
systemctl enable --now systemd-timesyncd

# 检查状态
timedatectl status

2.2 安装 Chrony(更稳定推荐)

Chrony 是 Linux 社区推荐的同步工具,适合网络环境复杂的服务器:

# 更新源并安装
apt update && apt install chrony -y

# 启动并设置自启
systemctl enable --now chrony

# 查看同步情况(带 * 号表示已同步)
chronyc sources -v

# 把时区调整为 上海时间(CST, +0800)
timedatectl set-timezone Asia/Shanghai

3. Chrony服务端配置与开放

Chrony 支持 Server 模式,允许其他设备通过 UDP 123 端口同步时间。操作步骤如下:

3.1 修改配置文件

编辑 Chrony 主配置文件:

# 编辑 Chrony 主配置文件
vim /etc/chrony/chrony.conf

# 允许客户端访问(关键步骤,二选一)
# 允许特定网段(推荐)
allow 192.168.100.0/24

# 允许所有来源(公网环境需防火墙控制)
allow 0.0.0.0/0

# 设置本地层级(可选但推荐,服务器暂未连上互联网时,可开启 local 模式,作为可靠时间源)
local stratum 10

3.2 重启服务并检查端口

保存配置后重启 Chrony,查看端口监听状态:

# 保存配置后重启 Chrony
systemctl restart chrony

# 确认 UDP 123 端口监听状态
ss -nupl | grep 123

3.3 防火墙放行 UDP 123端口

如服务器启用防火墙(如 ufw 或 iptables),需放行 UDP 123端口:

# UFW防火墙
ufw allow 123/udp

# Iptables防火墙
iptables -I INPUT -p udp --dport 123 -j ACCEPT

3.4 客户端配置同步

其他机器无需复杂工具,只需指定服务器IP即可同步时间。

  • Debian(systemd-timesyncd)客户端: 修改/etc/systemd/timesyncd.conf
[Time] NTP=你的服务器IP
  • 查看当前同步客户端:
chronyc clients
  • 输出示例:
Hostname                      NTP   Drop Int IntL Last     Done Drop     Interval
===============================================================================
192.168.100.52                 12      0   6   -    22       12    0  -4 .. +2

以上内容涵盖了主流 Linux 系统下 NTP 服务的查看、安装与服务端配置,便于实际操作与知识记录。如需进一步了解或遇到问题,欢迎随时交流。

标签: Linux, NTP, 时间同步, Chrony, systemd

添加新评论