zoukankan      html  css  js  c++  java
  • 时间同步服务器NTP搭建

    NTP服务器

           NTP(Network Time Protocol)【网络时间协议】,它是用来同步网络中各个计算机的时间的协议,它可以提供高精准度的时间校正(LAN上与标准间差小于1毫秒,WAN上几十毫秒),且可介由加密确认的方式来防止恶毒的协议攻击。NTP服务的端口是123,使用的是UDP协议,所以NTP服务器的防火墙必须对外开放UDP 123这个端口。

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

    特征介绍

           NTP提供准确时间,首先要有准确的时间来源,这一时间应该是国际标准时间UTC。 NTP获得UTC的时间来源可以是原子钟、天文台、卫星,也可以从Internet上获取。这样就有了准确而可靠的时间源。时间按NTP服务器的等级传播。按照离外部UTC 源的远近将所有服务器归入不同的Stratum(层)中。Stratum-1在顶层,有外部UTC接入,而Stratum-2则从Stratum-1获取时间,Stratum-3从Stratum-2获取时间,以此类推,但Stratum层的总数限制在15以内。所有这些服务器在逻辑上形成阶梯式的架构相互连接,而Stratum-1的时间服务器是整个系统的基础。
           计算机主机一般同多个时间服务器连接, 利用统计学的算法过滤来自不同服务器的时间,以选择最佳的路径和来源来校正主机时间。即使主机在长时间无法与某一时间服务器相联系的情况下,NTP服务依然有效运转。

    NTP的层次stratum

           本地设备的时间和远程时间服务器即使能够同步,也会存在毫秒级的误差,如果自己和远程时间服务器同步,那么别人再和自己同步,就意味着别人的时间误差可能更大。在这里,时间的精准度就会有高低,Cisco设备的NTP把这样的精准度高低称为stratum,如果stratum值越大,就表示精准度越差,stratum值越小表示精准度就越好。比如远程一台时间服务器的stratum是2,本地设备和它同步后,自己的stratum就是3,精准度就差了一些,如果这时别的设备再和自己同步,那么它得到的stratum就是4,精准度就意味着更差,而作为局域网的time service provider,通常将stratum设置为10 (Stratum 10 is conventional for unsynchronized local clocks; it is high enough that nobody is likely to mistake it for a desirable clock to synchronize with.)。

    时区介绍

    GMT: 格林威治时间,(旧译格林尼治平均时间或格林威治标准时间;英语:Greenwich Mean Time,GMT)是指位于英国伦敦郊区的皇家格林尼治天文台的标准时间,因为本初子午线被定义在通过那里的经线。
    UTC:标准时间,又称世界标准时间或世界协调时间,简称UTC,从英文“Coordinated Universal Time”/法文“Temps Universel Cordonné”而来。协调世界时是以原子时秒长为基础,在时刻上尽量接近于世界时的一种时间计量系统。
    ISO: 标准时间
    CST:北京时间,又名中国标准时间,是中国的标准时间。在时区划分上,属东八区,比协调世界时早8小时,记为UTC+8,与中华民国国家标准时间(旧称“中原标准时间”)、香港时间和澳门时间和相同。當格林威治時間為凌晨0:00時,中國標準時間剛好為上午8:00。

    时区关系

    CET=UTC/GMT + 1小时
    CST=UTC/GMT +8 小时
    CST=CET+9
    例如: Thursday 03/17/2011 between 0:30am and 6:00am CET (UTC/GMT +1 hour)
    CET=03/17/2011 0:30am and 6:00am
    CST=03/17/2011 9:30am and 15:00am
    UTC/GMT =03/17/2011 1:30am and 7:00am

    NTP服务器搭建

    服务器 ip 10.10.10.11/24
    客户机 ip 10.10.10.0/24

    1、服务端配置
    [root@NTP ~]# yum -y install ntp
    [root@NTP ~]# vim /etc/ntp.conf
    restrict 10.10.10.0 mask 255.255.255.0 nomodify notrap
    server 127.127.1.0
    fudge 127.127.1.0 stratum 10
    ![](https://img2018.cnblogs.com/blog/1599886/201906/1599886-20190616111548318-665838783.png)
    [root@NTP ~]# date -s 20160202			修改时间
    [root@NTP ~]# ntpdate cn.pool.ntp.org		或者同步网络时间
    [root@NTP ~]# /etc/init.d/ntpd restart		启动服务CentOS 6
    [root@NTP ~]# systemctl restart ntpd		启动服务CentOS 7
    
    2、客户机配置
    [root@Test ~]# yum -y install ntpdate
    同步时间,指定ip时间同步服务器
    [root@Test ~]# ntpdate -u 10.10.10.11		
    客户机写入定时任务,自动每分钟同步一次时间
    [root@Test ~]# echo '* * * * * root /usr/sbin/ntpdate -u 10.10.10.11 &>/dev/null' >> /etc/crontab
    

    配置文件

        -rw-r--r-- 1 root root 2000 9月  23 2017 /etc/ntp.conf
    
    #在与上级时间服务器联系时所花费的时间,记录在driftfile参数后面的文件内
    driftfile /var/lib/ntp/drift 
    #我们对于默认的客户端拒绝所有的操作
    restrict default kod nomodify notrap nopeer noquery  
    restrict -6 default kod nomodify notrap nopeer noquery
    #开启内部递归网络接口lo 即允许本机地址一切的操作
    restrict 127.0.0.1  
    restrict -6 ::1
    #允许局域网内所有客户端连接到这台服务器同步时间.但是拒绝让他们修改服务器上的时间
    restrict 10.10.10.0 mask 255.255.255.0 nomodify notrap
    #指明局域网中作为NTP服务器的IP
    service 10.10.10.11
    #互联网上的三个ntp服务器
    server 0.rhel.pool.ntp.org   
    server 1.rhel.pool.ntp.org
    server 2.rhel.pool.ntp.org
    #当服务器与公用的时间服务器失去联系时(连不上网),以局域网的时间服务器为客户端提供时间同步服务 
    server  127.127.1.0    
    fudge   127.127.1.0 stratum 10
    *****restrict参数*****
    #kod 使用kod技术防范“kiss of death”攻击
    #ignore 拒绝任何NTP连接
    #nomodify 用户端不能使用ntpc,ntpq修改时间服务器参数,但是可以进行网络校时
    #noquery 用户端不能使用ntpc,ntpq查询时间服务器参数,不可以进行网络校时
    #notrap 不提供远程日志功能
    #notrust 拒绝没有认证的客户端
    

    注:

           对于centos7系统有默认的时间服务chronyd,他会默认开机自启,系统就会略过ntpd的开机自启,就会出现ntpd虽然加入开机自启,但是服务并未启动,此时关闭chronyd的开机自启即可

    [root@NTP ~]#  systemctl disable chronyd
    


    作者:Outsrkem
    出处:https://www.cnblogs.com/outsrkem/
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

  • 相关阅读:
    词根——rect
    6
    7
    5
    3
    4
    2
    1
    DBUtils
    Websocket
  • 原文地址:https://www.cnblogs.com/outsrkem/p/10829901.html
Copyright © 2011-2022 走看看