ubuntu18.04安装ntp,并配置内网校时
在你的场景里,本质是做一个NTP层级结构:
-
server-1:能访问互联网 → 作为上游时间源(NTP Server)
-
server-2:不能访问互联网 → 从 server-1 同步时间(NTP Client)
下面一步步配置 👇
一、在 server-1 上配置(作为 NTP 服务器)
1. 安装 NTP 服务
sudo apt update
sudo apt install ntp
2. 修改配置文件
编辑:
sudo vim /etc/ntp.conf
确保有公网时间源(默认一般已经有):
server 0.ubuntu.pool.ntp.org iburst
server 1.ubuntu.pool.ntp.org iburst
server 2.ubuntu.pool.ntp.org iburst
3. 允许内网 client(server-2)访问
在配置中添加(很关键):
restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap
👉 根据你的内网网段修改,比如:
-
192.168.0.0 -
10.0.0.0
4. 重启服务
sudo systemctl restart ntp
5. 检查是否正常同步公网
ntpq -p
看到类似:
*ntp1.aliyun.com
说明已经同步成功 ✅
6. 确认监听端口
sudo netstat -lnup | grep 123
二、在 server-2 上配置(作为客户端)
1. 安装 NTP
sudo apt update
sudo apt install ntp
2. 修改配置文件
sudo vim /etc/ntp.conf
👉 注释掉所有公网 server:
# server 0.ubuntu.pool.ntp.org iburst
# server 1.ubuntu.pool.ntp.org iburst
👉 添加 server-1:
server 192.168.1.10 iburst
(这里填 server-1 的IP)
3. 重启服务
sudo systemctl restart ntp
4. 验证同步状态
ntpq -p
看到:
*192.168.1.10
说明已经成功同步 🎉
三、可选优化(推荐)
1. 强制 server-1 作为时间源(避免无外网时漂移)
在 server-1 的 /etc/ntp.conf 添加:
local stratum 10
2. 防火墙放行(如果有防火墙)
server-1 需要开放 UDP 123:
sudo ufw allow 123/udp
3. 手动立即校时(客户端)
server-2 可以执行一次:
sudo ntpdate 192.168.1.10
四、整体结构图
互联网 NTP
↓
server-1(有公网)
↓
server-2(内网)
五、常见问题排查
❌ server-2 不同步?
检查:
-
能否 ping 通 server-1
-
防火墙是否放行 123/UDP
-
server-1 是否在监听
-
ntpq -p是否有reach值(非0)
如果你愿意,我可以帮你把这套改成更现代的 chrony方案(Ubuntu 18.04更推荐),同步更快更稳定。