乐山搭建ntp服务器
Ⅰ 如何搭建自己的NTP服务器
NTP服务器【Network Time Protocol(NTP)】是用来使计算机时间同步化的一种协议,它可以使计算机对其服务器或时钟源(如石英钟,GPS等等)做同步化,它可以提供高精准度的时间校正(LAN上与标准间差小于1毫秒,WAN上几十毫秒),且可介由加密确认的方式来防止恶毒的协议攻击。时间按NTP服务器的等级传播。按照离外部UTC源的远近把所有服务器归入不同的Stratum(层)中。
网络时间协议(NTP)用来同步网络上不同主机的系统时间。你管理的所有主机都可以和一个指定的被称为 NTP 服务器的时间服务器同步它们的时间。而另一方面,一个 NTP 服务器会将它的时间和任意公共 NTP 服务器,或者你选定的服务器同步。由 NTP 管理的所有系统时钟都会同步精确到毫秒级。
在公司环境中,如果他们不想为 NTP 传输打开防火墙,就有必要设置一个内部 NTP 服务器,然后让员工使用内部服务器而不是公共 NTP 服务器。在这个指南中,我们会介绍如何将一个 CentOS 系统配置为 NTP 服务器。在介绍详细内容之前,让我们先来简单了解一下 NTP 的概念。
为什么我们需要 NTP?
由于制造工艺多种多样,所有的(非原子)时钟并不按照完全一致的速度行走。有一些时钟走的比较快而有一些走的比较慢。因此经过很长一段时间以后,一个时钟的时间慢慢的和其它的发生偏移,这就是常说的 “时钟漂移” 或 “时间漂移”。为了将时钟漂移的影响最小化,使用 NTP 的主机应该周期性地和指定的 NTP 服务器交互以保持它们的时钟同步。
在不同的主机之间进行时间同步对于计划备份、入侵检测记录、分布式任务调度或者事务订单管理来说是很重要的事情。它甚至应该作为日常任务的一部分。
NTP 的层次结构
NTP 时钟以层次模型组织。层级中的每层被称为一个 stratum(阶层)。stratum 的概念说明了一台机器到授权的时间源有多少 NTP 跳。
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
继续并使用 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 同步。
下面的表格解释了输出列。
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 的设备和服务器同步时间。
Ⅱ 如何在域控中搭建ntp时间服务器
域内时间服务器的时间同步,是遵循这样一个规则: client->child domain PDCe->parent domain PDCe->root PDCe->Internal Time Source->Internet Time Source
层层向上,自动同步,这就是为什么您即便修改了域内工作站的时间,重新启动又会恢复域内时间。
所以,一个标准的、稳定的时间源对于整个AD架构是非常重要的。需要提到的一点是,时间服务使用 udp 123--- gnaw0725
据我所知,net time命令只能使计算机的时钟与其他计算机或域的时钟同步。
我们建议您将权威时间服务器配置为从硬件源收集时间。当您将权威时间服务器配置为与 Internet 时间源同步时,不会有任何身份验证。我们还建议您降低服务器和独立客户端的时间校准设置。这可以为您的域提供更准确的时间和更高的安全性。
Windows 包含 W32Time,它是 Kerberos 身份验证协议所需的时间服务工具。Windows 时间服务的目的是确保组织中运行 Microsoft Windows 2000 或更高版本的所有计算机都使用同一个时间。
配置 Windows 时间服务以使用外部时间源的具体步骤,请参考以下文章:
如何在 Windows Server 2003 中配置权威时间服务器
http://support.microsoft.com/kb/816042/zh-cn
我所知道的公共时间服务器有:
ntp2.usno.navy.mil at 192.5.41.209
tock.usno.navy.mil at 192.5.41.41
time.windows.com
我的服务器用的是小鸟云的,很稳定,挺不错的。
Ⅲ 如何在本地搭建ntp服务器地址
当你配置正确,你可以用Windows Time(W32Time)service 建一个SNTP/NTP服务器为Windows或非windows客户端提供时间服务。
步骤如下:
1.打开开始菜单,点击运行输入regedit打开Windows注册表。 2.找到如下位置
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config 3.找到AnnounceFlags 双击修改值为5保存。 4. 开启NTPServer
1.在注册表中找到如下位置:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\NtpServer\ 2.找到Enable并修改其值为1.
5.打开开始菜单输入CMD在命令行模式下输入:
net stop w32time && net start w32time 重启一下win32time服务。 ----------------------------- 需要注意的问题:
1. 在系统服务中设置W32Time服务启动模式为自动。 2.确定防火墙允许UDP123端口访问。
这样你可以在NTP客户端上测试从这台服务器校对系统时间啦。
也可参考下面的资料:http://www.07net01.com/linux/Windows_2008_Server_dajian_NTP_fuwuqi_17115_1348536542.html
我的服务器用的是小鸟云的,性能稳定,访问流畅。
Ⅳ 如何搭建自己的NTP服务器
1、首先使用组合键WIN + R 启动运行窗口,在打开的窗口中输入regedit,点击确定按钮。
Ⅳ 如何在 CentOS 中搭建 NTP 服务器
备 CentOS 服务器
现在让我们来开始在 CentOS 上设置 NTP 服务器。
首先,我们需要保证正确设置了服务器的时区。在 CentOS 7 中,我们可以使用 timedatectl 命令查看和更改服务器的时区(比如,"Australia/Adelaide",LCTT 译注:中国可设置为 Asia/Shanghai )
# timedatectl list-timezones | grep Australia
# timedatectl set-timezone Australia/Adelaide
# timedatectl
控制到 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
# ntpdate <server-IP-address>
# ntp server <server-IP-address>
该规则允许从 192.168.1.0/24 来的 NTP 流量(端口 UDP/123),任何其它网络的流量会被丢弃。你可以根据需要更改规则。
配置 NTP 客户端
1. Linux
NTP 客户端主机需要 ntpupdate 软件包来和服务器同步时间。可以轻松地使用 yum 或 apt-get 安装这个软件包。安装完软件包之后,用服务器的 IP 地址运行下面的命令。
基于 RHEL 和 Debian 的系统命令都相同。
2. Windows
如果你正在使用 Windows,在日期和时间设置(Date and Time settings)下查找网络时间(Internet Time)。
3. Cisco 设备
如果你想要同步 Cisco 设备的时间,你可以在全局配置模式下使用下面的命令。
来自其它厂家的支持 NTP 的设备有自己的用于网络时间的参数。如果你想将设备和 NTP服务器同步时间,请查看设备的说明文档。
结论
总而言之,NTP 是在你的所有主机上同步时钟的一个协议。我们已经介绍了如何设置 NTP 服务器并使支持 NTP 的设备和服务器同步时间。
Ⅵ windows设置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:ntp.sjtu.e.cn”,这里我们指定ntp.sjtu.e.cn是主时间服务器,也可以是其它地址(210.72.145.44)。
2、自由设定XP时间同步间隔:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\
NtpClient的“SpecialPollInterval”默认设定为604800(或86400)
PS:
对话框中的“基数栏”选择到“十进制”上,显示的数字正是自动对时的间隔(以秒为单位),比如默认的604800就是由7(天)×24(时)×60(分)×60(秒)计算来的如果您想让WINODWS以多长时间自动对时,只要按这个公式算出具体的秒数
Ⅶ 如何在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
验证NTP服务器时钟
我们可以使用ntpq命令,检查本地服务器的时钟如何通过NTP实现同步。
Ⅷ 如何在 CentOS 中设置 NTP 服务器
centos 5.6安装NTP服务器 为有些服务和实验需要多台机器的时间同步,所以就有了搭建NTP的前提条件了,具体步骤如下: 1,安装ntp服务 yum install ntp.i* -y 2,修改/etc/ntp.conf restrict default kod nomodify notrap nopeer noquery # restrict -6 default kod nomodify notrap nopeer noquery #针对ipv6设置 #这是ntp的默认设置 # 允许本地所有操作 restrict 127.0.0.1 restrict -6 ::1 # 允许的局域网络段 restrict 10.0.0.0 mask 255.0.0.0 nomodify motrap restrict 192.168.0.0 mask 255.255.0.0 nomodify motrap # 使用上层的internet ntp服务器 restrict 207.46.232.182 mask 255.255.255.255 nomodify notrap noquery server 207.46.232.182 # 如果无法与上层ntp server通信以本地时间为标准时间 server 127.127.1.0 # local clock fudge 127.127.1.0 stratum 10 # 计算本ntp server 与上层ntpserver的频率误差 driftfile /var/lib/ntp/drift # Key file containing the keys and key identifiers used when operating # with symmetric key cryptography. keys /etc/ntp/keys #日志文件 logfile /var/log/ntp.log #说明: restrict <IP 地址> <子网掩码> <网段> <子网掩码> [] ignore :关闭所有ntp服务 noquery:不提供ntp服务 notrap:不提供trap远程事件登录的功能 nomodiy:表示客户端不能更改ntp服务器的时间参数,但可以通过ntp服务器进行时间矫正 notrust:拒绝没有通过认证的客户端 nokod:kod技术可以组织一种dos攻击 2,在修改/etc/ntp/step-tickers文件 207.46.232.182 127.127.1.0 #当ntp服务器启动时自动与这个文件中的记录ip进行时间校对 3,修改/etc/sysconfig/ntpd SYNC_HWCLOCK=YES #允许BIOS与系统时间同步 4,客户端设置略。
Ⅸ 【ntpdate】CentOS7.x上使用ntpdate同步ntp服务器
NTP服务器顾名思义就是时间同步服务器(Network Time Protocol),Linux下的ntp服务器配置相对来说都比较容易,但在Linux下有一个弊端, 不同时区或者说是时间相差太大的无法同步 ,所以在配置ntp服务器之前需要把时间配置成相同的。
NTP时钟同步方式说明
NTP在linux下有两种时钟同步方式,分别为直接同步和平滑同步:
直接同步
使用ntpdate命令进行同步,直接进行时间变更。如果服务器上存在一个12点运行的任务,当前服务器时间是13点,但标准时间时11点,使用此命令可能会造成任务重复执行。因此使用ntpdate同步可能会引发风险,因此该命令也多用于配置时钟同步服务时第一次同步时间时使用。
平滑同步
使用ntpd进行时钟同步,可以保证一个时间不经历两次,它每次同步时间的偏移量不会太陡,是慢慢来的,这正因为这样,ntpd平滑同步可能耗费的时间比较长。
标准时钟同步服务
http://www.pool.ntp.org/zone/cn
这个网站包含全球的标准时间同步服务,也包括对中国时间的同步,对应的URL为:cn.pool.ntp.org
在其中也描述了ntp配置文件中的建议写法:
server 1.cn.pool.ntp.org
server 2.asia.pool.ntp.org
server 3.asia.pool.ntp.org
实验室集群没有联网,我们需要搭建ntp服务器并进行时间同步。
现使用的系统为centos7.2,机器使用情况如下表所示,这里以192.168.1.102为ntp server,192.168.1.104为client对时间进行同步。
NTP server 192.168.1.102
NTP client 192.168.1.104
1.在集群中所有节点上安装ntp
# yum -y install ntp
2.所有节点设置时区,这里设置为中国所用时间
# timedatectl set-timezone Asia/Shanghai
3.在server节点上启动ntp服务
# systemctl startntpd
# systemctl enable ntpd
4.在server节点上设置现在的准确时间
# timedatectl set-time HH:MM:SS
5.在server节点上设置其ntp服务器为其自身,同时设置可以接受连接服务的客户端,是通过更改/etc/ntp.conf文件来实现,其中server设置127.127.1.0为其自身,新增加一个 restrict 段为可以接受服务的网段
# vim /etc/ntp.conf
6.重启ntpd服务
# systemctl restart ntpd
# timedatectl
NTP synchronized: yes
启用ntpd后,服务器就开启了ntpd自动同步,无法使用 timedatectl set-time HH:MM:SS重新设置时间。
如果要使用timedatectl set-time HH:MM:SS 重新设置时间:
# systemctl stop ntpd
# timedatectl set-ntp false
# timedatectl set-time HH:MM:SS
# hwclock -w
# systemctl start ntpd
1.客户端时区需要和服务端保持一致,否则无法同步时间
# timedatectl set-timezone
Asia/Shanghai
2.安装同步软件包
# yum -y install ntpdate
3. 修改/etc/sysconfig/ntpdate,让ntpdate每次同步时间之后把时间写入hwclock,相当于命令hwclock -w
将最后一行SYNC_HWCLOCK=no修改为:SYNC_HWCLOCK=yes
# vim /etc/sysconfig/ntpdate
4.客户端定时任务配置
# crontab -e
59 23 * * * /sbin/ntpdate 192.168.1.102
设置为每天23:59分执行,重启crond服务
######################
定时任务基本格式 :
***** command
分时日月周命令
第1列表示分钟1~59 每分钟用*或者 */1表示
第2列表示小时1~23(0表示0点)
第3列表示日期1~31
第4列表示月份1~12
第5列标识号星期0~6(0表示星期天)
第6列要运行的命令
################################
5.重启定时任务
# systemctl restart crond.service
Ⅹ 请问关于如何在xp系统下搭建ntp时间同步服务器
WindowsXP时间服务器配置
1.在注册表中将服务NTPServer的Enabled属性设置为1.Type改为NTP。
2.如果外部时间源获取时间将Config/AnnounceFlags设置为5.
3.将parameters\NtpServer地址改为外部时间源的IP地址或者DNS,在使用DNS是后面要加上”,0x1”.多个地址之间用空格隔开。
4.其他参数是可选的参数,可根据需要配置。
5.重启w32time服务.在命令行中,net stop w32time && net start
w32time.就配置完成了。
6.此外,要保证windows
防火墙是关闭的。或者启动防火墙时,在例外中添加C:\WINDOWS\system32\w32time.dll端口号:123类型UDP。
经过以上六步服务器端就设置完成了。
WindowsXP客户端的配置
1.将NtpServer地址设置为服务器的地址。
2.服务类型改为NTP。
3.SpecialPolInterval自动同步时间间隔根据需要配置比如15分钟轮询一次(设置为900,因为单位为秒)。
4.将默认的时间服务器设置为服务器的地址, XP默认是微软的时间服务器time.windows.com。在注册表中
HKEY_LOCAL_MACHINE\SOFTWARE\WINDOWS\CurrentVersion\DateTime\Servers
新建一个字符串值(名字3),输入服务器的IP地址。
并将默认值改为3.这样在时期时间属性\Internet时间默认的时间同步服务器就成为我们设置的了。