我一直在使用以下命令从我的OSX终端连接到我的amazon ec2实例:
ssh -i /path/my-key-pair.pem ec2-user@ec2-198-51-100-1.compute-1.amazonaws.com
所以我需要在命令中包含.pem文件位置。
有没有办法,所以我每次连接时都不需要指定.pem文件?
任何帮助或建议将不胜感激。谢谢。
答案 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 选项(以及配置文件中指定的多个标识)。