CentOS/Red Hat配置NTP客户端和服务器

时间:2020-01-09 10:43:22  来源:igfitidea点击:

如何在CentOS/RHEL/Fedora Linux下配置NTP(网络时间协议)客户端或者服务器来管理网络上的系统时钟?
网络时间协议(NTP)用于将计算机时间与另一个参考时间源同步。
在CentOS/RHEL下,您可以使用NTP或者OpenNTPD服务器软件。
这两个软件包都提供了用于时间同步的客户端和服务器软件程序。

安装ntp

ntp软件包包含实用程序和守护程序,这些实用程序和守护程序将通过NTP协议和NTP服务器将您的计算机时间同步到协调世界时(UTC)。

ntp软件包包括ntpdate(用于通过网络从远程计算机检索日期和时间的程序)和ntpd(用于不断调整系统时间的守护程序)。
安装ntp软件包:

# yum install ntp

如何配置NTP客户端?

只需打开/etc/ntp.conf文件,执行:

# vi /etc/ntp.conf

确保存在以下行:

server ntp.server.com

其中:

  • ntp.server.com:站点NTP服务器的主机名或者IP地址。如果您的ntp服务器位于192.168.1.5,则输入server 192.168.1.5。您还可以使用位于ntp.org的公共ntp服务器。

您也可以使用cron运行ntpd:

# echo '30 * * * * root /usr/sbin/ntpd -q -u ntp:ntp' > /etc/cron.d/ntpd

上面的命令指示crond运行ntpd,并在设置时钟后退出,而-u选项指示crond以ntp用户身份运行。

配置NTP服务器

如果您有很多服务器和台式机系统,请配置自己的NTP服务器。
您的NTP服务器与由ISP提供的中央NTP服务器或者位于ntp.org的公共时间服务器联系,以获取准确的时间数据。
然后,服务器允许网络上的其他计算机请求时间数据。
我们的示例设置:

192.168.1.5            =-  CentOS / Fedora / RHEL NTPD Server.
192.54.1.5              =-  ISP remote NTP server.
192.168.1.0/24        =-  NTP clients including desktop systems.

首先,在192.168.1.5上安装并启用ntpd:

# yum install ntp
# chkconfig ntpd on

现在打开/etc/ntp.conf:

# vi /etc/ntp.conf

确保以下行退出:

restrict default ignore

以上将拒绝所有对任何计算机,服务器或者客户端的访问。
但是,您需要专门授权的策略设置。
设置如下:

restrict 192.54.1.5 mask 255.255.255.245 nomodify notrap noquery
server 192.54.1.5

将192.54.1.5替换为实际的远程ISP或者ntp.org NTP服务器IP。
保存并关闭文件。

配置NTP客户端以访问您的NTP服务器

现在,您需要允许合法的NTP客户端访问服务器。
例如,允许192.168.1.0/24网络同步到位于192.168.1.5的该服务器。
打开/etc/ntp.conf并添加策略,如下所示:

# Hosts on local network are less restricted.
restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap

更新防火墙设置,打开/etc/sysconfig/iptables。

# vi /etc/sysconfig/iptables

在RH-Firewall-1-INPUT链的最后LOG和DROP行之前添加以下行:

-A RH-Firewall-1-INPUT -s 192.168.1.0/24 -m state --state NEW -p udp --dport 123 -j ACCEPT

保存并关闭文件。
最后,启动ntpd:

# service ntpd start
# service iptables restart
# netstat -tulpn