Centos 5.6下面架设NTP服务器

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://navyaijm.blog.51cto.com/4647068/809455

最近公司在搞运维自动化这一块,要实现批量更新服务器的配置文件等等操作,需要用到NTP服务器,下面把搭建的过程分享一下:
1.安装ntp服务包
 

  # yum install ntp -y
2.让本服务器时间与3.cn.pool.ntp.org时间同步;
   [root@localhost ~]# ntpdate 3.cn.pool.ntp.org
3.自动同步服务器时钟
   [root@localhost ~]# crontab -e
   * */4 * * * /usr/sbin/ntpdate 3.cn.pool.ntp.org
   [root@localhost ~]# service crond restart
4.配置ntp.conf
   [root@localhost ~]# vi /etc/ntp.conf
restrict default nomodify notrap noquery
restrict 10.20.220.0 mask 255.255.254.0 nomodify notrap
restrict 10.20.216.0 mask 255.255.254.0 nomodify notrap
restrict 10.20.221.0 mask 255.255.254.0 nomodify notrap
restrict 127.0.0.1
restrict -6 ::1
server 3.cn.pool.ntp.org
server 10.20.220.251
server time.lib.tsinghua.edu.cn
server 0.centos.pool.ntp.org
server 1.centos.pool.ntp.org
server 2.centos.pool.ntp.org
server  127.127.1.0     # local clock
fudge   127.127.1.0 stratum 8
driftfile /var/lib/ntp/drift
keys /etc/ntp/keys
logfile /var/log/ntp.log
broadcastdelay 0.008

5.启动或停止时间服务
   # service ntpd start
   # service ntpd stop
   # service ntpd restart
6.验证ntp服务已经运行
   # pgrep ntpd
   #123端口是否开启
7.初始同步
   # ntpdate -u 3.cn.pool.ntp.org
8.确认同步成功
[root@localhost ~]# ntpq -p
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
*61.153.197.226  66.220.9.122     2 u  188  256  377   25.124   12.510   2.999
 10.20.220.251   .INIT.          16 u    - 1024    0    0.000    0.000   0.000
 web.lib.tsinghu .INIT.          16 u    - 1024    0    0.000    0.000   0.000
+114.80.81.1     209.81.9.7       2 u  168  256  377   27.492  -31.989   1.283
 LOCAL(0)        .LOCL.           8 l   23   64  377    0.000    0.000   0.001

9.linux客户端设置NTP

目前 Linux 系统上面有两个时间,一个是 Linux 系统,另一个则是 BIOS 时间(真正的硬件记录的时间)!

我们可以使用 date 这个指令来手动修正目前主机的时间,date 这个指令仅修正 Linux 时间而已,所以需要以 hwclock 这个指令来将 BIOS 时间也更新才行

[root@test root]# date MMDDhhmmYYYY
MM:月份
DD:日期
hh:小时
mm:分钟
YYYY:公元年

 
[root@test root]# hwclock [-rw]

-r:检视目前的 BIOS 时间
-w:将目前 Linux 的时间写入 BIOS 当中!

[root@localhost ~]# date ; hwclock -r
2011年 03月 23日 星期三 01:03:59 CST
2011年03月23日 星期三 03时05分00秒  -0.914570 seconds

#  date 与 hwclock -r 所显示的时间是『不一致的』!
# 因为 Linux 时间与 BIOS 时间不一致所导致的一个问题!
# 需要以 hwclock -w 来将 Linux 时间写入 BIOS

[root@localhost ~]# hwclock -w
[root@localhost ~]# date ; hwclock -r
2011年 03月 23日 星期三 01:03:59 CST
2011年03月23日 星期三 01时04分00秒  -0.814770 seconds

#自动同步服务器时钟
[root@localhost ~]# crontab -e
# 加入这一行:
10 5 * * * root /usr/bin/ntpdate 10.20.220.251 ; /sbin/hwclock -w

[root@localhost ~]# service crond restart

10.windows客户端设置NTP

设置 Windows Time 服务:在“控制面板”中打开“管理工具”,再打开“服务”;在服务中找到“Windows Time”,双击服务名称,在打开的“Windows Time的属性”中设置“启动类型”为“自动”,再按下启动按钮。

在“运行(R)”中用“cmd”命令进入在DOS命令行窗体;执行以下命令(注意空格):


net time /setsntp:192.168.1.232

