Linux下配置NTP时间服务器

 

Linux下配置NTP服务器 centos

1、前言: 安全

Network Time ProtocolNTP)是用来使计算机时间同步化的一种协议,它可使计算机对其服务器或时钟源(如石英钟,GPS等等)作同步化,它能够提供高精准度的时间校订(LAN上与标准间差小于1毫秒,WAN上几十毫秒),且可介由加密确认的方式来防止恶毒的协议攻击。 服务器

中国大概能用的NTP服务器地址  http://www.pool.ntp.org NTP的官方网站,在这上面咱们能够找到离咱们城市最近的NTP Server. NTP建议咱们为了保障时间的准确性,最少找两个个NTP Server 网络

    默认NTP服务端口: ide

    UDP/123 测试

    本文配置的NTP工做模式: 网站

使用client/server方式,该方式适用于一台时间服务器接收上层时间服务器的时间信息,并提供时间信息给下层用户。 加密

2、配置方法: spa

设置时区 rest

根据不一样系统有所不一样,centos里面只有上海,设置以下:

cp /usr/share/zoneinfo/Asia/Chongqing /etc/localtime  #设置时区为重庆

 

1ntp服务安装

NTP服务在CentOS6.x中式默认安装的软件包,可用rpm -qa |grep ntp检查是否安装,若是未安装可以使用以下命令安装与删除NTP服务器软件包

# rpm -qa|grep ntp

ntpdate-4.2.6p5-1.el6.centos.x86_64

ntp-4.2.6p5-1.el6.centos.x86_64

确认是否安装NTP软件包,若是没有请使用

#yum -y install ntp

2ntp服务配置

   ntp服务安装完成后,须要修改ntp服务配置文件/etc/ntp.conf

2.1 ntp服务的启动、暂停

    NTP属于system V服务,其启动、暂停相关命令以下:

    #启动

    service ntpd start

    #中止

    Service ntpd stop

    #从新加载

    service ntpd reload

    #查看当前启动状态

    service ntpd status

2.2 ntp服务自动加载

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

    #在运行级别2345上设置为自动运行

   chkconfig ntpd on

    #在运行级别2345上设置为不自动运行

    chkconfig ntpd off

    #在运行级别35上设置为自动运行

    chkconfig ntpd --level 35 on

    #在运行级别35上设置为不自动运行

chkconfig ntpd --level 35 off

2.3 配置信息

运行一个NTP Server不须要占用不少的系统资源,因此也不用专门配置独立的服务器,就能够给许多client提供时间同步服务, 可是一些基本的安全设置仍是颇有必要的

那么这里一个很简单的思路就是第一咱们只容许局域网内一部分的用户链接到咱们的服务器. 第二个就是这些client不能修改咱们服务器上的时间。

关于权限设定部分 

权限的设定主要以 restrict 这个参数来设定,主要的语法为: 

restrict IP地址 mask 子网掩码 参数 

其中 IP 能够是IP地址,也能够是 default default 就是指全部的IP 

参数有如下几个: 

ignore :关闭全部的 NTP 联机服务 

nomodify:客户端不能更改服务端的时间参数,可是客户端能够经过服务端进行网络校时。 

notrust :客户端除非经过认证,不然该客户端来源将被视为不信任子网 

noquery :不提供客户端的时间查询 

注意:若是参数没有设定,那就表示该 IP (或子网)没有任何限制!

/etc/ntp.conf文件中咱们能够用restrict关键字来配置上面的要求

# cat /etc/ntp.conf      //查看ntp.conf配置文件以下:

1)  修改/etc/ntp.conf文件

系统默认去掉#号配置/etc/ntp.conf以下:

driftfile /var/lib/ntp/drift

restrict default kod nomodify notrap nopeer noquery

restrict -6 default kod nomodify notrap nopeer noquery

restrict 127.0.0.1 

restrict -6 ::1

server 202.120.2.101 prefer

includefile /etc/ntp/crypto/pw

keys /etc/ntp/keys

自行设置权限

restrict default kod nomodify notrap nopeer noquery //首先咱们对于默认的client拒绝全部的操做

restrict default ignore //设置默认策略为不容许任何主机进行时间同步

restrict 127.0.0.1 //而后容许本机地址一切的操做

restrict 192.168.108.0 mask 255.255.255.0 nomodify  //最后咱们容许局域网内全部client链接到这台服务器同步时间.可是拒绝让他们修改服务器上的时间

restrict 0.0.0.0 mask 0.0.0.0 nomodify notrap //容许任何主机跟进行时间同步

