Red Hat Training

A Red Hat training course is available for RHEL 8

第 31 章 安全配置 chrony

chronyd 的默认配置文件是 /etc/chrony.conf-f 选项可以用来指定备选配置文件路径。更多选项请查看 chrony.conf(5) man page。有关可以使用的指令的完整列表请参考 chronyd 配置文件

chronyc 可以通过两种方式访问 chronyd:

  • 互联网协议、IPv4 或者 IPv6。
  • Unix 域套接字,由 rootchrony 用户在本地访问。

默认情况下,chronyc 连接到 Unix 域套接字。默认路径为 /var/run/chrony/chronyd.sock。如果这个连接失败,比如 chronyc 在非 root 用户中运行时, chronyc 会尝试连接到 127.0.0.1,然后是 ::1。

网络中只允许以下监控命令,它们不会影响 chronyd 的行为:

  • activity
  • manual list
  • rtcdata
  • smoothing
  • sources
  • sourcestats
  • tracking
  • waitsync

chronyd 接受这些命令的主机集合可以使用 chronyd 配置文件中的 cmdallow 指令或者 chronyc 中的 cmdallow 命令配置。默认情况下,这些命令只接受 localhost(127.0.0.1 或 ::1)。

所有其他命令只能通过 Unix 域套接字进行。当通过网络发送时, chronyd 会返回 Not authorised 错误,即使它来自 localhost。

以下流程描述了如何使用 chronyc 远程访问 chronyd。

流程

  1. /etc/chrony.conf 文件中添加以下内容来允许来自 IPv4 和 IPv6 地址的访问:

    bindcmdaddress 0.0.0.0

    或者

    bindcmdaddress ::
  2. 使用 cmdallow 指令允许来自远程 IP 地址、网络或子网的命令。

    /etc/chrony.conf 文件中添加以下内容:

    cmdallow 192.168.1.0/24
  3. 在防火墙中打开端口 323 从远程系统连接。

    #  firewall-cmd --zone=public --add-port=323/udp

    如果您想永久打开端口 323,使用 --permanent

    #  firewall-cmd --permanent --zone=public --add-port=323/udp

其它资源

  • chrony.conf(5) man page