如何在 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 的设备和服务器同步时间。

第一步、通过yum安装ntp

# yum install ntp

第二步、配置NTP服务器

编辑vim /etc/ntpconf

server 192168110 (centos7IP地址)

server s2mtimeeducn 

server 0asiapoolntporg 

server 1asiapoolntporg 

server 2asiapoolntporg 

server 3asiapoolntporg

server 12712710 iburst  local clock 当外部时间不可用时,使用本地时间。 

restrict 19216811 mask 2552552550 nomodify  允许更新的IP地址段

第三步、启动NTP

systemctl start ntpd 

systemctl enable ntpdservice 设置开机启动服务  

第四步、验证NTP

# ntpq -p

配置客户端

1:linux

NTP 客户端主机需要 ntpupdate 软件包来和服务器同步时间。可以轻松地使用 yum 安装。

# ntpdate

具体可以参考网页链接

为了避免Linux系统的主机,在长时间运行下所导致的时间偏差。因此我们需要对时间进行时间同步(synchronize)。我们一般使用ntp服务来同步不同机器的时间。NTP 是网络时间协议(Network Time Protocol)的简称,他是通过UDP协议,对时间进行同步的。

编辑NTP Server的主要配置文件为/etc/ntpconf ,如下:

配置含义:

配置完毕,重启NTP服务,使配置更改生效。

查看NTP服务和上级连通状态

内网其他设备作为NTP的客户端配置,相对就比较简单,而且所有设备的配置都相同。

首先需要安装NTP服务(与NTP-Server完全一样)。然后找其中一台配置/etc/ntpconf文件,配置完成验证通过后,拷贝到其他客户端机器,直接使用即可。

注释掉之前的上层服务,以下几行

添加本地的NTP服务器即可完成配置

可以用date命令查看时区

如果时区是EST需要改成CST

选择亚洲 /中国 /北京 /然后确认

改完后执行如下复制语句

使用

1721730100为你的NTP服务器的ip地址,显示adjust time server 1921681135 offset 0004882 sec

这里有可能出现同步失败,一般情况下原因都是本地的NTPD服务器还没有正常启动起来,一般需要几分钟时间后才能开始同步。

也有报错 no server suitable for synchronization found,这种问题由一下两种情况造成:

Server dropped: strata too high:

并且显示“stratum 16”。而正常情况下stratum这个值得范围是“0~15”。

这种问题往往是由ntp服务启动后还没有和上层服务同步完成,可以等五分钟再次查看。

Server dropped: strata no data:

这种问题一般是因为访问不到NTP服务,需要检查NTP服务是否启动成功,或者是否是被防火墙拦截。

启动NTP_Client

启动后,查看同步情况

由于是内网,NTP服务很快会同步上,可以使用下面命令查看时间是否和服务器时间相同

本机客户端配置完成后,需要同步的客户端机器使用SCP拷贝/etc/ntpconf,命令如下,启动NTP服务即可。

Linux的NTP配置总结

NTP服务及时间同步问题

执行ntpdate xxxxxxxxxxxx(ntp服务器地址)。

Linux下配置NTP服务器

配置方法:

1、ntp服务安装

NTP服务在RHEL5x中式默认安装的软件包,可用rpm -qa |grep

ntp检查是否安装,如果未安装可使用如下命令安装与删除NTP服务器软件包

#使用rpm方式安装

rpm -ivh ntp-422p1-8el5i386rmp

#使用yum方式安装

yum -y install ntpi

#使用rpm方式删除

rpm -e ntp-422pl-8el5i386rpm

#使用yum方式删除

yum -y remove ntpi

2、ntp服务配置

在ntp服务安装完成后,需要修改ntp服务配置文件。ntp服务主配置文件/etc/ntpconf

21 ntp服务的启动、暂停

NTP属于system

V服务,其启动、暂停相关命令如下:

#启动

service ntpd

start

#停止

Service ntpd

stop

#重新加载

service ntpd

reload

#查看当前启动状态

service ntpd

status

22 ntp服务自动加载

设置ntp服务下一次开机运行状态可通过命令配置

#在运行级别2、3、4、5上设置为自动运行

chkconfig

ntpd on

#在运行级别2、3、4、5上设置为不自动运行

chkconfig

ntpd off

#在运行级别3、5上设置为自动运行

chkconfig

ntpd --level 35 on

#在运行级别3、5上设置为不自动运行

chkconfig

ntpd --level 35 off

23 配置信息

配置ntp,将Internet上的时间服务器作为内部标准时间来源,过程如下

1)修改/etc/ntpconf文件

restrict default kod nomodify notrap nopeer noquery

restrict 127001

restrict -6::1

restrict 19216800 mask 2552552550 nomodify notrap

restrict 19216810 mask 2552552550 nomodify notrap

#指定Internet上的时间服务器

restrict 20746232182 mask 255255255255 nomodify notrap noquery

server 20746232182

server 12712710

fudge 12712710 stratum 10

keys /etc/ntp/keys

#指定NTP服务器日志文件

logfile /var/log/ntp

2)修改/etc/ntp/stpe-tickers文件,内容如下(当ntpd服务启动时,会自动与该文件中记录的上层NTP服务进行时间校对)

20746232182

12712710

3)修改/etc/sysconfig/ntpd文件,内容如下:

#允许BIOS与系统时间同步,也可以通过hwclock -w 命令

SYNC_HWCLOCK=yes

4)在配置完成并重新启动服务后,可通过ntpstat

命令显示本机上一次与上层ntp服务器同步时间的情况,也可以使用ntpq -p 查看本机与上层ntp服务器通信情况,

24 图形界面配置NTP

图形界面下直接用system-config-date, 在“Network Time Protocol”选项页指定NTP服务器后勾选“Synchronize system clock before startingservice”,将ntpd服务设置为自动运行即可。

25 客户端访问

1)Linux客户端可通过图形界面进行配置,也可以通过ntpdate命令立即与NTP服务器及行时间校对。

ntpdate 192168010

2)Windows客户端,只需双击任务栏右下角的时钟,选择“Internet时间”选项页,输入NTP服务IP地址或FQDN,并勾选“自动与Internet时间服务器同步”即可。

Windows默认7天自动更新一次,可通过修改注册表HKEY_LOCAL_MACHINE\SYSTEM

\CurrentControlSet\services\W32Time\TimeProviders\NtpClient\SpecialPollInterval 默认单位为妙,修改后重新启动即可生效。

方法一

采用Windows、linux等操作系统自带的时间同步功能

  对于Windows操作系统,自身已经集成了自动对时功能,在此仅以windows操作系统为例介绍一下。

双击系统托盘下方的时间在服务器地址栏输入NTP服务器的IP地址(1cnpoolntporg),然后点击“确定”按钮保存下来就行了。

  方法二

修改注册表,提高时间同步精度

由于系统默认的时间同步间隔是7天,我们无法自由选择,使得这个功能在灵活性方面大打折扣。其实,我们也可以通过修改注册表来手动修改它的自动同步间隔以提高同步精度,以下以XP系统为例。

  1 在“开始”菜单→“运行”项下输入“Regedit”进入注册表编辑器

  2 展开[

HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/W32Time/TimeProviders/NtpClient

] 分支,并双击 SpecialPollInterval 键值,将对话框中的“基数栏”选择到“十进制”上

  3

对话框中显示的数字正是自动对时的间隔(以秒为单位),比如默认的604800就是由7(天)×24(时)×60(分)×60(秒)计算来的。设定时间同步周期(建议设为900=15分钟或3600=1小时等周期值),填入对话框,点击确定保存关闭对话框。

  4

在Parameters列表中,将NtpServer键值修改为NTP服务器的IP地址(1cnpoolntporg),然后点击“确定”按钮保存。

  方法三,采用其他NTP客户端程序时间同步

可以在互联网上找到其他客户端程序实现电脑时间同步。

转自( https://wwwcnblogscom/pipci/p/14672772html )

1进入到服务器,依次点击:windows+R弹出运行窗口---regedit---确定

然后点击确定。

2依次展开:HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/W32Time/TimeProviders/NtpServer

在NtpServer项的右侧键值Enablied,将默认的0

改为1,1为启用NTP服务器。

3依次展开:HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/W32Time/Config

找到Config项右侧的AnnounceFlags。

把默认的10改为5

5的意思就是自身为可靠的时间源

4修改完以上之后关闭注册表编辑器

再:windows+R弹出运行窗口---servicesmsc---确定,找到Windows Time服务,启动并设置开机启动

5、打开命令提示符或PowerShell窗口‘输入net stop w32time停止服务,再输入net start w32time启动服务

6、输入命令w32tm /stripchart /computer:127001,有时间回显说明配置成功了。到此在win10上配置NTP时间同步服务器的方法就介绍完了。

7、添加防火墙规则

控制面板--->系统和安全--->windows防火墙--->高级设置--->入站规则(右键)--->新建规则---> 端口 ---下一步----UDP----特定本地端口:123(不要换别的)

一直点下一步,直到下面这个页面填写名称:NTP,完成

7linux系统使用命令ntpdate -u $windows机器IP同步时间就可以了,windows在时间设置上设置该机器IP然后点同步更新

1

一个局域网中只需要一个NTP服务器,其他均为NTP客户端。

选择NTP服务器的原则:

该服务器可以上网:可以与标准Internet的服务器进行同步时间。

Web服务器:

数据库服务器:

2

启动ntpd服务:

3

选择YaST

4

点击“系统”--> "系统服务(运行级别)"

5

选择"ntp" ,点击左下方的“启用”,

6

再点击“确定”

7

点击“确定”

8

选择’是’。

NTP服务端配置完成。

9

配置NTP客户端

使用crontab命令,定时执行与服务端同步命令。

ssh root用户登陆,执行命令:

linux-udly:~ # crontab –e

输入以下内容

0 /1 /usr/sbin/sntp -P no -r 192168150152 (对应的NTP服务器IP地址)

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

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情