RHCE笔记-时间服务器搭建
一.chrony命令
chrony
的主要组成部分
- chronyd:这是
chrony
的守护进程,负责与时间源同步并调整系统时钟。 - chronyc:这是一个命令行工具,允许用户与
chronyd
进行交互,以查看状态和配置时间同步。
主要功能
- 快速同步:
chrony
可以快速地将系统时间同步到网络时间源,尤其是在系统时间与标准时间相差较大时。 - 对不稳定网络的支持:在网络连接不稳定或不定期的情况下,
chrony
仍能保持良好的时间精度。 - 本地时间源:支持在没有网络连接时使用本地硬件时钟或其他设备作为时间源。
- 多种时间源:可以从多个时间源获取时间,提供冗余和准确性。
- 统计功能:提供详细的统计信息和日志,方便用户监控时间同步状态。
安装
-
在 CentOS/RHEL 上:
sudo yum install chrony
配置
chrony
的配置文件通常位于 /etc/chrony/chrony.conf
。下面是一些常见的配置选项:
-
指定 NTP 服务器:
server ntp.example.com iburst
这里
ntp.example.com
是 NTP 服务器的地址,iburst
参数表示在启动时进行快速同步。 -
使用本地时间源:
server 127.127.1.0 fudge 127.127.1.0 stratum 10
这将本地时钟设置为一个时间源,
stratum
表示其层级,值越小优先级越高。 -
限制访问:
allow 192.168.1.0/24 deny all
这将允许来自 192.168.1.0/24 网络的主机访问
chronyd
,并拒绝所有其他访问。 -
配置更新频率:
minpoll 4 maxpoll 10
这将设置 NTP 服务器的最小和最大轮询间隔,单位为 2 的幂次(即 2^4 到 2^10 秒)。
启动和管理
安装完成后,您可以使用以下命令启动和管理 chronyd
:
-
启动
chronyd
:sudo systemctl start chronyd
-
设置开机自启:
sudo systemctl enable chronyd
-
检查服务状态:
sudo systemctl status chronyd
-
使用
chronyc
进行状态查询:chronyc tracking
此命令将显示当前的时间同步状态,包括系统时间、NTP 服务器的时间和延迟等信息。
常用 chronyc
命令
-
查看当前同步状态:
chronyc tracking
-
列出已配置的 NTP 服务器:
chronyc sources
-
显示统计信息:
chronyc sourcestats
-
手动更新系统时间:
chronyc makestep
当系统时间与 NTP 服务器的时间相差较大时,可以使用此命令强制
chronyd
调整系统时间。
日志与监控
chrony
会将日志记录在 /var/log/chrony
中,可以通过查看这些日志来监控时间同步情况。可以使用以下命令查看日志:
sudo tail -f /var/log/chrony/chronyd.log
二.客户端配置
1.查看当前时区
[root@client ~]# date
2024年 10月 17日 星期四 20:42:26 CST
CST代表中国标准时间,UTC是世界标准时间
2.修改当前时间
[root@client ~]# date -s "2024-3-21"
2024年 03月 21日 星期四 00:00:00 CST
3.配置使用的服务器
[root@client ~]# vim /etc/chrony.conf
pool ntp.aliyun.com iburst
重启服务快速生效
[root@client ~]# systemctl restart chronyd
查看生效的时间服务器
[root@client ~]# chronyc sources
MS Name/IP address Stratum Poll Reach LastRx Last sample
===============================================================================
^? 192.168.23.140 0 7 0 - +0ns[ +0ns] +/- 0ns
字段含义
在执行 chronyc sources
命令后,输出中会包含多个字段,其中最关键的是状态字段,表示每个 NTP 源的状态。以下是一些常见的状态符号及其含义:
-
*
(asterisk):- 含义:当前选择的时间源,Chrony 正在使用该源进行时间同步。
- 示例:
* 192.168.1.1 .GPS. 1 64 377 0.0 0.004 0.002
-
+
(plus sign):- 含义:可接受的时间源,Chrony 会考虑该源,但当前未选择。
- 示例:
+ 192.168.1.2 .PPS. 1 64 377 0.0 0.001 0.001
-
-
(minus sign):- 含义:不可接受的时间源,Chrony 不会考虑该源进行同步。
- 示例:
- 192.168.1.3 .INIT. 1 64 377 0.0 0.003 0.003
-
#
(hash sign):- 含义:该源是一个本地源或本地时钟,Chrony 将其视为本地时间源。
- 示例:
# 127.0.0.1 .LOCL. 1 64 377 0.0 0.000 0.000
-
x
(lowercase x):- 含义:该源处于不可用状态,Chrony 检测到此源的时间不可靠。
- 示例:
x 192.168.1.4 .SYNC. 1 64 377 0.0 0.005 0.005
-
~
(tilde):- 含义:该源的时间不准确,Chrony 可能会暂时忽略该源。
- 示例:
~ 192.168.1.5 .SYN. 1 64 377 0.0 0.006 0.006
三.服务器端配置
步骤1:
将client端的chrony.conf中使用的时间服务器修改为搭建的时间服务器域名或者ip地址
[root@client ~]# vim /etc/chrony.conf
步骤2:
确保地址或域名可达 ,可使用ping命令
[root@client ~]# ping ntp.timeserver.com
或编辑/etc/hosts文件确保域名对应正确的ip
[root@client ~]# vim /etc/hosts
关闭cilent端与server防火墙
[root@client ~]# systemctl stop firewalld
rhel9.1还是使用firewalld管理防火墙,在ubuntu20.4及以后版本用ufw管理防火墙
或测试其端口是否可以连接上
[root@client ~]# nc -z -v -u hostname part
查看当前开放端口,这里使用grep过滤时间服务器使用的udp123端口
[root@client ~]# ss -tuln | grep 123
在编辑过配置文件后,重启后才会生效
[root@client ~]# systemctl restart chronyd
步骤3:
编辑服务器端的chrony.conf配置文件
[root@server ~]# vim /etc/chrony.conf
找到下列两行,翻译翻译上面的提示( 允许 NTP 客户端从本地网络访问),去掉注释开启服务
# Allow NTP client access from local network.
#allow 192.168.0.0/16
然后重启chrony服务,关闭防火墙,测试端口开放即可
原文地址:https://blog.csdn.net/m0_74848570/article/details/143028015
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!