使用自定义密钥名称时 ssh 不起作用

使用自定义密钥名称时 ssh 不起作用

我的 SSH 密钥无法在新安装的 KDE neon 上使用。我尝试重新安装密钥,最后在调试模式下发现了问题。密钥文件未被使用,因为它有一个自定义名称。这很令人惊讶,因为它在过去几年中在 Ubuntu 18.04 上运行良好,但在新的 KDE neon 上却有这个错误。

该程序是常规的(已经在 Ubuntu 18.04 上运行)

- 在管理员端生成密钥对ssh-keygen -b 4096(我指定一个自定义名称来区分服务器)

-将新密钥添加到服务器ssh-copy-id -i ~/.ssh/custom_name.pub [email protected]

一切正常,没有错误,密钥已在~/.ssh/authorized_keys服务器端确认

问题似乎是 ssh 在连接时没有尝试自定义名称密钥:

debug1: Trying private key: /home/gerge/.ssh/id_rsa
debug1: Trying private key: /home/gerge/.ssh/id_ecdsa
debug1: Trying private key: /home/gerge/.ssh/id_ecdsa_sk
debug1: Trying private key: /home/gerge/.ssh/id_ed25519
debug1: Trying private key: /home/gerge/.ssh/id_ed25519_sk
debug1: Trying private key: /home/gerge/.ssh/id_xmss
debug1: Trying private key: /home/gerge/.ssh/id_dsa

如果调用该键,id_rsa则它可以工作,但我需要自定义名称,因为键太多。有什么想法吗?

本地管理系统:KDE neonLinux HOSTNAME 5.15.0-56-generic #62-Ubuntu SMP Tue Nov 22 19:54:14 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux

答案1

这不是一个错误。

您没有-i ~/.ssh/custom_name在您的SSH(1)命令,因此它使用默认值:

-我 身份文件

选择一个文件,从中读取用于公钥认证的身份(私钥)。您还可以指定一个公钥文件,以便在本地没有私钥文件时使用在 ssh-agent(1) 中加载的相应私钥。默认值为 ~/.ssh/id_rsa~/.ssh/id_ecdsa~/.ssh/id_ecdsa_sk~/.ssh/id_ed25519~/.ssh/id_ed25519_sk~/.ssh/id_dsa

您也可以将其添加到您的.ssh/config,例如,

Host 192.168.x.x
  User user
  IdentityFile ~/.ssh/custom_name

相关内容