如何在 CentOS 中搭建 NTP 服务器

如何在 CentOS 中搭建 NTP 服务器,第1张

备 CentOS 服务器

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

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

# timedatectl list-timezones | grep Australia

# timedatectl set-timezone Australia/Adelaide

# timedatectl

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

# yum install ntp

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

# vim /etc/ntpconf

server 0oceaniapoolntporg

server 1oceaniapoolntporg

server 2oceaniapoolntporg

server 3oceaniapoolntporg

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

logfile /var/log/ntpdlog

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

# chown ntp:ntp /var/log/ntpdlog

# chcon -t ntpd_log_t /var/log/ntpdlog

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

# systemctl restart ntp

# systemctl enable ntp

验证 NTP Server 时钟

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

控制到 NTP 服务器的访问

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

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

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

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

配置 NTP 客户端

1 Linux

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

# ntpdate <server-IP-address>

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

2 Windows

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

3 Cisco 设备

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

# ntp server <server-IP-address>

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

结论

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

win10修改系统时间方法:

1、在win10桌面点击任务栏最右端的时间显示窗口,如下图所示,在弹出菜单中选择<日期与时间设置>

2、打开日期与时间设置窗口后,缺省状态下更改日期与时间的选项为灰色,不可选择,因此需要将上方<自动设置时间>置于关闭状态。

3、将自动设置时间滑动键向左拨动关闭自动设置后,再点击下方的更改日期与时间选项进入修改。

4、下一步就进入了时间更改的窗口,上方一行修改年月日,下方一行是修改具体时间,修改后确定退出就生效了。

5、实际情况下自动设置时间就可以搞定了,没有必要手动来改时间,如果自动设置下时间不准,一般是因为网络不通,或者时间服务未打开,造成电脑没法从世界时间服务器同步时间造成的。

6、网络的问题不在解决之列,下一步来解决时间服务的问题,在桌面上右键点击电脑,选择管理。

7、在计算机管理菜单,选择左方树形菜单中第三大类<服务与应用程序>,双击点开右侧箭头,在展开菜单中选择<服务>

8、在右侧的服务清单中,找到windows time服务,这里的服务是按首字母排列的,所以这个服务已在末属,在该服务上单击右键,选择启动。

9、下一步来配置该服务开机时就启动,左键双击该服务,会进入到服务配置界面,如下图,在启动类型中下拉菜单,选择为自动。

10、当然也在这个界面中启动和停止这个服务,选择下方的确定就可以保存退出,在服务的状态栏里确认该服务已经启动,并且是自动状态,这样windows就会自动同步时间,不用担心时间不准了。

配置的环境及要求:

1假设在19216800网段内,要以IP为1921680240的Linux机器时间服务器。

21921680240服务器能上外网,能与比较权威的公网时间服务器同步

3同网段内的其他机器每小时自动向1921680240同步时间

一、安装

yum -y install ntp ntpdate

二、配置

21NTP server的主配置文件为/etc/ntpconf 现对/etc/ntpconf的各项进行说明

cp /etc/ntpconf /etc/ntpconfbak

vim /etc/ntpconf

2vi /etc/ntpconf(以下是ntpconf文件的内容)

#设置此服务器同上层服务器做时间同步的IP地址,prefer意味着首选IP地址

#经试验,下面的几个时间服务器速度还不错(默认配置即可)

server 2107214544 prefer

server 2182113042

server 0asiapoolntporg

server 1asiapoolntporg

server 2asiapoolntporg

#记录上次的NTP server与上层NTP server联接所花费的时间

driftfile /etc/ntp/drift

#设置默认策略为允许任何主机进行时间同步

restrict default ignore

#设置允许访问此时间服务器的时间服务的IP地址

#根据自己实际情况配置

restrict 127001

restrict 192168102  # 指定某台机器时间同步

restrict 19216800 mask 2552552550 #允许19216800/254子网内主机时间同步

restrict 0000 mask 0000 nomodify notrap #允许任何主机跟进行时间同步

#指定阶层编号为10,降低其优先度。

fudge 12712711 stratum 10