restrict 202.120.2.101 //容许202.120.2.101主机跟进行时间同步

ntp.conf设置例子

#设置访问权限

driftfile /etc/ntp/drift //记录上次的NTP server与上层NTP server联接所花费的时间

restrict 192.168.108.31 mask 255.255.255.0 nomodify

restrict 192.168.108.32 mask 255.255.255.0 nomodify

restrict 192.168.108.33 mask 255.255.255.0 nomodify

restrict 192.168.108.36 mask 255.255.255.0 nomodify

#Internet上的时间服务器做为内部标准时间来源

restrict 202.112.31.197 nomodify notrap noquery

server dns.sjtu.edu.cn prefer //设置此服务器同上层服务器作时间同步的IP地址,prefer意味着首选IP地址

server 202.112.31.197 //设置上层服务器作同步ip地址

server 127.0.0.1 local clock //local地址

fudge 127.0.0.1 stratum 10 //这行是时间服务器的层次。设为0则为顶级,若是要向别的NTP服务器更新时间,请不要把它设为0

keys /etc/ntp/keys

#指定NTP服务器日志文件

设置ntp日志的path

statsdir /var/log

logfile /var/log/ntp.log

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

    202.112.31.197

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

    #容许BIOS与系统时间同步,也能够经过hwclock -w 命令

   SYNC_HWCLOCK=yes

4)在配置完成并从新启动服务后,可经过ntpstat 命令显示本机上一次与上层ntp服务器同步时间的状况,也可使用ntpq -p 查看本机与上层ntp服务器通讯状况

2.4 图形界面配置NTP

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

2.5 客户端访问

    1Linux客户端可经过图形界面进行配置,也能够经过ntpdate命令当即与NTP服务器及你行时间校对,或者配置ntp.conf

    ntpdate 192.168.0.10

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

    Windows默认7天自动更新一次,可经过修改注册表HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\W32Time\TimeProviders\NtpClient\SpecialPollInterval  默认单位为妙,修改后从新启动便可生效

----管理命令

 ntpq p     #查看本机和上层服务器的时间同步结果

 ntptrace     #能够用來追踪某台时间服务器的时间对应关系

 ntpdate IP   #客户端要和NTP server进行时钟同步。

 /var/log/ntp/ntp.log  #查看ntp日志

 ntpstat      # 也能够查看一些同步状态

 watch ntpq -p #监测服务器的运行查NTP

# watch ntpq -p //监测服务器的运行查NTP

Every 2.0s: ntpq -p                                     Sun Dec  2 00:05:31 2012

     remote           refid      st t when poll reach   delay   offset  jitter

dns.sjtu.edu.cn 202.112.31.197   3 u    4   64   77   14.668  1907019 8528448

 dns2.synet.edu. .INIT.          16 u    -   64    0    0.000    0.000   0.000

如今我就来解释一下其中的含义

  remote: 它指的就是本地机器所链接的远程NTP服务器

  refid: 它指的是给远程服务器(e.g. 193.60.199.75)提供时间同步的服务器

  st: 远程服务器的层级别(stratum. 因为NTP是层型结构,有顶端的服务器,多层的Relay Server再到客户端. 因此服务器从高到低级别能够设定为1-16. 为了减缓负荷和网络堵塞,原则上应该避免直接链接到级别为1的服务器的.

   t: 这个.....我也不知道啥意思^_^

   when: 我我的把它理解为一个计时器用来告诉咱们还有多久本地机器就须要和远程服务器进行一次时间同步

   poll: 本地机和远程服务器多少时间进行一次同步(单位为秒). 在一开始运行NTP的时候这个poll值会比较小,那样和服务器同步的频率也就增长了,能够尽快调整到正确的时间范围.以后poll值会逐渐增大,同步的频率也就会相应减少

  reach: 这是一个八进制值,用来测试可否和服务器链接.每成功链接一次它的值就会增长

  delay: 从本地机发送同步要求到服务器的round trip time

  offset: 这是个最关键的值, 它告诉了咱们本地机和服务器之间的时间差异. offset越接近于0,咱们就和服务器的时间越接近

     jitter: 这是一个用来作统计的值. 它统计了在特定个连续的链接数里offset的分布状况. 简单地说这个数值的绝对值越小咱们和服务器的时间就越精确

4.配置客户端

1.LINUX客户端: (局域网内对时间有要求的机器)

 echo “00 */1 * * * root /usr/sbin/ntpdate 192.168.200.240;/sbin/hwclock -w”>>/etc/crontab

 每小时同NTP server进行一次时钟同步,并写入本机BIOS

相关文章
相关标签/搜索