开发者社区> 科技小能手> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

linux下超简单的ntp时间服务器

简介:
+关注继续查看

引言

当前虚拟化遍布企业的每个角落中,在给我们带来好处的同时也带来了一些麻烦,比如正在使用的ESXi,虚拟机的系统时间有时候是不一样的,这样很糟糕比如会给mysql数据库或者日志等等造成影响,当我们手动更改时间这样是徒劳的,由于是虚拟机即使用hwclock -w 命令也无法把系统时间写入宿主机 bios,下次重启虚拟机时间又变了,有没有什么一劳永逸的方法那?答案是使用 NTP服务器

Network Time Protocol(NTP)是用来使计算机时间同步化的一种协议,它可以使计算机对其服务器或时钟源(如石英钟,GPS等等)做同步化,它可以提供高精准度的时间校正(LAN上与标准间差小于1毫秒,WAN上几十毫秒),且可介由加密确认的方式来防止恶毒的协议攻击。

安装

原来 NTP服务器,是使用了Network Time Protocol Daemon(UDP 123 port),Linux下的 NTP 服务器安装是非常简单的,yum install ntp 就可以了。

 

相关配置文件

/etc/ntp.conf
NTP服务的主要配置文件,所有的更改全部在这里。

/usr/share/zoneinfo
由 tzdata 所提供,规定了各主要时区的时间设定文件,例如中国的时区设置文件是/usr/share/zoneinfo/Asia/Chongqing。

/etc/sysconfig/clock
Linux的主要时区设定文件。每次启动后Linux操作系统会自动读取这个文件来设定系统预设要显示的时间。如这个文件内容为”ZONE=Asia/Chongqing”,则表示Linux操作系统的时间设定使用/usr/share/zoneinfo/Asia/Chongqing这个文件。

/etc/localtime    
本地系统的时间设定文件,如果clock文件中规定了使用的时间设定文件为/usr/share/zoneinfo/Asia/Chongqing,Linux操作系统就会将Chongqing那个文件复制一份为/etc/localtime,所以系统的时间显示就会以Chongqing那个时间设定文件为准。

 

相关的命令
/bin/date
这个我们最经常使用了,更改及输出日期与时间命令。

/sbin/hwclock
使用hwclock才能将修改过后的时间写入BIOS 。

/usr/sbin/ntpd
NTP服务的守护进程,配置文件为/etc/ntp.conf 。

/usr/sbin/ntpdate
用来连接NTP服务器命令,比如ntpdate 192.168.6.51 。

/usr/sbin/ntpq
NTP查询命令。

设置NTP服务器

就如前边说的NTP配置文档只有一个 /etc/ntp.conf,看看我的ntp.conf

#红字的是我添加的,其它为默认!


  1. grep -Ev '^$|^#' /etc/ntp.conf  
  2. restrict default kod nomodify notrap nopeer noquery 
  3. restrict -6 default kod nomodify notrap nopeer noquery 
  4. restrict 131.107.13.100  //允许该NTP服务器进入
  5. restrict 114.80.81.1 //没有任何何參數的話,這表示『该 IP或网段不受任何限制
  6. restrict 202.118.1.199 
  7. restrict 127.0.0.1  
  8. restrict -6 ::1 
  9. restrict 192.168.0.0 mask 255.255.0.0 nomodify //该网段可以进行校时
  10. restrict 0.0.0.0 mask 0.0.0.0 notrust //拒绝没有认证的用户
  11. server time-nw.nist.gov prefer //prefer 该服务器优先
  12. server 0.rhel.pool.ntp.org 
  13. server 1.rhel.pool.ntp.org 
  14. server 2.rhel.pool.ntp.org 
  15. fudge   127.127.1.0 stratum 10   
  16. driftfile /var/lib/ntp/drift 
  17. keys /etc/ntp/keys 

别忘了启动NTP服务器

/etc/init.d/ntp start

 

客户端测试

对了客户端只需要是用ntpdate命令即可,192.168.6.51 为ntp 服务器ip 地址,就这么就简单!

 

相关命令


  1. ntpstat   //列出我们的NTP 服务器是否与上层连接。
  2. synchronised to NTP server (131.107.13.100) at stratum 2  
  3.    time correct to within 461 ms 
  4.    polling server every 64 s 
  5.  
  6.  
  7. ntpq -p  //列出目前我们的NTP服务器 与上层NTP服务器 的状态* 代表目前正在使用的上层 NTP服务器
  8.      remote           refid      st t when poll reach   delay   offset  jitter 
  9. ============================================================================== 
  10. *131.107.13.100  .ACTS.           1 u   30   64   67  237.165    1.539  20.382 
  11.  202.118.1.199   202.112.31.197   2 u   33   64   63  163.526   91.844  10.208 

 

上边只是简单设置,没有考虑安全方面如认证等等,如需更详细请参考这里

权限管理使用 restrict 公式如下:
restrict IP mask [参数] / restrict 192.168.0.0 mask 255.255.0.0 nomodify

其中参数主要底下这些

    * ignore拒绝所有类型NTP的连线;
    * nomodfiy:用户不能使用NTPCntpq两支程式修改伺服器的时间参数,但使用者仍可透过这部主机进行网路时的;
    * noquery:用户能够使用ntpqNTPC指令查询发表伺服器等于提供的NTP网路;
    * notrap提供陷阱这个远端事件邮箱远程事件日志的功能
    * notrust拒绝没有认证的用户

如果你没有在参数的地方加上任何参数的话这表示IP网段不受任何限制的”的意思喔!一般来说,我们可以关闭NTP的使用权限,然后一个一个启用允许登入的网段

参考

http://linux.vbird.org/linux_server/0440ntp.php

如有问题欢迎到此讨论:37275208


本文转自 dongnan 51CTO博客,原文链接:http://blog.51cto.com/dngood/662451


版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
linux 中NTP时间同步
There are tow pen source software related to the NTP in linux, The first is ntpdate, the second is ntpd.
845 0
修改Linux服务器时间的命令
修改Linux服务器时间的命令
0 0
如何从虚拟机上的linux使用sz命令传输windows大于4G的文件
如何从虚拟机上的linux使用sz命令传输windows大于4G的文件
0 0
linux基本功系列之uptime命令实战
linux基本功系列之uptime命令实战
0 0
linux基本功系列之sudo命令实战一
linux基本功系列之sudo命令实战一
0 0
linux基本功系列之-rpm命令实战
linux基本功系列之-rpm命令实战
0 0
linux基本功系列之su命令
linux基本功系列之su命令
0 0
linux基本功系列之wc命令实战
linux基本功系列之wc命令实战
0 0
linux基本功系列之-lsattr命令实战
linux基本功系列之-lsattr命令实战
0 0
文章
问答
文章排行榜
最热
最新
相关电子书
更多
ECS系统指南之Linux系统诊断
立即下载
Linux系统通过fail2ban对暴力破解进行防护
立即下载
Debian GNU/Linux 安全合规之路
立即下载