远程启动时 rngd 不运行

远程启动时 rngd 不运行

我正在尝试通过运行来增加几个 Ubuntu 13.04 ec2 实例的熵

ssh -n -o StrictHostKeyChecking=no -i ... user@host "sudo rngd -r /dev/urandom -o /dev/random -t 10"

来自远程机器。但是,在我登录虚拟机之前,rngd 似乎什么都没做。至少如果我登录并立即运行,cat /proc/sys/kernel/random/entropy_avail它会给出大约 150 的数字。几秒钟后,它会给出 3000 左右的数字。如果我使用 ssh 远程运行cat /proc/sys/kernel/random/entropy_avail而没有登录,我也会得到大约 150 的结果。

这是 rngd 正在执行的某些守护进程的一般问题吗?

答案1

我的错误是使用"而不是'。据我所知,使用"会导致 shell 在本地计算机上运行 ssh 命令时解释字符串。我不确定传递给远程计算机的是什么,可能是命令的结果。'会导致 shell 传递未改变的字符串。

ssh -n -o StrictHostKeyChecking=no -i ... user@host 'sudo rngd -r /dev/urandom -o /dev/random -t 10'

有效。最后我决定改用 haveged:

ssh -n -o StrictHostKeyChecking=no -i ... user@host 'sudo apt-get install haveged'

这就是需要做的全部。它将安装 haveged,启动它并添加一个条目以使其在启动时启动。

相关内容