《Mysql必知必会》读书笔记 jar包名中自动添加git commit id PyCharm教学视频学习笔记 《SQL基础教程》简要总结 《设计师要懂心理学》读书笔记 MySQL与MariaDB学习笔记 WDT (Folly) 安装指南 -- CentOS 7 [solved]Page build failed(Jekyll) 数据包过滤及分析实例 tshark tcpdump Scala Tour 学习总结 “Docker容器和容器云”读书笔记(1) “Docker Practice”读书笔记 “图解基础设施设计模式”小结 “图解服务器端网络架构”小结 Python网络安全编程 数据包解析笔记 华为挑战赛(1) DDoS攻击防御与云服务 基于网络回溯分析技术的异常行为分析 “Linux程序设计”小结(进程间通信) C语言编程规范(华为软件精英挑战赛) 2017阿里在线编程题--单源最短路径问题 2017年阿里在线编程题-- 数串分组 Uinx/Linux上的帮助查询命令 你懂C,所以C++不在话下 一篇特别长的总结(C专家编程) 程序员面试金典--笔记(精华篇) C陷阱与缺陷--笔记 半小时搭建电子商务网站--opencart linux网络知识和工具(持续更新) 网卡参数查询及设置工具ethtool 高性能流量生成工具trafgen(DDoS模拟) Linux流量控制工具TC 流量控制工具TC详细说明 tcpdump过滤数据包,结果不对? Lecture 网络攻击与防御技术笔记 gotgit-git权威指南 高效使用MacOS所要知道的 shell内置字符串处理 配置ntp(知其所以然) 360黑客攻防技术分享会--记录 中毒U盘恢复--快捷键病毒 Tor--anonymity network介绍(PPT) IBM bluemix 再读《Linux Shell脚本攻略》 linux shell 学习摘记(9) linux shell 学习摘记(8) linux shell 学习摘记(7) linux shell 学习摘记(6) linux shell 学习摘记(5) linux shell 学习摘记(4) linux shell 学习摘记(3) linux shell 学习摘记(2) linux shell 学习摘记(1) firefox vim 插件 vimperator A Byte of Vim 笔记 windows注册表小知识 安全测试工具篇(开源&商业) 安全及性能测试工具(网站收集) 性能测试工具 屡试不爽的“3个”iPad使用技巧 Shell Shortcuts(和Tab键一样实用) vim--自动添加jekyll post信息头 vim 自动给文件添加头部信息 GitHub Tips (很实用,值得收藏) Linux路由、防火墙、NAT命令

配置ntp(知其所以然)

2016年11月20日

最近在一家公司出差,被人问及”如何自动实现服务器间的时间同步”,对方百度了几篇教程,但并没有成功,重点是教程反而使得当事人对ntp.conf下的配置更加迷惑!自己写了篇简单的博文,说明下…

场景说明

  1. 两台业务服务器的系统时间要确保同步(10.10.88.171, 10.10.88.172)
  2. IDC机房内有一台ntp服务器(10.10.88.123),但有时候会连接不上
  3. 业务服务器不能连外网,但有本地yum源
  4. 服务器操作系统以CentOS 7为例

配置说明

  1. 将10.10.88.171作为一个本地业务ntp服务器,在不能和10.10.88.123服务器同步的时候,使用本机自己的系统时间并提供ntp服务
  2. 10.10.88.172 作为ntp客户端,实时和10.10.88.171保持时间同步

NTP Server 配置

1. 安装软件

yum install ntp

2. 修改ntp.conf中的restrict值

配置文件/etc/ntp.conf

# Permit time synchronization with our time source, but do not
# permit the source to query or modify the service on this system.
restrict default nomodify notrap nopeer noquery

第一行restrict允许其他客户端请求你的时间服务器,保持默认即可(默认是未注释的)!
详细参数说明如下:

  • noquery 禁止从该ntpd中dump状态数据
  • notrap 禁止控制消息trap该服务器
  • nomodify 禁止所有企图修改该服务器的ntpq请求
  • nopeer 禁止所有企图建立peer association的数据包

3. 仅允许特定网段客户端与ntp服务器进行同步

  • ntp.conf中添加restrict 10.10.88.0 mask 255.255.255.0 nomodify notrap
  • 如果本地主机需要查询和修改权限,再添加restrict 127.0.0.1 –> 建议添加,若有保持默认即可!
  • 由于服务器不能联网,建议注释掉部分内容并添加server 10.10.88.123 iburst,如下
    #server 0.centos.pool.ntp.org iburst
    #server 1.centos.pool.ntp.org iburst
    #server 2.centos.pool.ntp.org iburst
    #server 3.centos.pool.ntp.org iburst
    server 10.10.88.123 iburst
    

4. 将本地时间作为备份

当ntp服务器(10.10.88.171)不能连接到上级ntp服务器(10.10.88.123)时, 171以本机系统时间提供时间同步服务。

在ntp.conf中添加如下内容,注意是127.127.1.0!!!

server 127.127.1.0 # 本机时间
fudge 127.127.1.0 stratum 10

第二行的stratum表示的是时间同步的一个层级关系,stratum-1 server充当重要的网络时间标准,stratum-2 server 请求 startum-1 server 完成时间同步… 类推,startum-n server 请求 startum-n-1 server并完成时间同步

5. 启动ntp服务器

systemctl start ntpd 启动ntpd服务
systemctl enable ntpd 设置开机启动

6. 验证ntp

在未启动ntpd服务的Client上(10.10.88.172),ntpdate -u 10.10.88.171 进行验证!
注:如果Client和Server时间差很多,请先进行手动设置Client时间再进行ntpdate同步(要不然,可能会同步失败)

NTP Client 配置

  1. 安装ntpd, yum install ntpd
  2. 编辑/etc/ntp.conf配置文件
    • 注释掉以下内容(因为服务器不能连外网)
      #server 0.centos.pool.ntp.org iburst
      #server 1.centos.pool.ntp.org iburst
      #server 2.centos.pool.ntp.org iburst
      #server 3.centos.pool.ntp.org iburst
      
    • 添加server 10.10.88.171 prefer
  3. 启动ntp服务
    systemstart ntpd 启动ntpd服务 system enable ntpd` 设置开机启动(用于实时更新)
  4. 验证
    终端输入ntpstat

知识共享许可协议
SWF's Hacking Dreamonephone 创作,采用 知识共享 署名-非商业性使用 4.0 国际 许可协议进行许可。
© 2011-2018. All rights reserved by onephone. Powerd by Jekyll.