ntp server配置
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2 NTP 简介
2.1 定义
Network Time Protocol(NTP)是用来使计算机时间同步化的一种协议,它可以使计算 机对其服务器或时钟源(如石英钟,GPS 等等)做同步化,它可以提供高精准度的时间校正 (LAN 上与标准间差小于 1 毫秒,WAN 上几十毫秒),且可介由加密确认的方式来防止恶 毒的协议攻击。
delay: 从本地机发送同步要求到服务器的 round trip time offset: 这是个最关键的值, 它告诉了我们本地机和服务器之间的时间差别. offset 越接近于 0, 我们就和服务器的时间越接近 jitter: 这是一个用来做统计的值. 它统计了在特定个连续的连接数里 offset 的分布情况. 简 单地说这个数值的绝对值越小我们和服务器的时间就越精确 那么大家细心的话就会发现两个问题: 第一我们连接的是 为什么和 remote server 不一样? 第二那个最前面的+和*都是什么意思呢? 第一个问题不难理解,因为 NTP 提供给我们的是一个 cluster server 所以每次连接的得到的服 务器都有可能是不一样.同样这也告诉我们了在指定 NTP Server 的时候应该使用hostname 而 不是 IP 第二个问题和第一个相关,既然有这么多的服务器就是为了在发生问题的时候其他的服务器 还可以正常地给我们提供服务.那么如何知道这些服务器的状态呢? 这就是第一个记号会告 诉我们的信息 * 它告诉我们远端的服务器已经被确认为我们的主 NTP Server,我们系统的时间将由这台机器 所提供 + 它将作为辅助的 NTP Server 和带有*号的服务器一起为我们提供同步服务. 当*号服务器不 可用时它就可以接管 远程服务器被 clustering algorithm 认为是不合格的 NTP Server x 远程服务器不可用 了解这些之后我们就可以实时监测我们系统的时间同步状况了
金枫 Intranet 网安实验室
NTP server 配置
关键词:linux ntp server
枫无眠 m aple5218 @
作者:枫无眠
1 引言
在信息化系统建设中,会有很多的服务器和工作站,而这些机器的时间不一致就会造成 很多的不准确。
本文介绍了 NTP,通过 NTP 来使网络中的机器时间达到一致。
计算机主机一般同多个时间服务器连接, 利用统计学的算法过滤来自不同服务器的时 间,以选择最佳的路径和来源来校正主机时间。即使主机在长时间无法与某一时间服务器相 联系的情况下,NTP 服务依然有效运转。
为防止对时间服务器的恶意破坏,NTP 使用了识别(Authentication)机制,检查来对时的 信息是否是真正来自所宣称的服务器并检查资料的返回路径,以提供对抗干扰的保护机制。
端. 所以服务器从高到低级别可以设定为 1-16. 为了减缓负荷和网络堵塞,原则上应该避免
直接连接到级别为 1 的服务器的.
t: 这个.....我也不知道啥意思^_^
when: 我个人把它理解为一个计时器用来告诉我们还有多久本地机器就需要和远程服务器
进行一次时间同步
poll: 本地机和远程服务器多少时间进行一次同步(单位为秒). 在一开始运行 NTP 的时候这
2.2 原理
NTP 提供准确时间,首先要有准确的时间来源,这一时间应该是国际标准时间 UTC。 NTP 获得 UTC 的时间来源可以是原子钟、天文台、卫星,也可以从 Internet 上获取。这样 就有了准确而可靠的时间源。时间按 NTP 服务器的等级传播。按照离外部 UTC 源的远近 将所有服务器归入不同的 Stratum(层)中。Stratum-1 在顶层,有外部 UTC 接入,而Stratum -2 则从 Stratum-1 获取时间,Stratum-3 从 Stratum-2 获取时间,以此类推,但 Stratum 层的总 数限制在15 以内。所有这些服务器在逻辑上形成阶梯式的架构相互连接,而Stratum-1 的时 间服务器是整个系统的基础。
允许本机地址一切的操作 代码: restrict 127.0.0.1
最后我们允许局域网内所有 client 连接到这台服务器同步时间.但是拒绝让他们修改服务 器上的时间 代码: restrict 192.168.1.0 mask 255.255.255.0 nomodify
版权所有 欢迎转载
3/6
金枫 Intranet 网安实验室
在启动 NTP 服务器之前先和这些服务器做一个同步,使得我们机器的时间尽量接近标准时间
版权所有 欢迎转载
2/6
金枫 Intranet 网安实验室
作者:枫无眠
. 这里我们可以用 ntpdate 命令 代码: # ntpdate 6 Jul 01:21:49 ntpdate[4528]: step time server 213.222.193.35 offset -38908.575181 sec
3.3 启动管理服务
# /etc/init.d/ntpd start # chkconfig --level 35 ntpd on 服务启动后不能再进行手工同步
3.3.1 查看 NTP 服务的务,但是我们的系统时间到底和服务器同步了没有呢? 为此
NTP 提供了一个很好的查看工具: ntpq (NTP query)
4 总结
Linux ntp 采用 udp 协议,缺省端口 123
参考文献
[1]作者.文档名.单位.年份 /view/60648.htm?fr=ala0_1_1 /techdoc/system/2008/08/27/1028096.shtml /xtgl/a/dC/3084f.html
作者:枫无眠
3.2.3 杂项
driftfile 是用来指定记录时间差异的文件 我们每一个 system clock 的频率都有小小的误差,这个就是为什么机器运行一段时间后会不 精确. NTP 会自动来监测我们时钟的误差值并予以调整.但问题是这是一个冗长的过程,所以 它会把记录下来的误差先写入 driftfile.这样即使你重新开机以后之前的计算结果也就不会丢 失了 keys 是用来指定认证 key 文件的(这里不用)。
# ntpdate 6 Jul 01:21:56 ntpdate[4530]: adjust time server 213.222.193.35 offset -0.000065 sec
假如你的时间差的很离谱的话第一次会看到调整的幅度比较大,所以保险起见可以运行两次. 那么为什么在打开 NTP 服务之前先要手动运行同步呢? a) 因为根据 NTP 的设置,如果你的系统时间比正确时间要快的话那么 NTP 是不会帮你调
是 NTP 的官方网站,在这上面我们可以找到离我们城市最近的 NTP Server. NTP 建议我们为了保障时间的准确性,最少找两个个 NTP Server。 如: server server server
我建议大家在打开 NTP服务器后就可以运行ntpq 命令来监测服务器的运行.这里我们可以使
用 watch 命令来查看一段时间内服务器各项数值的变化
代码:
# watch ntpq -p
Every 2.0s: ntpq -p
Sat Jul 7 00:41:45 2007
remote
refid
st t when poll reach delay offset jitter
2 u 54 64 377 19.301 -60.218 292.411 现在我
就来解释一下其中的含义
remote: 它指的就是本地机器所连接的远程 NTP 服务器
refid: 它指的是给远程服务器(e.g. 193.60.199.75)提供时间同步的服务器
st: 远程服务器的级别. 由于NTP 是层型结构,有顶端的服务器,多层的Relay Server 再到客户
整的,所以要么你把时间设置回去,要么先做一个手动同步 a) 当你的时间设置和 NTP 服务器的时间相差很大的时候,NTP 会花上较长一段时间进行
调整.所以手动同步可以减少这段时间
3.2.2 设置自己为时间服务器(r estr ict)
restrict 是设定哪台 client 机器可以和 ntp server 进行同步,具有什么样的权限。
======================================================================
========
+193.60.199.75 193.62.22.98 2 u 52 64 377 8.578 10.203 289.032
*mozart.musicbox 192.5.41.41
3.2 服务配置
nptd 是即做为 Server,也做为 client 运行的,所以只有一个配置文件 /etc/ntp.conf。 ntp.conf 里主要可以使用如下几个命令:restrict,server,driftfile,keys
3.2.1 设置上级服务器(ser ver )
server 是设定上级服务器用的,可以设置多个上级服务器,以更好的校准时间。
版权所有 欢迎转载
1/6
金枫 Intranet 网安实验室
作者:枫无眠
3 Linux 系统下的 NTP
Linux 系统下已经有 ntp 相关的软件包,所以在 linux 下使用 NTP 是很方便的。
3.1 安装
首先,先检查两机的 ntp 是否已经安装: rpm -qa|grep ntp 如果没有安装可以自行去安装 rpm -ivh ntp-4.2.2p1-5.el5.rpm
个 poll 值会比较小,那样和服务器同步的频率也就增加了,可以尽快调整到正确的时间范围.之
后 poll 值会逐渐增大,同步的频率也就会相应减小
reach: 这是一个八进制值,用来测试能否和服务器连接.每成功连接一次它的值就会增加
版权所有 欢迎转载
4/6
金枫 Intranet 网安实验室
作者:枫无眠
server 命令的格式是: server [IP or hostname] [prefer] 其中[IP or hostname]为上级时间服务器的 IP 或者域名,主机名: 可以是 192.168.12.177 形式,或者 再或者 ntpserver 这样的形式。 后面的[prefer]参数是可选的,加上 prefer 后,ntp server 和上级时间服务器同步时会优先先 访问加了 prefer 这行的进行同步。
修订记录: 版本 0.1
日期 2010-08-04
内容 结构
版权所有 欢迎转载
5/6
金枫 Intranet 网安实验室
先来看 restrict 的格式为: restrict [客户端 IP] mask [netmask_IP] [parameter] 客户端 IP,就是都是哪几台 client 机器要和这台 ntp server 进行同步的 ip 地址 最后的 parameter 可以有如下几个参数:
ignore:拒绝连接到 ntp server nomodiy:可以连接到 ntp server,但是不能对 ntp server 进行时间上的修改 noquery:不提供对 ntp server 查询时间,也就是拒绝和 ntp server 进行时间同步 notrap:不提供 trap 远程登录功能 notrust:对没有认证的客户端不提供服务 对于默认的 client 拒绝所有的操作 代码: restrict default kod nomodify notrap nopeer noquery