目标: 架设一台 Internet 时间服务器,可以让网络中的任何服务同步时间。
NTP 是用来使系统和一个精确的时间源保持时间同步的协议. 在 Linux 下,我们可以通过自带的 NTP(Network Time Protocol) 协议通过网络使自己的系统保持精确的时间. 一. 安装 NTP 服务
1. 先检查系统是否已安装 ntp 服务 (NTP 服务占用 123udp 端口)
#rpm -q ntp
如果安装,直接进行第二步。
2. 如果没有请下载 ntp 的 rpm 包,对其进行安装。
#rpm -ivh ntp-4.2.2p1-8.el5.centos.1.i386.rpm
或者
#yum install ntp
二. 配置 NTP 服务
要架设本地时间服务器,只需要修改 /etc/ntp.conf 文件里的几个简单的配置就可以了,以下是我添加的配置:
server 210.72.145.44 prefer(中国国家授时中心服务器地址 prefer 表示优先 注意把默认的 server 更改成这样)
server 218.21.130.42(cn.pool.ntp.org 的 IP)
注:prefer 表示该上层 NTP 服务器比其它上层 NTP 服务器更有优先权
其他的保持默认不动。
为了使 NTP 服务可以在系统引导的时候自动启动,执行:
# chkconfig ntpd on
启动 / 关闭 / 重启 NTP 的命令是:
# /etc/init.d/ntpd start 启动
# /etc/init.d/ntpd stop 关闭
# /etc/init.d/ntpd restart 重启
将同步好的时间写到 CMOS 里
vi /etc/sysconfig/ntpd
SYNC_HWCLOCK=yes
切记每次修改了配置文件后都需要重新启动服务来使配置生效。
可以使用下面的命令来检查 NTP 服务是否启动,你应该可以得到一个进程 ID 号:
# pgrep ntpd
使用下面的命令检查时间服务器同步的状态:
# ntpq -p
用 ntpstat 也可以查看一些同步状态,用 netstat -ntlup 查看端口使用情况!
# ntpstat
# netstat -ntlup
切记安装完毕客户端需过 5 -10 分钟才能从服务器端更新时间!当时更新只会报错。
linux 客户端设置:
# vi /etc/crontab
加入一行
*/15 * * * * ntpdate 服务器端 IP
windows 客户端设置:
屏幕右下角的时间双击 – 选择“Internet 时间”,直接在服务器里面输入“服务器端 IP”,立即更新 OK.
如果只想让局域网中的机器能够更新,外网无法更新。请添加如下配置:
restrict 192.168.100.0 mask 255.255.255.0 nomodify (允许内网通讯)
restrict 0.0.0.0 mask 0.0.0.0 nomodify notrap noquery notrust(屏蔽其他 IP 过来更新时间)
注:restrict IP 地址或域名 make 子网掩码 选项
常见选项如下:
ignore:表示禁止所以的 NTP 请求包进入
nomodify:表示禁止其他计算机更改本机 NTP 服务设置,但可以通过本 NTP 服务器进行网络校时
notrust:表示禁止所以未通过认证的 NTP 包进入
noquery:表示禁止其他计算机查询本机 NTP 服务的状态
如果没有设置任何选项,就表示该计算机(或网络)没有任何限制