【问题标题】:EC2 : SSH with DNS works but not with Public IPEC2:带有 DNS 的 SSH 可以工作,但不能用于公共 IP
【发布时间】:2015-04-01 11:32:10
【问题描述】:

我想通过 ssh 从一台 ec2 机器连接到另一台机器(使用 ansible)。发生了一件非常奇怪的事情。

带有 DNS 的命令可以在我的机器和 ec2 机器上运行:

ssh -t -i ~/.aws/keypair.pem -o StrictHostKeyChecking=no ubuntu@ec2-54-154-0-12.eu-west-1.compute.amazonaws.com

但是这个带有公共 IP 的命令可以在我自己的计算机上运行,​​但不能在 ec2 机器上运行(超时):

ssh -t -i ~/.aws/keypair.pem -o StrictHostKeyChecking=no -o User=ubuntu 54.76.190.253

有人明白为什么吗?

【问题讨论】:

    标签: ssh amazon-ec2 dns ip


    【解决方案1】:

    您是否更新了传入服务器的安全组和 ACL 以允许来自源计算机的流量(在本例中为 TCP 22)?

    如果您尝试从 EC2 中的同一 VPC 内进行连接,那么您需要尝试连接到内部 IP 而不是外部 IP,前提是您只允许内部 IP 范围(默认安全组允许此 iirc) .

    就个人而言,在 EC2 中,我只使用同一区域内的内部范围,因为如果您不使用弹性 IP,大多数外部 IP 地址会随着您停止/启动实例而动态变化,因此 VPC 规则更容易保持安全。

    【讨论】:

    • 您好,安全组正常:两个实例属于同一个安全组,并且该安全组允许 TCP 22 为自己。实际上,第一个命令依赖于与内部 IP 的 ssh 连接,而第二个命令依赖于外部 IP。但我不明白为什么第二个命令不起作用。
    猜你喜欢
    • 2016-03-21
    • 2015-10-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-06
    • 1970-01-01
    • 2017-01-08
    相关资源
    最近更新 更多