使用.pem文件通过ssh连接

dan*_*rvt 61 ssh pem

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

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

ssh user@mydomain.com
Run Code Online (Sandbox Code Playgroud)

我应该使用什么选项?

leg*_*cia 113

使用-i选项:

ssh -i mykey.pem user@mydomain.com
Run Code Online (Sandbox Code Playgroud)

本回答所述,此文件需要设置正确的权限.该SSH手册页说:

如果其他人可以访问私有密钥文件,ssh将忽略它.

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

chmod go= mykey.pem
Run Code Online (Sandbox Code Playgroud)

也就是说,为g roup 和o thers 设置的权限等于空的权限列表.


shu*_*put 28

chmod 400 mykey.pem

ssh -i mykey.pem user@mydomain.com
Run Code Online (Sandbox Code Playgroud)

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

  • "chmod 400"解决了这个问题:'some_file.pem'的权限0777太开放了.其他人无法访问您的私钥文件.此私钥将被忽略. (2认同)

Pra*_* Gn 10

对于AWS(如果用户是ubuntu),请使用以下内容连接到远程服务器。

chmod 400 mykey.pem

ssh -i mykey.pem ubuntu@your-ip
Run Code Online (Sandbox Code Playgroud)


off*_*dal 7

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

chmod 400 mykey.pem

ssh -i mykey.pem username@your-ip
Run Code Online (Sandbox Code Playgroud)

默认情况下,机器名称通常类似于 ubuntu,因为通常 ubuntu 机器用作服务器,因此以下命令在这种情况下将起作用。

ssh -i mykey.pem ubuntu@your-ip
Run Code Online (Sandbox Code Playgroud)


Sam*_*Sam 5

从终端连接到 AWS AMI:

chmod 400 mykey.pem

ssh -i mykey.pem ec2-user@mydomain.com
Run Code Online (Sandbox Code Playgroud)


pym*_*men 5

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

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

  1. 编辑您的 SSH 配置~/.ssh/config并在末尾添加新记录
Host mydomain.example
   User ubuntu
   IdentityFile /home/you/path-to-pem/key.pem
   IdentitiesOnly yes
Run Code Online (Sandbox Code Playgroud)
  1. 调用短命令:ssh mydomain.example