CentOS下部署NTP服务器

简介:


http://www.ntp.org/downloads.html


安装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/bin/

 

修改ntp.conf配置文件


首先先了解一下ntp.conf里面涉及到参数说明

关于权限设定部分; 权限的设定主要以 restrict 这个参数来设定
格式如下:
restrict IP地址 mask 子网掩码 参数; 其中 IP 可以是IP地址,也可以是 default ,default
就是指所有的IP参数有以下几个:

ignore :关闭所有的 NTP 联机服务

nomodify:客户端不能更改服务端的时间参数,但是客户端可以通过服务端进行网络校时

notrust:客户端除非通过认证,否则该客户端来源将被视为不信任子网
 
noquery :不提供客户端的时间查询

注意:如果参数没有设定,那就表示该 IP (或子网)没有任何限制
 
用server这个参数设定上级时间服务器

格式如下: server IP地址或域名 [prefer]
IP地址或域名就是我们指定的上级时间服务器,如果 Server 参数最后加上 prefer,表示我们的 NTP
服务器主要以该部主机时间进行校准

driftfile格式如下:driftfile 文件名

在与上级时间服务器联系时所花费的时间,记录在driftfile参数后面的文件内 注意: driftfile
后面接的文件需要使用完整的路径文件名,不能是链接文件,并且文件的权限需要设定成 ntpd守护进程可以写入。


vi /etc/ntp.conf

1.允许任何IP的客户机都可以进行时间同步

将“restrict default kod nomodify notrap nopeer noquery”这行修改成:

restrict default nomodify


2.只允许192.168.0.0网段的客户机进行时间同步

restrict 192.168.0.0 mask 255.255.0.0 nomodify


源文件安装是没有ntp.conf (闲麻烦的话,大家可以选择yum -y install ntp) 手动添加,touch /etc/ntp.conf,复制以下

======================================================================
restrict default nomodify notrap noquery

restrict 127.0.0.1
restrict 192.168.0.0 mask 255.255.0.0 nomodify

server 0.pool.ntp.org
server 1.pool.ntp.org
server 2.pool.ntp.org

server  127.127.1.0     # local clock
fudge   127.127.1.0 stratum 10 #调整为8,表示将使用local时间作为ntp服务提供给ntp客户端

driftfile /var/lib/ntp/drift
broadcastdelay  0.008
keys            /etc/ntp/keys 

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


让本服务器时间与time.nist.gov时间同步,使服务器为标准时间

