AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 829410
Accepted
Andy
Andy
Asked: 2017-01-31 04:50:33 +0800 CST2017-01-31 04:50:33 +0800 CST 2017-01-31 04:50:33 +0800 CST

尝试读取密钥文件时拒绝 NTP 服务器权限

  • 772

我正在尝试为我的内部网络上的主机设置一个 NTP 时间服务器以与之同步。

我需要使用授权才能符合 PCI 标准。

我使用 ntp-keygen -M 创建了一组密钥,并将以下代码段添加到服务器上的 /etc/ntp.conf 文件中。

enable auth
keys /etc/ntp.keys
trustedkey 1 7 17

我无法从客户端连接到服务器。当我在客户端上运行“ntpq -c as”时,我可以看到身份验证对我的服务器来说是“坏的”。我已将服务器上生成的密钥文件复制到客户端,并将受信任的密钥行也添加到客户端,如下所示:

server timeserver key 17
restrict -4 default kod notrap nomodify nopeer noquery
restrict -6 default kod notrap nomodify nopeer noquery
restrict 127.0.0.1
restrict ::1
keys /etc/ntp.keys
trustedkey 1 7 17

查看服务器日志,我可以看到在尝试读取文件时出现权限被拒绝错误,如下所示。

Jan 30 12:38:01 ip-10-0-1-103 systemd[1]: Starting LSB: Start NTP daemon...
Jan 30 12:38:01 ip-10-0-1-103 ntp[28084]:  * Starting NTP server ntpd
Jan 30 12:38:01 ip-10-0-1-103 ntpd[28094]: ntpd [email protected] Wed Oct  5 12:34:45 UTC 2016 (1): Starting
Jan 30 12:38:01 ip-10-0-1-103 ntpd[28094]: Command line: /usr/sbin/ntpd -p /var/run/ntpd.pid -g -u 112:116
Jan 30 12:38:01 ip-10-0-1-103 ntp[28084]:    ...done.
Jan 30 12:38:01 ip-10-0-1-103 systemd[1]: Started LSB: Start NTP daemon.
Jan 30 12:38:01 ip-10-0-1-103 ntpd[28096]: proto: precision = 0.182 usec (-22)
Jan 30 12:38:01 ip-10-0-1-103 ntpd[28096]: authreadkeys: file /etc/ntp.keys: Permission denied

我已经使用客户端机器上的 ntpdate 来设置服务器的日期,所以我非常有信心网络已经启动并正在运行。当我忙于设置它时,我实际上已经在两台服务器上禁用了 iptables。

服务器上的密钥文件是 600,如下所示:

-rw-------  1 root  root    1066 Jan 30 12:29 ntpkey_MD5key_timeserver.3694768152
lrwxrwxrwx  1 root  root      35 Jan 30 12:33 ntp.keys -> ntpkey_MD5key_timeserver.3694768152

我尝试将配置更改为指向实际文件而不是符号链接。

谁能帮我弄清楚系统日志中的错误是什么意思以及如何解决这个问题?

编辑:查看源代码,错误的“权限被拒绝”部分似乎来自操作系统。

ntp ntpd
  • 2 2 个回答
  • 2925 Views

2 个回答

  • Voted
  1. Best Answer
    U. Windl
    2022-02-10T01:11:59+08:002022-02-10T01:11:59+08:00

    如果密钥文件root只能由非 root 用户读取,但ntpd以非 root 用户身份运行,例如使用-u ntp:ntp,请确保有效用户可以读取密钥文件。

    例如,您可以使用chmod u=rw,g=r,o= keyfile密钥文件来允许组读取,然后chgrp ntp keyfile将组分配ntp给文件,从而有效地允许组ntp访问文件(但您已经知道了,对吧?)。

    仍然值得检查 apparmor 或 selinux 施加的其他限制。对于前者,您可以尝试aa-status | grep ntpd检查。

    • 1
  2. Andy
    2017-01-31T07:11:28+08:002017-01-31T07:11:28+08:00

    我启动了一个 Ubuntu 14.04 实例,并注意到在相同的“权限被拒绝”消息之后日志中的应用程序装甲消息。

    禁用 apparmor 的 ntp 配置文件解决了该问题。

    • 0

相关问题

  • 网络时间服务器的 DHCP 选项

  • 公共 NTP 服务器

  • 时间同步和计划任务

  • 时间漂移

  • Windows Server 无法可靠地同步 NTP 时间

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve