当前位置:数据网络行业动态 → 正文

如何在CentOS中搭建NTP服务器?

责任编辑:editor005 作者:布加迪编译 |来源:企业网D1Net  2015-05-25 21:37:24 本文摘自:51CTO

网络时间协议(NTP)用来同步网络上不同主机的系统时钟。所有受管理的主机可以与一台名为NTP服务器的指定时间服务器同步时间。另一方面,NTP服务器则与任何公共NTP服务器或者你所选择的任何服务器同步自己的时间。所有NTP管理的设备其系统时间同步时可以精确到毫秒级。

在企业环境下,如果企业不想为NTP流量打开防火墙,就有必要搭建一台内部的NTP服务器,让员工可以使用内部服务器,而不是公共NTP服务器。我们在本教程中将介绍如何将CentOS系统配置成NTP服务器。在具体介绍细节之前,不妨先来了解NTP概念。

我们为何需要NTP?

由于制造方面的差异,所有(非原子)时钟并不完全以一样的速度运行。有些时钟往往走得快点,而有些时钟走得慢点。所以经过一段很长的时间后,一个时钟的时间与另一个时钟逐渐发生偏差,导致所谓的“时钟漂移”或“时间漂移”。为了尽量减小时钟漂移影响,使用NTP的主机应该定期与指定的NTP服务器进行联系,保持时钟同步。

不同主机之间的时间同步对计划备份、入侵检测日志、分布式任务调度或事务簿记之类的事务而言很重要,甚至可能是监管合规所需要的一个要求。

NTP层次结构

NTP时钟以分层层次结构来加以组织。该层次结构中的每一层被称为层(stratum)。层这个概念描述了某机器距离权威时间源有多少个NTP跳。

如何在CentOS中搭建NTP服务器?

Stratum 0含有几乎没有时间漂移的时钟,比如原子钟。这些时钟无法通过网络直接使用。Stratum N(N >1)服务器对照Stratum N-1服务器同步其时间。Stratum N时钟可以通过网络彼此连接。

NTP最多可支持层次结构中的15层。Stratum 16被认为不同步、无法使用。

准备CentOS服务器

现在不妨接着讲讲如何在CentOS上搭建NTP服务器。

首先,我们需要确保服务器的时区正确设置。在CentOS 7中,我们可以使用timedatectl命令来查看和更改服务器的时区(比如“Australia/Adelaide”)。

# timedatectl list-timezones | grep Australia

# timedatectl set-timezone Australia/Adelaide

# timedatectl

如何在CentOS中搭建NTP服务器?

接下来使用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

[page]

验证NTP服务器时钟

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

如何在CentOS中搭建NTP服务器?

下面这张表解释了上述输出列。

如何在CentOS中搭建NTP服务器?

控制对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客户端主机需要ntpdate程序包来对照服务器同步其时间。可以使用yum或apt-get,很容易安装该程序包。安装该程序包后,运行带服务器IP地址的命令。

# ntpdate <server-IP-address>

如果是基于RHEL和Debian的系统,命令完全一样。

2. Windows

如果你使用Windows,在日期和时间设置下寻找“Internet时间”。

3. 思科设备

如果你想同步思科设备的时间,可以从全局配置模式使用下面这个命令。

# ntp server <server-IP-address>

来自其他厂商的具有NTP功能的设备在Internet时间方面有各自的参数。如果你想与NTP服务器同步时间,就要查阅设备的说明文档。

结束语

总而言之,NTP这种协议可以让你所有主机上的时钟保持同步。我们已演示了如何搭建一台NTP服务器,让具有NTP功能的设备对照该服务器同步其时间。

但愿本文对大家有所帮助。

英文:How to set up NTP server in CentOS

关键字:NTPIPtablesCentOS

本文摘自:51CTO

x 如何在CentOS中搭建NTP服务器? 扫一扫
分享本文到朋友圈
当前位置:数据网络行业动态 → 正文

