我创建了一个没有密码的 ssh 密钥,用于 ssh 和 mosh 到多个网络服务器。它已经工作了大约3个月了。今天尝试访问我们的一台服务器时,它提示我输入密码。
我运行“ssh -vvv name-of-server”来确认唯一阻止我连接到服务器的是密码要求。
更改密码需要旧密码,我没有/不应该存在。有谁知道可能会发生什么,或者我如何摆脱密码要求?
感谢 Garreth 为我指明了正确的方向。
不幸的是,这个问题没有一个圆满的结局。我检查了私钥文件,发现它以这两行开头:
Proc-Type: 4,ENCRYPTED DEK-Info: DES-EDE3-CBC,BCC23A5E16582F3D
显然这意味着密钥已被加密,并且加密的密钥需要密码才能使用。我找到了这个解密命令:
$ openssl rsa -in id_rsa -out id_rsa
但是你需要密码才能解密。我尝试将旧 RSA 密钥的内容复制并粘贴到新文件中,但系统也提示我输入密码以解密文件。我正在删除我的旧密钥对并重新开始。:(
密钥已以某种方式损坏。检查它以确保没有添加额外的字符或行(例如,通过粘贴到非纯文本电子邮件中)。
在纯文本编辑器中检查密钥的每一行。任何行的末尾都不应有空白字符,并且在关键分界线之外不应有新行。