4.2. 在时间服务器上启用网络时间安全(NTS)


如果您运行自己的网络时间协议(NTP)服务器,您可以启用服务器网络时间协议(NTS)支持来促进其客户端安全地同步。

如果 NTP 服务器是其它服务器的客户端,即它不是 Stratum 1 服务器,它应使用 NTS 或对称密钥进行同步。

先决条件

  • PEM 格式的服务器私钥
  • 带有 PEM 格式的所需中间证书的服务器证书

流程

  1. 编辑 /etc/chrony.conf 文件并进行以下更改:

    ntsserverkey /etc/pki/tls/private/<ntp-server.example.net>.key
    ntsservercert /etc/pki/tls/certs/<ntp-server.example.net>.crt
    Copy to Clipboard Toggle word wrap
  2. 对允许 chrony 用户读取文件的私钥和证书文件设置权限,例如

    # chown root:chrony /etc/pki/tls/private/<ntp-server.example.net>.key /etc/pki/tls/certs/<ntp-server.example.net>.crt
    
    # chmod 644 /etc/pki/tls/private/<ntp-server.example.net>.key /etc/pki/tls/certs/<ntp-server.example.net>.crt
    Copy to Clipboard Toggle word wrap
  3. 确保 ntsdumpdir /var/lib/chrony 设置存在。
  4. 在 firewalld 中开放所需的端口:

    # firewall-cmd --permanent --add-port={323/udp,4460/tcp}
    # firewall-cmd --reload
    Copy to Clipboard Toggle word wrap
  5. 重启 chronyd 服务:

    # systemctl restart chronyd
    Copy to Clipboard Toggle word wrap

验证

  1. 从客户端机器执行测试:

    $ chronyd -Q -t 3 'server
    
    ntp-server.example.net iburst nts maxsamples 1'
    2021-09-15T13:45:26Z chronyd version 4.1 starting (+CMDMON +NTP +REFCLOCK +RTC +PRIVDROP +SCFILTER +SIGND +ASYNCDNS +NTS +SECHASH +IPV6 +DEBUG)
    2021-09-15T13:45:26Z Disabled control of system clock
    2021-09-15T13:45:28Z System clock wrong by 0.002205 seconds (ignored)
    2021-09-15T13:45:28Z chronyd exiting
    Copy to Clipboard Toggle word wrap

    System clock wrong 消息指示 NTP 服务器接受 NTS-KE 连接并使用 NTS 保护的 NTP 消息进行响应。

  2. 验证 NTS-KE 连接并验证服务器中观察的 NTP 数据包:

    # chronyc serverstats
    
    NTP packets received       : 7
    NTP packets dropped        : 0
    Command packets received   : 22
    Command packets dropped    : 0
    Client log records dropped : 0
    NTS-KE connections accepted: 1
    NTS-KE connections dropped : 0
    Authenticated NTP packets: 7
    Copy to Clipboard Toggle word wrap

    如果 NTS-KE connections acceptedAuthenticated NTP packets 项带有一个非零值,这意味着至少有一个客户端能够连接到 NTS-KE 端口并发送经过身份验证的 NTP 请求。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat