连接到Amazon ec2实例而不指定.pem文件

时间:2015-11-19 22:42:16

标签: amazon-web-services amazon-ec2

我一直在使用以下命令从我的OSX终端连接到我的amazon ec2实例:

ssh -i /path/my-key-pair.pem ec2-user@ec2-198-51-100-1.compute-1.amazonaws.com

所以我需要在命令中包含.pem文件位置。

有没有办法,所以我每次连接时都不需要指定.pem文件?

任何帮助或建议将不胜感激。谢谢。

3 个答案:

答案 0 :(得分:2)

好的,我有解决方案。如果有人需要,我在这里分享:

  • .pem文件复制到~/.ssh
  • ~/.ssh

    创建配置文件

    touch ~/.ssh/config

  • 以nano或vim打开配置文件。 nano ~/.ssh/config

  • 将以下行添加到config文件

    Host host_name

    HostName ec2.server.address.com

    User ec2-user

    IdentityFile "~/.ssh/ec2.pem"

  • 现在从终端连接:ssh host_name

答案 1 :(得分:1)

使用 ssh-add 命令添加.pem文件

然后您不必在ssh命令行中指定pem文件。它的作用是将一个或多个pem文件添加到ssh连接期间提供的ssh-agent中。

ssh-add -l <​​/ strong>会列出代理知道的所有pem文件。

如果ssh-add抱怨代理未运行,请通过调用启动代理 评估ssh-agent -s

对于更多个人,请选择 ssh-agent ssh-add

答案 2 :(得分:0)

穆罕默德 -

您可以在用户个人资料上为SSH设置默认身份文件。只需将该pem文件复制到./ssh/id_rsa或〜/ .ssh / id_dsa(取决于格式)。我从SSH手册页中提取了这个,链接到下面的源代码。

  

-i identity_file

     

选择从中读取RSA或DSA身份验证的标识(私钥)的文件。默认值为〜/ .ssh / identity   对于协议版本1,和〜/ .ssh / id_rsa和〜/ .ssh / id_dsa   协议版本2.也可以在每个主机上指定身份文件   在配置文件中的基础。可以有多个-i   选项(以及配置文件中指定的多个标识)。

http://linux.die.net/man/1/ssh