#设置ntp日志的path

statsdir /var/log/ntp/

#设置ntp日志文件

logfile /var/log/ntp/ntplog

三、维护

----添加为服务

chkconfig --level 345 ntpd on

----启动

service ntpd start

/etc/rcd/initd/ntpd start

----停止

service ntpd stop

/etc/rcd/initd/ntpd stop

----管理命令

ntpq –p #查看本机和上层服务器的时间同步结果

ntptrace #可以用来追踪某台时间服务器的时间对应关系

ntpdate IP #客户端要和NTP server进行时钟同步。

/var/log/ntp/ntplog #查看ntp日志

----------------------------------

开启防火墙端口

iptables -A INPUT -p udp -dport 123 -j ACCEPT

/etc/initd/iptables save

service iptables restart

四、配置客户端

测试同步:

ntpdate ip地址

设置自动同步:

echo “00 /1 root /usr/sbin/ntpdate 1921680240;/sbin/hwclock -w”>>/etc/crontab

每小时同NTP server进行一次时钟同步,并写入本机BIOS

我就是这样用的,很好。

Windows(2003)下配置NTP时间服务器

一、服务端设置:

因为默认情况下,WINDOWS SERVER 2003 是作为NTP客户端工作的 ,所以必须通过修改注册表,以使系统作为NTP服务器运行。注意,工作之前请先备份注册表文件。

1、通过开始菜单,输入regedit命令后打开注册表设定画面,此时请一定备份注册表文件。

2、修改以下选项的键值

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\

NtpServer内的「Enabled」设定为1,打开NTP服务器功能

3、修改以下键值

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config\

AnnounceFlags设定为5,该设定强制主机将它自身宣布为可靠的时间源,从而使用内置的互补金属氧化物半导体(CMOS) 时钟。

4、在dos命令行执行以下命令,确保以上修改起作用

net stop w32time

net start w32time

推荐计划;如果该服务器和internet连接,那么为了避免服务器和internet上的ntp同步,最好追加以下配置:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\

NtpClient的「enable」设定为0 以防止作为客户端自动同步外界的时间服务

二、客户设置:

1、指定主时间服务器。在DOS方式输入“net time /setsntp:ntpsjtueducn”,这里我们指定ntpsjtueducn是主时间服务器,也可以是其它地址(2107214544)。

2、自由设定XP时间同步间隔:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\

NtpClient的「SpecialPollInterval」默认设定为604800(或86400)

配置 Windows 时间服务以使用内部硬件时钟警告:如果使用注册表编辑器或其他方法错误地修改了注册表,则可能会出现严重问题。这些问题可能需要重新安装操作系统才能解决。Microsoft 不能保证可以解决这些问题。修改注册表需要您自担风险。

要将 PDC 主机配置为不使用外部时间源,请更改 PDC 主机上的公告标志。PDC 主机是存放域的林根 PDC 主机角色的服务器。这种配置会强制 PDC 主机将它自身宣布为可靠的时间源,从而使用内置的互补金属氧化物半导体 (CMOS) 时钟。要将 PDC 主机配置为使用内部硬件时钟,请按照下列步骤操作:

单击“开始”,单击“运行”,键入 regedit,然后单击“确定”。

找到并单击下面的注册表子项:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config\AnnounceFlags

在右窗格中,右键单击“AnnounceFlags”,然后单击“修改”。

在“编辑 DWORD 值”的“数值数据”框中键入 A,然后单击“确定”。

退出注册表编辑器。

在命令提示符处,键入以下命令以重新启动 Windows 时间服务,然后按 Enter:

net stop w32time && net start w32time

配置 Windows 时间服务以使用外部时间源

要将内部时间服务器配置为与外部时间源同步,请按照下列步骤操作:

将服务器类型更改为 NTP。为此,请按照下列步骤操作:

单击“开始”,单击“运行”,键入 regedit,然后单击“确定”。

找到并单击下面的注册表子项:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Parameters\Type

在右窗格中,右键单击“Type”,然后单击“修改”。

在“编辑值”的“数值数据”框中键入 NTP,然后单击“确定”。

