如何使用我们自己的证书使用自动密钥配置NTP

时间:2016-01-20 08:11:46

标签: security ntp autokey

我正在使用自动密钥配置NTP以使NTP更安全。我不想使用可以使用ntp-keygen命令行工具生成的默认证书。 ntp-keygen生成一个RSA密钥,一个IFF密钥和一个md5withRSA签名证书,但我想使用我自己的证书,该证书是使用签名算法SHA1withRSA生成的。但是当我把我的证书和密钥放在ntp deafault证书和密钥的位置时。它向我展示了ntpd启动时的这个错误。

1月19日20:52:22 GURNTP20150710 ntpd [21084]:crypto_key:没有filestamp / etc / ntp / ntpkey_host_hostname 1月19日20:52:22 GURNTP20150710 ntpd [21084]:crypto_setup:主机密钥文件ntpkey_host_hostname未找到或已损坏

在使用我自己的证书和密钥时,任何人都可以帮助我在这里使用自动密钥协议来保护我的ntp服务器和客户端。

提前致谢。 :)

1 个答案:

答案 0 :(得分:0)

我得到了上述问题的答案。所以答案是否可以使用我自己的openssl生成的证书来保护我的ntp是YES。 将我的openssl证书放在/ etc / ntp / path后,我遇到了一个问题(高于错误)。

答案:这是由于ntp启动时会查找" ntpkey _ "证书中的关键字和密钥的名称。所以我不得不用这个命名约定重命名我自己的证书。但不幸的是我又得到了同样的错误。 这次是由于证书文件的文件内容。我检查了ntpkey-gen的代码并发现ntp在启动时使用fopen C库函数打开证书和密钥文件并查找&#34 ;的(点)的&#34 ;.

实际上当ntp_keygen生成证书和密钥时。它对证书的第一行和密钥进行了注释,其中包含证书的文件名,其中包含点后的文件时间戳。这就是ntpd在证书文件中查找点的原因。所以我在证书和密钥的第一行添加了ntp证书和密钥的文件名和文件时间戳。

现在工作正常。

谢谢:)