Cannot SSH to Amazon EC2 instance from ubuntu 14.04 LTS
我按照与此处提到的完全相同的顺序跟踪了所有内容:Amazon Set Up Documentation。我还阅读了许多SO答案,但每个人都建议检查安全组和路由表。我做了一切都没有帮助他们。
我有一个USB Dongle用于上网。每次断开加密狗并重新连接时,其IP都会发生变化。但如果我保持联系,其IP保持不变。所以我创建了一个安全组my_ip/32并启动了一个ec2实例。因此,如果不断开我的加密狗,即保持我的IP完整,我尝试通过SSH连接到实例,简单
1
| ssh -v -i my-key-pair.pem user@public_dns |
命令,但没有运气。
但有趣的是,如果我将安全组更改为0.0.0.0/0,我可以连接到ec2实例,由于安全问题,亚马逊不建议这样做。
有没有人遇到类似的情况。或亚马逊确实错过了他们的文档。
注意:
我还在ubuntu中为ssh启用了防火墙,如下所示:
1 2
| sudo ufw allow ssh/tcp
sudo ufw enable |
我错过了什么?
-
您似乎缺少相关信息。 你声明你使用USB加密狗 - 和? 什么是加密狗? 它是以太网电缆吗? 什么提供连接? 谁提供您的互联网连接? 您的工作站如何设置? 从下面的答案中你来回看到有关你自己的设置(可能是你的浏览器代理)的事情,显然可以解释你的问题。 如果您研究了这些信息并更新了您的问题,将会很有帮助。
当你谷歌'我的IP是什么'它会给你my_ip的预期结果吗? 谷歌将报告外界认为你的IP。
我有一种感觉,你可能正在通过一个NAT路由器,你正在接收DHCP,因此你是加密狗IP甚至没有被EC2看到匹配安全组。
-
谢谢雷。我用亚马逊ec2本身提供的工具仔细检查了我的ip并搜索了"我的ip是什么"。他们都给了我相同的结果。我相信我的ip是正确的。
-
@Computergodzilla愚蠢的问题,但您的安全组规则是否适用于/ 24 cidr后缀?
-
@Computergodzilla暂时将安全组更改回0.0.0.0/0,然后通过SSH连接到EC2实例,然后在SSH会话中找出SSH客户端实际进入的地址。请参阅stackoverflow.com/questions/996231/…关于如何做到这一点的一些想法。
-
@jarmod。谢谢。很有意思。我发现我连接的ip是完全不同的。 SSH会话显示的IP是真正的IP。那个IP显示做"什么是我的IP"。
-
@Computergodzilla您的SSH会话可能是通过SSH代理路由的,它是目标EC2实例看到的代理的IP地址。当您访问whatismyip.com时,您不会通过该代理进行路由(您要么直接转向,要么您正在通过另一个代理,仅代理HTTP / HTTPS)。因此,当远程HTTP服务器看到您从IP地址#2进入时,远程SSH服务器会看到您从IP地址#1进入。