欢迎登陆真网站,您的到来是我们的荣幸。 登陆 注册 忘记密码? ☆设为首页 △加入收藏
欢迎加入真幸福QQ群
电脑知识: 基础知识 网络技术 操作系统 办公软件 电脑维修 电脑安全 windows7 windows8 windows10 服务器教程 平板电脑 视频播放教程 网络应用 互联网 工具软件 浏览器教程 QQ技巧 输入法教程 影视制作 YY教程 wps教程 word教程 Excel教程 PowerPoint
云南西双版纳特产小花糯玉米真空包装


对于Docker使用的一些安全配置建议
hkcmd.exe出错怎么办
Ubuntu下安装Nginx和Google Pagespeed的教程
在CentOS上安装Percona服务器的方法
在vmware中开放VNC端口的方法
对Linux上使用LUKS加密的部分进行备份
怎样快速启动word2013文档
AE制作分屏的效果教程
AE特效命令功能解释
Win10系统注册ocx出现错误代码0x80040200怎么办
在CentOS服务器上配置NTP服务器的教程
【 来源:网络 】【 点击:5 】 【 发布时间:2017_03_03 08:59:59 】

   网络时间协议(NTP)用来同步网络上不同主机的系统时间。你管理的所有主机都可以和一个指定的被称为 NTP 服务器的时间服务器同步它们的时间。而另一方面,一个 NTP 服务器会将它的时间和任意公共 NTP 服务器,或者你选定的服务器同步。由 NTP 管理的所有系统时钟都会同步精确到毫秒级。

  在公司环境中,如果他们不想为 NTP 传输打开防火墙,就有必要设置一个内部 NTP 服务器,然后让员工使用内部服务器而不是公共 NTP 服务器。在这个指南中,我们会介绍如何将一个 CentOS 系统配置为 NTP 服务器。在介绍详细内容之前,让我们先来简单了解一下 NTP 的概念。

  为什么我们需要 NTP?

  由于制造工艺多种多样,所有的(非原子)时钟并不按照完全一致的速度行走。有一些时钟走的比较快而有一些走的比较慢。因此经过很长一段时间以后,一个时钟的时间慢慢的和其它的发生偏移,这就是常说的 “时钟漂移” 或 “时间漂移”。为了将时钟漂移的影响最小化,使用 NTP 的主机应该周期性地和指定的 NTP 服务器交互以保持它们的时钟同步。

  在不同的主机之间进行时间同步对于计划备份、入侵检测记录、分布式任务调度或者事务订单管理来说是很重要的事情。它甚至应该作为日常任务的一部分。

  NTP 的层次结构

  NTP 时钟以层次模型组织。层级中的每层被称为一个 stratum(阶层)。stratum 的概念说明了一台机器到授权的时间源有多少 NTP 跳。

2015724195740125.jpg (800×627)

  Stratum 0 由没有时间漂移的时钟组成,例如原子时钟。这种时钟不能在网络上直接使用。Stratum N (N > 1) 层服务器从 Stratum N-1 层服务器同步时间。Stratum N 时钟能通过网络和彼此互联。

  NTP 支持多达 15 个 stratum 的层级。Stratum 16 被认为是未同步的,不能使用的。

  准备 CentOS 服务器

  现在让我们来开始在 CentOS 上设置 NTP 服务器。

  首先,我们需要保证正确设置了服务器的时区。在 CentOS 7 中,我们可以使用 timedatectl 命令查看和更改服务器的时区(比如,"Australia/Adelaide",LCTT 译注:中国可设置为 Asia/Shanghai )

  代码如下:

  # timedatectl list-timezones | grep Australia

  # timedatectl set-timezone Australia/Adelaide

  # timedatectl

2015724195804788.png (553×230)

  继续并使用 yum 安装需要的软件

  代码如下:

  # yum install ntp

  然后我们会添加全球 NTP 服务器用于同步时间。

  代码如下:

  # vim /etc/ntp.conf

server 0.oceania.pool.ntp.org

  server 1.oceania.pool.ntp.org

  server 2.oceania.pool.ntp.org

  server 3.oceania.pool.ntp.org

  默认情况下,NTP 服务器的日志保存在 /var/log/messages。如果你希望使用自定义的日志文件,那也可以指定。

  复制代码

  代码如下:

  logfile /var/log/ntpd.log

  如果你选择自定义日志文件,确保更改了它的属主和 SELinux 环境。

  复制代码

  代码如下:

  # chown ntp:ntp /var/log/ntpd.log

  # chcon -t ntpd_log_t /var/log/ntpd.log

  现在初始化 NTP 服务并确保把它添加到了开机启动。

  代码如下:

  # systemctl restart ntp

  # systemctl enable ntp

  验证 NTP Server 时钟

  我们可以使用 ntpq 命令来检查本地服务器的时钟如何通过 NTP 同步。

2015724195826111.jpg (648×113)

  下面的表格解释了输出列。

  remote 源在 ntp.conf 中定义。‘*’ 表示当前使用的,也是最好的源;‘+’ 表示这些源可作为 NTP 源;‘-’ 标记的源是不可用的。

  refid 用于和本地时钟同步的远程服务器的 IP 地址。

  st Stratum(阶层)

  t 类型。 'u' 表示单播(unicast)。其它值包括本地(local)、多播(multicast)、广播(broadcast)。

  when 自从上次和服务器交互后经过的时间(以秒数计)。

  poll 和服务器的轮询间隔,以秒数计。

  reach 表示和服务器交互是否有任何错误的八进制数。值 337 表示 100% 成功(即十进制的255)。

  delay 服务器和远程服务器来回的时间。

  offset 我们服务器和远程服务器的时间差异,以毫秒数计。

  jitter 两次取样之间平均时差,以毫秒数计。

  控制到 NTP 服务器的访问

  默认情况下,NTP 服务器允许来自所有主机的查询。如果你想过滤进来的 NTP 同步连接,你可以在你的防火墙中添加规则过滤流量。

  # iptables -A INPUT -s 192.168.1.0/24 -p udp --dport 123 -j ACCEPT

  # iptables -A INPUT -p udp --dport 123 -j DROP

  该规则允许从 192.168.1.0/24 来的 NTP 流量(端口 UDP/123),任何其它网络的流量会被丢弃。你可以根据需要更改规则。

  配置 NTP 客户端

  1. Linux

  NTP 客户端主机需要 ntpupdate 软件包来和服务器同步时间。可以轻松地使用 yum 或 apt-get 安装这个软件包。安装完软件包之后,用服务器的 IP 地址运行下面的命令。

  代码如下:

  # ntpdate

  基于 RHEL 和 Debian 的系统命令都相同。

  2. Windows

  如果你正在使用 Windows,在日期和时间设置(Date and Time settings)下查找网络时间(Internet Time)。

  3. Cisco 设备

  如果你想要同步 Cisco 设备的时间,你可以在全局配置模式下使用下面的命令。

  代码如下:

  # ntp server

  来自其它厂家的支持 NTP 的设备有自己的用于网络时间的参数。如果你想将设备和 NTP服务器同步时间,请查看设备的说明文档。

  结论

  总而言之,NTP 是在你的所有主机上同步时钟的一个协议。我们已经介绍了如何设置 NTP 服务器并使支持 NTP 的设备和服务器同步时间。

  希望能对你有所帮助。

本网站由川南居提供技术支持,fkzxf版权所有 浙ICP备12031891号
淳安分站 淳安分站