如何使用 ssh -i 选项指定用于 ssh 连接的 ssh 密钥对?

如何使用 ssh -i 选项指定用于 ssh 连接的 ssh 密钥对?

id_rsa我需要使用我专门为其创建的 ssh 密钥对(不是我的默认密钥对)连接到 SSH 代理服务器。我从ssh手册中看到有一个-i选项可以用来指定我想要使用的新 SSH 密钥对。

我不确定如何实际调用该-i选项(我似乎找不到正在使用的选项的示例)。如果这是标准ssh命令,我将如何添加该选项?出于此问题的目的,假设我的新密钥对名为id_custom

ssh -N -D 8080 [email protected]

我尝试添加identityfile=/Users/username/.ssh/id_custom到最后,但没有成功。 (我在中看到了这个选项ssh - 如何在 SSHFS 中指定密钥?)。

答案1

这是基本命令,

ssh -i keyfile target_machine

更具体地说,用您在那里提供的选项和密钥文件回答您的问题,

ssh -i /Users/username/.ssh/id_custom -N -D 8080 [email protected]

有很多需要记住的事情。我建议使用一个config文件来帮助您(特定于用户的文件是.ssh/config,系统范围的文件是/etc/ssh/ssh_config) -man ssh_config了解更多信息。由于您正在使用代理,正如您在问题中提到的那样,-D您也可以使用该config文件来处理这些详细信息。config您可以在文件中使用以下一些选项.ssh/config,以便获得更简单的ssh命令,

Host proxy.server.com
    User username
    IdentityFile ~/.ssh/id_custom
    DynamicForward 8080

然后 ssh 命令变得更容易(我不知道如何设置选项-N.ssh/config所以将其留在这里),

ssh -N proxy.server.com

答案2

对于AWS EC2 ssh,我这样使用:

ssh -i mykeypair.pem *user_name*@ec2-*publicDNS.zone*.compute.amazonaws.com

答案3

相关内容