为什么私钥会显示没有EOL的密码保护?

时间:2020-10-28 11:20:42

标签: ssh openssh

我有一个服务器设置,可以通过从外部安全服务器中提取密钥来通过SSH访问。 SSH密钥不受密码保护,但是当我尝试访问服务器时要求输入密码:

Enter passphrase for key 'my-key'

当我使用vi查看密钥时,它在文件末尾显示一条noeol消息

-----BEGIN OPENSSH PRIVATE KEY-----

...
...
-----END OPENSSH PRIVATE KEY-----
~
~
~
~
~
~
~
~/.ssh/my-key" [noeol] 27L, 1798C

在复制密钥时附加\ n时,此问题得到纠正。为什么缺少EOL会导致密钥寻找密码?

1 个答案:

答案 0 :(得分:0)

可能是由于(专有的)OPENSSH私钥格式described here,其中包括:

  • 格式ID前缀
  • 加密头
  • 该块中未使用的键数
  • rfc4253样式的ssh公钥
  • 有点仿照rfc4253样式的私钥
  • 评论
  • 用于使私钥与区块大小对齐的填充
相关问题