我在通过代理通过 ssh 连接到我的亚马逊 EC2 服务器时遇到了一些问题。
我有 http 代理端口 8080 的用户名和密码。(无法控制代理) 我也有我的连接字符串,它可以在没有代理的情况下工作 ssh -i key.pem root@xx.compute.amazonaws.com
1) 当我尝试连接时出现“无路由到主机”错误 2)我尝试使用putty,配置代理+认证文件,但后来我得到这个错误 “无法使用此 key 文件(OpenSSH SSH-2 私钥)” 我也不知道 putty 如何将我的代理配置插入到 ssh 连接字符串中,所以我可以在终端中尝试
任何帮助将不胜感激!
解决方案:
这是一个很好用的教程:http://www.mtu.net/~engstrom/ssh-proxy.php
注意:您需要安装开瓶器。
此配置还使您能够通过代理运行 rsync
示例:rsync -avz -e "ssh -i key.pem"ec2-user@xx.compute.amazonaws.com:/amz/home
最佳答案
我遇到了同样的问题,这就是我过去使用开瓶器连接的方式。我的配置文件看起来像这样
Host AWS
Hostname <Public DNS>
Port 443
#Write the appropriate username depending on your AMI, eg : ubuntu, ec2-user
User ubuntu
IdentityFile </path to key file>
ProxyCommand /usr/bin/corkscrew 10.10.78.61 3128 %h %p
那我就直接用这个命令连接
ssh AWS
它完美地工作。
注意:您必须编辑服务器上的 sshd_config 文件以监听端口 443(除了 22)上的 ssh 连接并重新启动 ssh 守护程序。
关于proxy - 通过代理ssh到亚马逊EC2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5144777/