使用ntpd同步时间(注意:使用ntpd时,本机与上源的时间相差不能太大,否则不运行,所以应
该先用ntpdate取得时间初值后在启动ntpd
 


[root@localhost ~]# ntpdate time.nist.gov


以守护进程启动ntpd

[root@localhost ~]#/usr/local/ntp/bin/ntpd -c /etc/ntp.conf -p /tmp/ntpd.pid

如果是yum安装ntp  使用 chkconfig --level 35 ntpd on

[root@localhost ~]#netstat -nul |grep 123
udp        0      0 192.168.50.91:123           0.0.0.0:*                               
udp        0      0 127.0.0.1:123               0.0.0.0:*                               
udp        0      0 0.0.0.0:123                 0.0.0.0:*

 

[root@localhost ~]# ntpq -p
     remote           refid                     st t when   poll  reach   delay     offset         jitter
==============================================================================
 114.80.81.1     204.152.184.72     2 u    5      64    1       13.142  -287655   0.001
 218.75.4.130    216.218.192.202  2 u    4      64    1       15.109  -287655   0.001
*LOCAL(0)        .LOCL.               10 l    3      64    1       0.000    0.000       0.001

 

    remote:响应这个请求的NTP服务器的名称。

 
  refid:NTP服务器使用的上一级ntp服务器。
 
  st :remote远程服务器的级别.由于NTP是层型结构,有顶端的服务器,多层的Relay Server再到客户端.所以服              务器从高到低级别可以设定为1-16.为了减缓负荷和网络堵塞,原则上应该避免直接连接到级别为1的服务器
 
  when: 上一次成功请求之后到现在的秒数。
 
  poll : 本地机和远程服务器多少时间进行一次同步(单位为秒).在一开始运行NTP的时候这个poll值会比较小,那                  样和服务器同步的频率也就增加了,可以尽快调整到正确的时间范围,之后poll值会逐渐增大,同步的频率               也就会相应减小
 
  reach:这是一个八进制值,用来测试能否和服务器连接.每成功连接一次它的值就会增加
 
  delay:从本地机发送同步要求到ntp服务器的round trip time
 
  offset:主机通过NTP时钟同步与所同步时间源的时间偏移量,单位为毫秒(ms)。offset越接近于0,主机和                     ntp服务器的时间越接近
 
  jitter:这是一个用来做统计的值.它统计了在特定个连续的连接数里offset的分布情况.简单地说这个数值的绝对                  值越小,主机的时间就越精确

    两个问题:

第一 设置ntp连接的是 server 0.pool.ntp.org ,为什么和remote server不一样

因为NTP提供给我们的是一个cluster server所以每次连接的得到的服务器都有可能是不一样.同样这也告诉我们了在指定NTP Server的时候应该使用hostname而不是IP 

第二 最前面的+和*都是什么意思

和第一个相关,既然有这么多的服务器就是为了在发生问题的时候其他的服务器还可以正常地给我们提供服务.那么如何知道这些服务器的状态呢? 这就是第一个记号会告诉我们的信息 

它告诉我们远端的服务器已经被确认为我们的主NTP Server,我们系统的时间将由这台机器所提供 

它将作为辅助的NTP Server和带有*号的服务器一起为我们提供同步服务. 当*号服务器不可用时它就可以接管 

远程服务器被clustering algorithm认为是不合格的NTP Server 

远程服务器不可用

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

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

[root@localhost ~]# ntpdate -d

 

iptables设置:


安全设置,开放192.168.0.0访问本机123端口
/sbin/iptables -A INPUT -p UDP -i eth0 -s 192.168.0.0/24  --dport 123 -j ACCEPT

 


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/sbin/ntpdate 192.168.50.91;/sbin/hwclock -w

[root@localhost ~]# service crond restart


windows客户端设置NTP

直接在控制面板--日期和时间  修改

也可以下载以下软件修改
http://www.stdtime.gov.tw/chinese/exe/NTPClock.exe 

关于域控NTP同步请看以下另外一篇文章:

http://viong.blog.51cto.com/844766/1053276




    本文转自viong 51CTO博客,原文链接:http://blog.51cto.com/viong/522799,如需转载请自行联系原作者



相关文章
|
9天前
|
中间件 Java 应用服务中间件
Windows部署web应用服务器Jboss中间件
如何在Windows系统上部署JBoss 7.1作为Web应用服务器,包括配置环境变量、自动部署WAR包、访问JBoss控制台、设置管理员账户以及修改端口和绑定地址等操作。
25 1
|
11天前
|
JavaScript 前端开发 应用服务中间件
【Vue面试题三十】、vue项目本地开发完成后部署到服务器后报404是什么原因呢?
这篇文章分析了Vue项目在服务器部署后出现404错误的原因,主要是由于history路由模式下服务器缺少对单页应用的支持,并提供了通过修改nginx配置使用`try_files`指令重定向所有请求到`index.html`的解决方案。
【Vue面试题三十】、vue项目本地开发完成后部署到服务器后报404是什么原因呢?
|
3天前
|
负载均衡 应用服务中间件 持续交付
微服务架构下的Web服务器部署
【8月更文第28天】随着互联网应用的不断发展,传统的单体应用架构逐渐显露出其局限性,特别是在可扩展性和维护性方面。为了解决这些问题,微服务架构应运而生。微服务架构通过将应用程序分解成一系列小型、独立的服务来提高系统的灵活性和可维护性。本文将探讨如何在微服务架构中有效部署和管理Web服务器实例,并提供一些实际的代码示例。
21 0
|
12天前
|
应用服务中间件 Docker 容器
在服务器中使用Docker安装Tomcat、同时实现目录挂载、并且部署War包到服务器
这篇文章介绍了在Docker中安装Tomcat的过程,包括搜索Tomcat镜像、拉取镜像、目录挂载的准备、创建并挂载容器,以及如何进入容器和进行测试。文中还说明了如何将WAR包部署到Tomcat服务器并访问部署的应用。
在服务器中使用Docker安装Tomcat、同时实现目录挂载、并且部署War包到服务器
|
4天前
|
JavaScript NoSQL 中间件
《Node.js后端修炼手册》——揭秘服务器搭建与部署上线的生死时速,让你一战成名!
【8月更文挑战第27天】本文详细介绍如何从零开始利用Node.js构建后端服务器并部署至生产环境。首先,通过简易步骤搭建基础服务器,包括环境安装与配置。接着,引入Express框架优化路由与中间件管理,提升开发效率。随后,利用Mongoose实现MongoDB数据库连接,增强数据交互能力。为保证系统稳定性,文中还讲解了错误处理机制。最后,通过PM2等工具部署应用至生产环境,确保高效运行。本教程辅以示例代码,帮助读者快速掌握Node.js后端开发全流程。
32 2
|
6天前
|
前端开发 应用服务中间件 nginx
前端服务器部署方式
【8月更文挑战第25天】前端服务器部署方式
19 1
|
6天前
|
Linux 应用服务中间件 网络安全
【Azure 应用服务】查看App Service for Linux上部署PHP 7.4 和 8.0时,所使用的WEB服务器是什么?
【Azure 应用服务】查看App Service for Linux上部署PHP 7.4 和 8.0时,所使用的WEB服务器是什么?
|
15天前
|
机器学习/深度学习 编解码 人工智能
阿里云gpu云服务器租用价格:最新收费标准与活动价格及热门实例解析
随着人工智能、大数据和深度学习等领域的快速发展,GPU服务器的需求日益增长。阿里云的GPU服务器凭借强大的计算能力和灵活的资源配置,成为众多用户的首选。很多用户比较关心gpu云服务器的收费标准与活动价格情况,目前计算型gn6v实例云服务器一周价格为2138.27元/1周起,月付价格为3830.00元/1个月起;计算型gn7i实例云服务器一周价格为1793.30元/1周起,月付价格为3213.99元/1个月起;计算型 gn6i实例云服务器一周价格为942.11元/1周起,月付价格为1694.00元/1个月起。本文为大家整理汇总了gpu云服务器的最新收费标准与活动价格情况,以供参考。
阿里云gpu云服务器租用价格:最新收费标准与活动价格及热门实例解析
|
5天前
|
弹性计算 负载均衡 数据库
阿里云轻量应用服务器全面解析:收费标准、产品优势及适用场景
在云计算领域,阿里云凭借其强大的技术实力和丰富的产品线,为用户提供了一系列高效、便捷的云服务器产品。其中,轻量应用服务器(Simple Application Server)作为面向个人开发者、中小企业等用户的入门级云产品,凭借其易用性、高性价比以及一站式服务体验,受到了广泛的欢迎。本文将全面解析阿里云轻量应用服务器的收费标准、产品优势以及适用场景,帮助用户更好地了解和选择这一产品。
阿里云轻量应用服务器全面解析:收费标准、产品优势及适用场景
|
9天前
|
弹性计算 负载均衡 数据库
阿里云轻量应用服务器收费标准、性能及适用场景全面解析
阿里云轻量应用服务器(Simple Application Server)作为面向个人开发者、中小企业等用户的入门级云产品,凭借其易用性、高性价比以及一站式服务体验,受到了广泛的欢迎。本文将全面解析阿里云轻量应用服务器的收费标准、最新活动价格以及适用场景,帮助用户更好地了解和选择这一产品。
阿里云轻量应用服务器收费标准、性能及适用场景全面解析
下一篇
云函数