无法通过 dnssec-keygen 生成密钥

cep*_*3us 5 bind dnssec

 $ dnssec-keygen -a HMAC-MD5 -b 512 -n HOST  {host}
Run Code Online (Sandbox Code Playgroud)

以上导致空行和无休止的等待

 $ dnssec-keygen -T DNSKEY -a HMAC-MD5 -b 512 -n HOST  {host}
Run Code Online (Sandbox Code Playgroud)

相同

熵:

$ cat /proc/sys/kernel/random/entropy_avail 
890
Run Code Online (Sandbox Code Playgroud)

附:我试图通过find /制造一些噪音,但没有带来任何结果

Rui*_*iro 6

默认情况下,dnsec-keygen使用/dev/random- 生成速度很慢,在不太繁忙的系统中更多。

替代方法之一是尝试使系统更忙,在后台运行更多进程。它仍然会有点慢,但不那么慢。使用更多 I/O 时,虚拟机通常对熵的影响较小。

另一种选择是使用/dev/urandom. /dev/urandom是一个伪随机生成器,但除非您正在启动系统,否则应该足够随机以满足您的需要。

我建议然后将其/dev/urandom用作源,添加到您的命令-r /dev/urandom中,如下所示:

dnssec-keygen -r /dev/urandom -a HMAC-MD5 -b 512 -n HOST {host} 
Run Code Online (Sandbox Code Playgroud)

更多内容,请阅读:

错误 1025554 - 使用 dnssec-keygen 生成密钥非常慢

使用-r /dev/urandom参数后由@ceph3us 运行,

$ dnssec-keygen  -r /dev/urandom -a HMAC-MD5 -b 512 -n HOST  {host}
Run Code Online (Sandbox Code Playgroud)

密钥生成时间:

real 0m0.033s 
user 0m0.028s 
sys 0m0.004s
Run Code Online (Sandbox Code Playgroud)

  • **更新**:使用 `-r` 选项执行 `dnssec-keygen`(版本:9.14.2)将产生以下错误:`dnssec-keygen:fatal: -r 选项已被弃用。始终使用系统随机数据。` (2认同)