首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >时间同步无法与启用NTS同步

时间同步无法与启用NTS同步
EN

Unix & Linux用户
提问于 2022-08-07 20:07:22
回答 1查看 784关注 0票数 0

我已经在两台Centos 9流机器上配置了时间服务器和客户机。没有NTS,一切都很好,时间是同步的。但是,当我启用NTS并将服务器配置为使用证书时,同步失败。知道问题可能是什么吗?下面是服务器和客户端配置:

服务器:

代码语言:javascript
复制
[root@server1 ~]# cat /etc/chrony.conf
pool 2.centos.pool.ntp.org iburst
sourcedir /run/chrony-dhcp
driftfile /var/lib/chrony/drift
makestep 1.0 3
rtcsync
allow 192.168.11.0/24
keyfile /etc/chrony.keys
ntsdumpdir /var/lib/chrony
leapsectz right/UTC
logdir /var/log/chrony

ntsserverkey /etc/certs/chrony.key
ntsservercert /etc/certs/chrony.crt
代码语言:javascript
复制
[root@server1 ~]# cat /etc/chrony.keys
1 MD5 AVeryLongAndRandomPassword

客户端:

代码语言:javascript
复制
[root@client1 ~]# cat /etc/chrony.conf
sourcedir /run/chrony-dhcp
driftfile /var/lib/chrony/drift
makestep 1.0 3
rtcsync
keyfile /etc/chrony.keys
ntsdumpdir /var/lib/chrony
leapsectz right/UTC
logdir /var/log/chrony
server server1 iburst nts
代码语言:javascript
复制
[root@client1 ~]# cat /etc/chrony.keys
1 MD5 AVeryLongAndRandomPassword

同步测试:

代码语言:javascript
复制
[root@client1 ~]# chronyd -Q -t 3 'server server1 iburst nts maxsamples 1'
2022-08-06T23:23:52Z chronyd version 4.2 starting (+CMDMON +NTP +REFCLOCK +RTC +PRIVDROP +SCFILTER +SIGND +ASYNCDNS +NTS +SECHASH +IPV6 +DEBUG)
2022-08-06T23:23:52Z Disabled control of system clock
2022-08-06T23:23:52Z TLS handshake with 192.168.11.29:4460 (server1) failed : The TLS connection was non-properly terminated.
2022-08-06T23:23:55Z chronyd exiting

在检查捕获时,服务器似乎在收到客户端hello后终止了连接:

EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2022-08-08 01:05:26

您的NTS服务器使用的证书是否受客户端信任?我试着复制你的配置,然后我就能把事情做好。

服务器设置

我首先生成一个供服务器使用的自签名证书:

代码语言:javascript
复制
server# cd /etc/chrony
server# openssl req -x509 -nodes -newkey rsa:4096 \
  -keyout chrony.key -out chrony.crt \
  -sha256 -days 365 -subj /CN=server1

我将服务器配置如下:

代码语言:javascript
复制
pool 2.centos.pool.ntp.org iburst
sourcedir /run/chrony-dhcp
driftfile /var/lib/chrony/drift
makestep 1.0 3
rtcsync
allow 192.168.11.0/24
keyfile /etc/chrony.keys
ntsdumpdir /var/lib/chrony
leapsectz right/UTC
logdir /var/log/chrony

ntsserverkey /etc/certs/chrony.key
ntsservercert /etc/certs/chrony.crt

我在调试模式下启动服务器来测试它,并看到一个错误(“无法设置凭据”)。

代码语言:javascript
复制
server# chronyd -d
2022-08-08T00:54:52Z chronyd version 4.2 starting (+CMDMON +NTP +REFCLOCK +RTC +PRIVDROP +SCFILTER +SIGND +ASYNCDNS +NTS +SECHASH +IPV6 +DEBUG)
2022-08-08T00:54:52Z Frequency 0.765 +/- 3.876 ppm read from /var/lib/chrony/drift
2022-08-08T00:54:52Z Could not set credentials : Error while reading file.
2022-08-08T00:54:52Z Using right/UTC timezone to obtain leap second data

此错误是由/etc/certs/chrony.key上的权限引起的,该权限属于根用户和模式0600。我让chrony用户拥有它:

代码语言:javascript
复制
server# chown chrony /etc/certs/*

现在,当我在服务器上启动chronyd -d时,它将无错误地运行。

客户端设置

在客户机上,我使用了您的配置文件:

代码语言:javascript
复制
sourcedir /run/chrony-dhcp
driftfile /var/lib/chrony/drift
makestep 1.0 3
rtcsync
keyfile /etc/chrony.keys
ntsdumpdir /var/lib/chrony
leapsectz right/UTC
logdir /var/log/chrony
server server1 iburst nts

当我第一次尝试start chronyd -d时,我看到了以下错误:

代码语言:javascript
复制
2022-08-08T01:01:06Z TLS handshake with 192.168.122.17:4460 (server1)
failed : Error in the certificate verification. The certificate is NOT
trusted. The certificate issuer is unknown.

这是意料之中的,因为我使用的是自签名证书。要解决这个问题,我们可以将证书安装为受信任的证书。在我的系统(Fedora,应该与您的CentOS系统相匹配)上,这意味着将它安装到/etc/pki/ca-trust/source/anchors中,然后运行update-ca-trust

代码语言:javascript
复制
client# cat > /etc/pki/ca-trust/source/anchors/server1.crt
<paste certificate here>
^D
client# update-ca-trust

现在,当我运行chronyd -d时,我没有看到任何错误。此外,客户端成功地连接到服务器:

代码语言:javascript
复制
2022-08-08T01:03:36Z Selected source 192.168.122.17 (server1)

运行chronyc -N authdata显示:

代码语言:javascript
复制
client# chronyc -N authdata
Name/IP address             Mode KeyID Type KLen Last Atmp  NAK Cook CLen
=========================================================================
server1                      NTS     1   15  256   45    0    0    8  100
票数 1
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/712784

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档