开发者社区> 嗯哼9925> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

ubuntu下配置时间同步NTP

简介:
+关注继续查看

1参考文献:

1.鸟哥的Linux私房菜:第十五章、时间服务器: NTP 服务器(强烈建议看完)

2.http://www.crsay.com/wiki/wiki.php/server/centos/ntp-set

3.常见错误集锦:http://www.blogjava.net/spray/archive/2008/07/10/213964.html

2架构

Stratum 1/2 Internet NTP Server

Stratum 3 公司防火墙(防火墙带有ntp功能,并且能够连接外网)

Stratum 4 自己搭建ntp server(跟公司防火墙的ntp server对时,这样的好处有两个,一是降低了防火墙的压力,二是降低耦合性,防止因为防火墙的变更而带来更多的改动)

Stratum 5 公司内的各台机器,相当于是一个ntp client。

3安装

3.1在线安装

ntp在线安装的方式很简单,只需要执行以下命令即可帮你安装好ntp以及所有的依赖包

sudo apt-get install ntp

3.2离线安装

如果要离线安装,那么就需要下载ntp安装包和依赖包。我们可以在一个有线环境下运行上面的在线安装,然后到/var/cache/apt/archives这个目录下拷贝完整的ntp安装包和依赖包。当前我已经将这些安装包放到网盘上面去了:http://pan.baidu.com/s/1dDzg95f

  对于下载的deb包,我们使用dpkg安装包来安装,先安装依赖包,最后安装程序包。具体安装过程如下:

复制代码
root@BJCGNMON01:/var/cache/apt/archives# dpkg  -i  libopts25_1%3a5.12-0.1ubuntu1_amd64.deb 
Selecting previously unselected package libopts25.
(Reading database ... 51276 files and directories currently installed.)
Unpacking libopts25 (from libopts25_1%3a5.12-0.1ubuntu1_amd64.deb) ...
Setting up libopts25 (1:5.12-0.1ubuntu1) ...
Processing triggers for libc-bin ...
ldconfig deferred processing now taking place

root@BJCGNMON01:/var/cache/apt/archives# dpkg  -i  ntp_1%3a4.2.6.p3+dfsg-1ubuntu3.1_amd64.deb 
(Reading database ... 51324 files and directories currently installed.)
Preparing to replace ntp 1:4.2.6.p3+dfsg-1ubuntu3.1 (using ntp_1%3a4.2.6.p3+dfsg-1ubuntu3.1_amd64.deb) ...
Unpacking replacement ntp ...
Setting up ntp (1:4.2.6.p3+dfsg-1ubuntu3.1) ...
 * Starting NTP server ntpd
   ...done.
Processing triggers for ureadahead ...
ureadahead will be reprofiled on next reboot
Processing triggers for man-db ...
复制代码

  当然还有更加简单的方法,将下载的deb包拷贝到/var/cache/apt/archives目录下,然后在执行一下命令同样可以安装。

sudo apt-get install ntp

安装完毕以后我们可以查看服务是否启动,执行以下命令:

复制代码
enadmin@ubuntu-server:~/ftp/ntp_ubuntu$ service --status-all
 [ ? ]  acpid
 [ ? ]  apache
 [ + ]  apache2
 [ - ]  apparmor
 [ ? ]  apport
 [ ? ]  atd
 [ - ]  bootlogd
 [ ? ]  console-setup
 [ ? ]  cron
 [ ? ]  dbus
 [ ? ]  dmesg
 [ ? ]  dns-clean
 [ ? ]  friendly-recovery
 [ - ]  grub-common
 [ ? ]  hostname
 [ ? ]  hwclock
 [ ? ]  hwclock-save
 [ ? ]  irqbalance
 [ ? ]  killprocs
 [ ? ]  module-init-tools
 [ ? ]  mysql
 [ + ]  nagios
 [ + ]  nagios-bak
 [ ? ]  network-interface
 [ ? ]  network-interface-container
 [ ? ]  network-interface-security
 [ ? ]  networking
 [ + ]  ntp
 [ ? ]  ondemand
复制代码

可以看到ntp服务已经启动([+]表示已经启动。)

4配置文件/etc/ntp.conf解析

sudo vim /etc/ntp.conf

这个文件是配置ntp最重要的一个文件,也是ntp配置过程中的唯一难点,之前一直不知道这个配置问价当中配置选项的含义,所以一直无从下手。