net stop w32time

net start w32time

w32tm –s


(设置时间服务器地址)

(停止时间服务)

(启动时间服务)

(立即同步时间)

 

11.客户端常见错误:

错误1.Server dropped: Strata too high

在ntp客户端运行ntpdate serverIP,出现no server suitable for synchronization found的错误。

在ntp客户端用ntpdate –d serverIP查看,发现有“Server dropped: strata too high”的错误,并且显示“stratum 16”。而正常情况下stratum这个值得范围是“0~15”。

这是因为NTP server还没有和其自身或者它的server同步上。

以下的定义是让NTP Server和其自身保持同步,如果在/ntp.conf中定义的server都不可用时,将使用local时间作为ntp服务提供给ntp客户端。

server 127.127.1.0
fudge 127.127.1.0 stratum 8 

 

在ntp server上重新启动ntp服务后,ntp server自身或者与其server的同步的需要一个时间段,这个过程可能是5分钟,在这个时间之内在客户端运行ntpdate命令时会产生no server suitable for synchronization found的错误。

那么如何知道何时ntp server完成了和自身同步的过程呢?

在ntp server上使用命令:

# watch ntpq -p

出现画面:

Every 2.0s: ntpq -p                                                                                                             Thu Jul 10 02:28:32 2008

     remote           refid      st t when poll reach   delay   offset jitter

==============================================================================

 192.168.30.22   LOCAL(0)         8 u   22   64    1    2.113 179133.   0.001

 LOCAL(0)        LOCAL(0)        10 l   21   64    1    0.000   0.000  0.001

注意LOCAL的这个就是与自身同步的ntp server。

注意reach这个值,在启动ntp server服务后,这个值就从0开始不断增加,当增加到17的时候,从0到17是5次的变更,每一次是poll的值的秒数,是64秒*5=320秒的时间。

如果之后从ntp客户端同步ntp server还失败的话,用ntpdate –d来查询详细错误信息,再做判断。

错误2.Server dropped: no data

从客户端执行netdate –d时有错误信息如下:

transmit(192.168.30.22)

transmit(192.168.30.22)

transmit(192.168.30.22)

transmit(192.168.30.22)

transmit(192.168.30.22)

192.168.30.22: Server dropped: no data

server 192.168.30.22, port 123

.....
28 Jul 17:42:24 ntpdate[14148]: no server suitable for synchronization found

出现这个问题的原因可能有2:

1。检查ntp的版本,如果你使用的是ntp4.2(包括4.2)之后的版本,在restrict的定义中使用了notrust的话,会导致以上错误。

使用以下命令检查ntp的版本:

# ntpq -c version

下面是来自ntp官方网站的说明:
The behavior of notrust changed between versions 4.1 and 4.2.

In 4.1 (and earlier) notrust meant "Don't trust this host/subnet for time".

In 4.2 (and later) notrust means "Ignore all NTP packets that are not cryptographically authenticated." This forces remote time servers to authenticate themselves to your (client)ntpd

解决:

把notrust去掉。

2。检查ntp server的防火墙。可能是server的防火墙屏蔽了upd 123端口。

可以用命令

#service iptables stop

来关掉iptables服务后再尝试从ntp客户端的同步,如果成功,证明是防火墙的问题,需要更改iptables的设置。

 

本文出自 “屌丝运维男” 博客,请务必保留此出处http://navyaijm.blog.51cto.com/4647068/809455

时间: 2024-11-03 00:41:26

Centos 5.6下面架设NTP服务器的相关文章

CentOS下基于pptp架设VPN服务器教程

PPTP,即PPTF协议.该协议是在PPP协议的基础上开发的一种新的增强型安全协议,支持多协议虚拟专用网(VPN),可以通过密码身份验证协议(PAP).可扩展身份验证协议(EAP)等方法增强安全性.可以使远程用户通过拨入ISP.通过直接连接Internet或其他网络安全地访问企业网. PPTP:点对点隧道协议 (PPTP: Point to Point Tunneling Protocol) 点对点隧道协议(PPTP)是一种支持多协议虚拟专用网络的网络技术,它工作在第二层.通过该协议,远程用户能

构建企业服务之centos 5.5 NTP 服务器部署

