使用. pem 文件通过 SSH 连接

我想知道如何使用 .pem文件通过 SSH 连接到任何服务器。

目前我正在执行以下命令:

ssh user@mydomain.example

我应该使用什么选项?

183010 次浏览

使用 -i选项:

ssh -i mykey.pem user@mydomain.example

正如在 这个答案中指出的,这个文件需要有正确的权限设置:

如果私钥文件可以被其他人访问,SSH 将直接忽略该私钥文件。

您可以使用以下命令更改权限:

chmod go= mykey.pem

也就是说,将 group 和 thers平等的权限设置为空的权限列表。

chmod 400 mykey.pem


ssh -i mykey.pem user@mydomain.example

将使用 .pem文件通过 SSH 连接到任何服务器。

对于 AWS,如果用户是 ubuntu,则使用以下方法连接到远程服务器。

chmod 400 mykey.pem


ssh -i mykey.pem ubuntu@your-ip

您可以使用以下命令连接到 AWS ec-2实例。

chmod 400 mykey.pem


ssh -i mykey.pem username@your-ip

默认情况下,机器名称通常与 ubuntu 类似,因为通常 ubuntu 机器被用作服务器,所以在这种情况下,下面的命令可以正常工作。

ssh -i mykey.pem ubuntu@your-ip

要从终端连接到 AWS AMI:

chmod 400 mykey.pem


ssh -i mykey.pem ec2-user@mydomain.example

如果您仍然收到如下错误消息:

收到从 34.219.50.0端口22:2断开连接: 身份验证失败太多。从 34.219.50.0端口22断开连接

  1. 编辑位于 ~/.ssh/config的 SSH 配置 ,并在末尾添加新记录
Host mydomain.example
User ubuntu
IdentityFile /home/you/path-to-pem/key.pem
IdentitiesOnly yes
  1. 调用短命令: ssh mydomain.example

对我来说,解决问题的办法就是运行: sudo chown $USER: {.pem_file}