sshd
由于缺少密钥,服务无法启动。当我尝试使用生成密钥时
ssh-keygen -t dsa
我刚刚收到消息说:
Generating public/private dsa key pair.
我没有收到指定密钥文件位置的提示。它只是没有做任何事情。
当我使用
ssh-keygen -t rsa
我明白了
Generating public/private rsa key pair. rsa_generate_private_key : Key generation failed.
我尝试使用不同的 iSO 和 RHEL 7 来运行它。我总是遇到这个问题。我尝试了带有-v
选项的命令,但尚未获得日志输出。
答案1
[感谢莱昂布洛伊和布拉奇利]
我使用 strace 与 centos 下的工作 Fedora 输出进行了比较。两者看起来几乎一样。 (修复了一些网络问题,认为这可能是原因)。
看了源码
http://www.opensource.apple.com/source/OpenSSH/OpenSSH-74/openssh/key.c.orig?txt
它只调用 openssl libraray。因此,直接尝试使用 openssl 生成 rsa 证书。
这给了我错误指出
`https://bugzilla.redhat.com/show_bug.cgi?id=1150286'
添加环境变量
export OPENSSL_ia32cap=~0x4000000000000000
解决了这个问题。
答案2
可能是虚拟化 guest 的一些熵问题,但奇怪的是您没有收到任何错误消息(添加 -vvv 以增加详细程度,查看日志)。
另请参阅给您带来了什么cat /proc/sys/kernel/random/entropy_avail
。
rngd -r /dev/urandom
您也可以尝试在生成密钥之前运行
(如果没有,rngd
可以使用 来安装yum install rng-tools
)