4.1配置上层server

利用 server 关键字设定上层 NTP 服务器,上层 NTP 服务器的设定方式为:

server [IP or hostname] [prefer]

在 server 后端可以接 IP 或主机名,个人比较喜欢使用 IP 来设定, perfer 表示『优先使用』的服务器

4.2利用 restrict 来管理权限控制

在 ntp.conf 档案内可以利用『 restrict 』来控管权限,这个参数的设定方式为:

restrict [IP] mask [netmask_IP] [parameter]

其中 parameter 的参数主要有底下这些:

  • ignore: 拒绝所有类型的 NTP 联机;
  • nomodify: 客户端不能使用 ntpc 与 ntpq 这两支程序来修改服务器的时间参数, 但客户端仍可透过这部主机来进行网络校时的;
  • noquery: 客户端不能够使用 ntpq, ntpc 等指令来查询时间服务器,等于不提供 NTP 的网络校时
  • notrap: 不提供 trap 这个远程事件登录 (remote event logging) 的功能。
  • notrust: 拒绝没有认证的客户端。

如果你没有在 parameter 的地方加上任何参数的话,这表示『该 IP 或网段不受任何限制。一般来说,我们可以先关闭 NTP 的权限,然后再一个一个的启用允许登入的网段。

ntp server配置

ntp server的需求:

  1. 我的上层 NTP 服务器共只有防火墙的ntp server:10.138.16.251。
  2. 不对Internet 提供服务,仅允许来自内部网域10.138.0.0/255.255.0.0的查询而已;
  3. 侦测一些 BIOS 时钟与 Linux 系统时间的差异并写入 /var/lib/ntp/drift 档案当中。
复制代码
# /etc/ntp.conf, configuration for ntpd; see ntp.conf(5) for help

driftfile /var/lib/ntp/ntp.drift #草稿文件

#日志文件
statsdir /var/log/ntpstats/

statistics loopstats peerstats clockstats
filegen loopstats file loopstats type day enable
filegen peerstats file peerstats type day enable
filegen clockstats file clockstats type day enable

#上层ntp server
server 10.138.16.251 prefer 
#让NTP Server和其自身保持同步,如果在/etc/ntp.conf中定义的server都不可用时,将使用local时间作为ntp服务提供给ntp客户端
server 127.127.1.0
fudge 127.127.1.0 stratum 5

#不允许来自公网上ipv4和ipv6客户端的访问
restrict -4 default kod notrap nomodify nopeer noquery 
restrict -6 default kod notrap nomodify nopeer noquery

#运行上层ntp server的所有权限
restrict 10.138.16.251

#允许这个网段的对时请求
restrict 10.138.0.0 mask 255.255.0.0 nomodify 

# Local users may interrogate the ntp server more closely.
restrict 127.0.0.1
restrict ::1
复制代码

使用 ntpd渐进式更新时间

ntp又是服务器,又是客户端,只需要通过配置即可。上面我们将10.138.16.232配置成了ntp服务器,下面这台服务器我们以10.138.16.232作为ntp服务器配置client。

复制代码
# /etc/ntp.conf, configuration for ntpd; see ntp.conf(5) for help

driftfile /var/lib/ntp/ntp.drift


# Enable this if you want statistics to be logged.
#statsdir /var/log/ntpstats/

statistics loopstats peerstats clockstats
filegen loopstats file loopstats type day enable
filegen peerstats file peerstats type day enable
filegen clockstats file clockstats type day enable

# Specify one or more NTP servers.

# Use servers from the NTP Pool Project. Approved by Ubuntu Technical Board
# on 2011-02-08 (LP: #104525). See http://www.pool.ntp.org/join.html for
# more information.
#server 0.ubuntu.pool.ntp.org
#server 1.ubuntu.pool.ntp.org
#server 2.ubuntu.pool.ntp.org
#server 3.ubuntu.pool.ntp.org

# Use Ubuntu's ntp server as a fallback.
#server ntp.ubuntu.com

server 10.138.16.251 prefer
server 127.127.1.0
fudge 127.127.1.0 stratum 10



# Access control configuration; see /usr/share/doc/ntp-doc/html/accopt.html for
# details.  The web page <http://support.ntp.org/bin/view/Support/AccessRestrictions>
# might also be helpful.
#
# Note that "restrict" applies to both servers and clients, so a configuration
# that might be intended to block requests from certain clients could also end
# up blocking replies from your own upstream servers.