实验环境: Linux centos 5.5两台 IP地址: NTPserver:192.168.186.129 NTPclient:192.168.186.152 测试需求: 安装NTP服务器,通过部署实施让client能够正常进行实践同步.以及在实施项目过程中遇到的故障处理进行分析. 实施过程: NTPserver端部署. 1. 首先查看是否安装了NTP服务:如果安装就不用在安装了.安装的方法很简单rpm –ivh卸载 rpm –e查询是否安装如图: 2. 查看NTP是否开机启动.如果没有启

CentOS中NTP服务器的搭建

先简单介绍几个名词 Atomic Clock: 现在计算时间最准确的是使用 原子震荡周期 所计算的物理时钟(Atomic Clock),因此也被定义为标准时间(International Atomic Time) UTC(coordinated Universal Time): 协和标准时间 就是利用 Atomic Clock 为基准定义出来的正确时间 硬件时钟: 硬件时钟是指嵌在主板上的特殊的电路, 它的存在就是平时我们关机之后还可以计算时间的原因 系统时钟: 就是操作系统的kernel所用来

在CentOS服务器上配置NTP服务器的教程

  网络时间协议(NTP)用来同步网络上不同主机的系统时间.你管理的所有主机都可以和一个指定的被称为 NTP 服务器的时间服务器同步它们的时间.而另一方面,一个 NTP 服务器会将它的时间和任意公共 NTP 服务器,或者你选定的服务器同步.由 NTP 管理的所有系统时钟都会同步精确到毫秒级. 在公司环境中,如果他们不想为 NTP 传输打开防火墙,就有必要设置一个内部 NTP 服务器,然后让员工使用内部服务器而不是公共 NTP 服务器.在这个指南中,我们会介绍如何将一个 CentOS 系统配置为

CentOS下如何部署NTP服务器

安装NTP wget http://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-4.2/ntp-4.2.6p3.tar.gz tar ntp-4.2.6p3.tar.gz cd  ntp-4.2.6p3 ./configure --prefix=/usr/local/ntp --enable-all-clocks --enable-parse-clocks make make install cp /usr/local/ntp/bin/* /usr/bi

Linux实下ntp服务器的部署实践

上篇Linux实战部署系列之ntp服务器----理论篇为大家介绍时间的相关概念和ntp的原理,本篇博文将带大家一起部署生产环境中实现简单的负载均衡和高可用的NTP服务器. 简易架构图: 环境: CentOS6.4 x86_64 server-1 192.168.1.111 NTP服务器1 server-2 192.168.1.112 NTP服务器2 client  192.168.1.113 作为客户端的某台业务服务器 ntp-4.2.4p8-3.el6.centos.x86_64 一.ntp服

Linux下ntp服务器的部署实战理论

在上文Linux系统安装后的基础优化-基于CentOS(5.8/6.4)中,我们提到了如何定时自动更新服务器时间.同时也提到了,当内网机器数量巨大时,如果都去公网ntp服务器同步时间是会有延时的.当然,这也不是仅仅是部署ntp服务器的唯一意义. 随着网络规模和网络应用不断扩大,网络设备和服务器数量不断增加.运维人员在查看众多服务器日志时,往往发现时间不一,即使手工设置了时间,也会出现因时区或夏令时等因素造成时间误差:对于部署了集群的生产环境而言它们之间需要协同工作,因此时间的准确可靠性显得尤为重

Linux架设时间服务器

ntpdate 0.centos.pool.ntp.org 在linux下,我们可以通过自带的NTP(Network Time Protocol)协议通过网络使自己的系统保持精确的时间. 可用的公共时间服务器列表可以从下面的地址获取: http://ntp.isc.org/bin/view/Servers/NTPPoolServers NTP是用来使系统和一个精确的时间源保持时间同步的协议.建议大家在自己管理的网络中建立至少一台时间服务器来同步本地时间,这样可以使得在不同的系统上处理和收集日志和

linux配置ntp服务器的方法_Linux

一.安装ntp软件 1.检查是否安装了ntp相关包. rpm -qa | grep ntp 2.安装ntp软件. yum -y install ntp 二.参数讲解 ignore  :关闭所有的 NTP 联机服务 nomodify:客户端不能更改服务端的时间参数,但是客户端可以通过服务端进行网络校时. notrust :客户端除非通过认证,否则该客户端来源将被视为不信任子网 noquery :不提供客户端的时间查询:用户端不能使用ntpq,ntpc等命令来查询ntp服务器 notrap :不提供