如何*无需*指定 .pem 文件即可 ssh 到 EC2?

Ron*_*ohn 4 linux ssh openssh ssh-keys amazon-ec2

一定有一些比记录的更简单的方法ssh -i my.pem user@ip-addr,通过将 pem 文件放入~/.ssh并 ssh 知道使用my.pembased on user@ip-addr,但我不知道如何操作。

har*_*ymc 10

此解决方案来自 StackOverflow 帖子
Connect to Amazon ec2 Instance without指定 .pem file


use*_*686 6

大多数命令行选项都可以通过~/.ssh/config全局或单个主机指定。相当于 的-iIdentityFile选项。

如果此密钥文件用于 EC2,则最好在仅与 EC2 匹配的部分中指定它。例如,如果您通常通过名称进行 SSH(例如ssh ec2-198-x.compute-1.amazonaws.com),则此格式将有效:

Host *.amazonaws.com
    IdentityFile ~/.ssh/myec2.pem
Run Code Online (Sandbox Code Playgroud)

(最具体的部分应位于文件的顶部;全局Host *部分应位于文件的最底部。)


除此之外,OpenSSH 还将查看几个固定位置(例如 )~/.ssh/id_rsa来查找私钥文件。您可以将密钥放在那里,但最好将此文件名保留为您的“主”密钥,并且是您自己生成的而不是刚刚从 AWS 收到的密钥。