# By default, exchange time with everybody, but don't allow configuration.
restrict -4 default kod notrap nomodify nopeer noquery
restrict -6 default kod notrap nomodify nopeer noquery

restrict 10.138.16.251
restrict 10.138.0.0 mask 255.255.0.0 nomodify


# Local users may interrogate the ntp server more closely.
restrict 127.0.0.1
restrict ::1

# Clients from this (example!) subnet have unlimited access, but only if
# cryptographically authenticated.
#restrict 192.168.123.0 mask 255.255.255.0 notrust


# If you want to provide time to your local subnet, change the next line.
# (Again, the address is an example only.)
#broadcast 192.168.123.255

# If you want to listen to time broadcasts on your local subnet, de-comment the
# next lines.  Please do this only if you trust everybody on the network!
#disable auth
#broadcastclient
复制代码

使用ntpdate更新时间

 在客户端只需要运行一下命令接口进行对时操作

sudo ntpdate 10.138.16.232

ntpdate命令是要在ntp进程退出的情况下执行,如果执行上述命令出错,那么请先关闭ntp进程,具体操作日下所示:

复制代码
root@BJCGNMON01:/etc/init.d# ntpdate 10.138.16.232
27 Feb 14:59:32 ntpdate[18546]: the NTP socket is in use, exiting
root@BJCGNMON01:/etc/init.d# service ntp stop
 * Stopping NTP server ntpd
   ...done.
root@BJCGNMON01:/etc/init.d# ntpdate 10.138.16.232
27 Feb 14:58:13 ntpdate[18557]: step time server 10.138.16.232 offset -98.402560 sec
复制代码

如果是windows操作系统,按照参考文献1进行修改。

 

 本文转自xwdreamer博客园博客,原文链接:http://www.cnblogs.com/xwdreamer/p/3448773.html,如需转载请自行联系原作者

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Ubuntu系统 安装与配置 常见异常与解决办法
解决办法:以管理员方式打开cmd命令,输入netsh winsock reset(这个命令是重置网络规范,黑屏的原因很可能就是VMware软件跟本地网络规范有冲突),回车之后提示成功重置winsock目录,您必须重新启动计算机才能重新完成配置。重启后打开即可。
0 0
ubuntu 安装 todesk 远程桌面
需要先安装 ubuntu-desktop 桌面: sudo apt install -y ubuntu-desktop
0 0
Ubuntu 18.04.6无root权限安装cmake3.13.5
Ubuntu 18.04.6无root权限安装cmake3.13.5
0 0
大数据基础系列 4:伪分布式 Hadoop 在 Ubuntu 上的安装流程完整步骤及易错点分析
大数据基础系列 4:伪分布式 Hadoop 在 Ubuntu 上的安装流程完整步骤及易错点分析
0 0
数据挖掘基础学习一:VMware虚拟机Ubuntu上安装Python和IPython Notebook(Jupyter Notebook)完整步骤及需要注意的问题(以ubuntu-18.04.3为例)
数据挖掘基础学习一:VMware虚拟机Ubuntu上安装Python和IPython Notebook(Jupyter Notebook)完整步骤及需要注意的问题(以ubuntu-18.04.3为例)
0 0
大数据入门系列 3:全网最全,Ubuntu 安装 VMware Tools 完整步骤及需要注意的问题
大数据入门系列 3:全网最全,Ubuntu 安装 VMware Tools 完整步骤及需要注意的问题
0 0
在Ubuntu中安装Samba文件服务
Samba是一个能让Linux系统应用Microsoft网络通讯协议的软件,而SMB是Server Message Block的缩写,即为服务器消息块 ,SMB主要是作为Microsoft的网络通讯协议,后来Samba将SMB通信协议应用到了Linux系统上,就形成了现在的Samba软件。后来微软又把 SMB 改名为 CIFS(Common Internet File System),即公共 Internet 文件系统,并且加入了许多新的功能,这样一来,使得Samba具有了更强大的功能。
0 0
【Linux】【开发环境】【RHEL】开发环境搭建系列之八——Win10下安装ubuntu双系统
【Linux】【开发环境】【RHEL】开发环境搭建系列之八——Win10下安装ubuntu双系统
0 0
+关注
文章
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载