如何在CentOS中搭建NTP服务器?

责任编辑:editor005 作者:布加迪编译 |来源:企业网D1Net  2015-05-25 21:37:24 本文摘自:51CTO

网络时间协议(NTP)用来同步网络上不同主机的系统时钟。所有受管理的主机可以与一台名为NTP服务器的指定时间服务器同步时间。另一方面,NTP服务器则与任何公共NTP服务器或者你所选择的任何服务器同步自己的时间。所有NTP管理的设备其系统时间同步时可以精确到毫秒级。

在企业环境下,如果企业不想为NTP流量打开防火墙,就有必要搭建一台内部的NTP服务器,让员工可以使用内部服务器,而不是公共NTP服务器。我们在本教程中将介绍如何将CentOS系统配置成NTP服务器。在具体介绍细节之前,不妨先来了解NTP概念。

我们为何需要NTP?

由于制造方面的差异,所有(非原子)时钟并不完全以一样的速度运行。有些时钟往往走得快点,而有些时钟走得慢点。所以经过一段很长的时间后,一个时钟的时间与另一个时钟逐渐发生偏差,导致所谓的“时钟漂移”或“时间漂移”。为了尽量减小时钟漂移影响,使用NTP的主机应该定期与指定的NTP服务器进行联系,保持时钟同步。

不同主机之间的时间同步对计划备份、入侵检测日志、分布式任务调度或事务簿记之类的事务而言很重要,甚至可能是监管合规所需要的一个要求。

NTP层次结构

NTP时钟以分层层次结构来加以组织。该层次结构中的每一层被称为层(stratum)。层这个概念描述了某机器距离权威时间源有多少个NTP跳。

如何在CentOS中搭建NTP服务器?

Stratum 0含有几乎没有时间漂移的时钟,比如原子钟。这些时钟无法通过网络直接使用。Stratum N(N >1)服务器对照Stratum N-1服务器同步其时间。Stratum N时钟可以通过网络彼此连接。

NTP最多可支持层次结构中的15层。Stratum 16被认为不同步、无法使用。

准备CentOS服务器

现在不妨接着讲讲如何在CentOS上搭建NTP服务器。

首先,我们需要确保服务器的时区正确设置。在CentOS 7中,我们可以使用timedatectl命令来查看和更改服务器的时区(比如“Australia/Adelaide”)。

# timedatectl list-timezones | grep Australia

# timedatectl set-timezone Australia/Adelaide

# timedatectl

如何在CentOS中搭建NTP服务器?

接下来使用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

[page]

验证NTP服务器时钟

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

如何在CentOS中搭建NTP服务器?

下面这张表解释了上述输出列。

如何在CentOS中搭建NTP服务器?

控制对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客户端主机需要ntpdate程序包来对照服务器同步其时间。可以使用yum或apt-get,很容易安装该程序包。安装该程序包后,运行带服务器IP地址的命令。

# ntpdate <server-IP-address>

如果是基于RHEL和Debian的系统,命令完全一样。

2. Windows

如果你使用Windows,在日期和时间设置下寻找“Internet时间”。

3. 思科设备

如果你想同步思科设备的时间,可以从全局配置模式使用下面这个命令。

# ntp server <server-IP-address>

来自其他厂商的具有NTP功能的设备在Internet时间方面有各自的参数。如果你想与NTP服务器同步时间,就要查阅设备的说明文档。

结束语

总而言之,NTP这种协议可以让你所有主机上的时钟保持同步。我们已演示了如何搭建一台NTP服务器,让具有NTP功能的设备对照该服务器同步其时间。

但愿本文对大家有所帮助。

英文:How to set up NTP server in CentOS

关键字:NTPIPtablesCentOS

本文摘自:51CTO

电子周刊
回到顶部

关于我们联系我们版权声明隐私条款广告服务友情链接投稿中心招贤纳士

企业网版权所有 ©2010-2024 京ICP备09108050号-6 京公网安备 11010502049343号

^