将 AnnounceFlags 设置为 5。为此,请按照下列步骤操作:

找到并单击下面的注册表子项:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config\AnnounceFlags

在右窗格中,右键单击“AnnounceFlags”,然后单击“修改”。

在“编辑 DWORD 值”的“数值数据”框中键入 5,然后单击“确定”。

启用 NTPServer。为此,请按照下列步骤操作:

找到并单击下面的注册表子项:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpServer

在右窗格中,右键单击“Enabled”,然后单击“修改”。

在“编辑 DWORD 值”的“数值数据”框中键入 1,然后单击“确定”。

指定时间源。为此,请按照下列步骤操作:

找到并单击下面的注册表子项:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Parameters\NtpServer

在右窗格中,右键单击“NtpServer”,然后单击“修改”。

在“编辑值”的“数值数据”框中键入 Peers,然后单击“确定”。

注意:Peers 是一个占位符,应替换为您的计算机从中获取时间戳的对等端列表(以空格分隔)。列出的每个 DNS 名称都必须是唯一的。必须在每个 DNS 名称后面附加 ,0x1。如果不在每个 DNS 名称后面附加 ,0x1,则在步骤 5 中所做的更改将不会生效。

选择轮询间隔。为此,请按照下列步骤操作:

找到并单击下面的注册表子项:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpClient\SpecialPollInterval

在右窗格中,右键单击“SpecialPollInterval”,然后单击“修改”。

在“编辑 DWORD 值”的“数值数据”框中键入 TimeInSeconds,然后单击“确定”。

注意:TimeInSeconds 是一个占位符,应替换为您希望各次轮询之间的间隔秒数。建议值为 900(十进制)。该值将时间服务器配置为每隔 15 分钟轮询一次。

配置时间校准设置。为此,请按照下列步骤操作:

找到并单击下面的注册表子项:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config\MaxPosPhaseCorrectio

NTP时间同步服务器是针对计算机、自动化装置等进行校时而研发的高科技产品。NTP时间同步服务器从GPS卫星上获取标准的时间信号,将这些信号通过各种接口传输给自动化系统中需要时间信息的设备。

NTP服务工作模式为三种,即客户/服务器模式、广播模式和对称模块。在客户端/服务器模式下,客户端以周期性地发送NTP数据包,根据标记直观查看工作状态、事件结果等并及时反馈。

NTP时钟同步服务器利用卫星通信功能,可以构建中心主站系统对各厂站时间同步系统的集中监测和远程维护,提高设备的运行可靠性。NTP时钟同步服务器采用SMT表面贴装技术生产,以高速芯片进行控制,无硬盘和风扇设计,精度高、稳定性好、功能强、无积累误差、不受地域气候等环境条件限制、性价比高、操作简单、全自动智能化运行,免操作维护,适合无人值守。

1默认情况下,独立服务器WINDOWS SERVER 2003 是作为NTP客户端工作的 ,所以必须通过修改注册表,让它作为NTP服务器运行。工作之前最好先备份注册表文件。 2修改以下选项的键值HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpServer内的「Enabled」设定为1,打开NTP服务器功能(默认是不开启NTP Server服务,除非电脑升级成为域控制站) 3 修改以下键值HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config\AnnounceFlags设定为5.该设定强制主机将它自身宣布为可靠的时间源,从而使用内置的互补金属氧化物半导体 (CMOS) 时钟。(设定好后就要确定本机的电池要耐用了,做成时间服务器,时间一出错就头大了,呵呵) 如果要采用外面的时间服务器就用默认的a值即可. 4.我这边的服务器同步用外部服务器,地址为2107214544 (中国国家授时中心) 5.重启Win32Time服务: net stop w32Time && net start W32Time 6.至此,已完成服务器端设定. 7.客户端的设定更改注册表即可. HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpClient SpecialPollInterval 值修改成十进制43200 (单位为秒,43200为12小时) SpecialPollTimeRemaining 值修改成[时间同步服务器],0 如:19216811,0

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 如何在 CentOS 中搭建 NTP 服务器

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情