当前位置: 首页 > 知识库问答 >
问题:

无法 ssh 普通 aws 实例

牟华翰
2023-03-14

我花了整整一个晚上的时间。猜猜只是我错过了一个愚蠢的步骤。以下是我遵循的过程:

  1. 创建aws vpc10.0.0.0/24;
  2. 创建一个aws Internet网关并将其与VPC相关联;
  3. 在VPC10.0.0.0/26中创建子网;
  4. 向VPC ACL添加入站规则,以允许来自所有IPV4源的SSH、HTTP、HTTPS;
  5. 启动aws ec2实例与亚马逊Linux2 AMI在区域us-West 2,t2.micro,实例详细信息:实例数:1网络:VPC创建以上子网:子网创建以上自动分配公共IP:使用子网设置(禁用)容量预留:打开所有其他默认存储详细信息添加数据卷,删除终止检查安全组:新安全组与入站规则ssh/超文本传输协议/https打开所有ipv4源使用现有的密钥对我之前创建的;
  6. 创建弹性IP;
  7. 将弹性IP与上面创建的实例相关联。
  8. 重启实例

然后我可以看到实例在附加弹性IP的情况下运行良好。我尝试使用sshssh-vvv-I./aws_private连接到ip地址。质子交换膜ec2-user@ipaddress并低于故障

OpenSSH_8.1p1, LibreSSL 2.7.3
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 47: Applying options for *
debug2: resolve_canonicalize: hostname <elastic ipaddress> is address
debug2: ssh_connect_direct
debug1: Connecting to <elastic ipaddress> [<elastic ipaddress>] port 22.
debug1: connect to address <elastic ipaddress> port 22: Operation timed out
ssh: connect to host <elastic ipaddress> port 22: Operation timed out

我验证了ACL和安全组。这是我唯一的ACL和安全组。我在用苹果电脑。在同一地区,还尝试了使用windows操作系统和aws云shell。它们都有相同的错误<代码>telnet

共有3个答案

龙弘济
2023-03-14

结果是我Mac电脑上的zscaler不知何故改变了我的ip地址,搞乱了我Mac电脑和aws之间的通信。

萧鸿轩
2023-03-14

一般来说,NACL规则不应更改为默认规则,除非您有非常具体的要求(例如创建DMZ)。

NACLs是无状态的,这意味着它们需要双向指定。我建议您将入站和出站的NACLs重置回它们的默认设置“Allow All ”,然后只使用安全组来控制访问。

连接流量为:

  • 弹性IP地址指向Internet网关
  • Internet网关执行反向NAT以将其转换为专用IP地址
  • 查阅子网上的路由表以确认子网是“公共”的(路由表条目指向Internet网关)
  • NACL在进入子网时检查流量(建议将其保留为默认Allow All)
  • 安全组检查进入实例的流量
  • 实例处理传入请求
暴才俊
2023-03-14

你忘了一件事。

Security Groups

您需要允许SSH连接到实例端口22。为此,请将以下规则添加到Ec2实例的安全组。

Protocol - TCP, type- SSH , port -22, source - 0.0.0.0/0 

实际上,你不需要编辑ACL,因为它们默认允许访问任何东西。

但是您需要向安全组添加规则,因为默认情况下它不允许任何连接

 类似资料:
  • 我无法通过 SSH 连接到我的 EC2 实例 - 我收到超时错误。我检查了安全组,以确保 SSH 流量正常工作。我检查了路由表,并确保它们已连接到互联网网关。一小时前,我能够通过SSH连接到实例中,但现在已经没有了。我正在通过腻子连接。在使用ec2-user@domain之前,我遇到了相同的超时连接问题,我只需在Putty的主机名字段中输入IP地址即可解决。在这一点上,我能够毫无问题地连接。然后,

  • 这不应该这么难。我无法通过SSH客户端连接到新的AWS EC2实例。我是从一个WIN7盒子连接的。 实例OS:Debian 6 使用3个不同的客户端:所有客户端连接ok PuTTY答复: MindTerm Java浏览器外接程序答复: 提亚。

  • 我在AWS上设置了一个OpenVPN EC2实例,它有如下安全组 我下载了文件,可以像(也可以在导入配置后通过网络管理器)。一切都好。 现在我想这样做,我的其他EC2实例(托管实际应用程序)只能通过VPN访问,不能直接通过SSH连接。其中一个EC2实例的安全组如下所示 这里,我允许端口22上来自OVPN服务器的私有IPv4地址的入站流量。 但是,如果我连接到VPN并尝试通过SSH连接到应用EC2实

  • 在尝试应用terraform计划时,我得到一个不加起来的ssh错误: SSH:握手失败:SSH:密钥交换没有通用算法;提供的客户端:[curve25519-sha256@libssh.org ecdh-sha2-nistp256 ecdh-sha2-nistp384 ecdh-sha2-nistp521 diffie-hellman-group14-sha1 diffie-hellman-grou

  • 我已经在亚马逊(AWS)机器上创建了一个linux节点。我可以 ssh 到节点,但我不能 ping 到它的 IPv4 公共 IP。我应该怎么做才能解决此问题? 作品: 不工作(返回0失败): 请注意,当我进行此设置时,我可以从另一个amazon节点ping到另一个amazon节点。但从非amazon节点,我仍然无法对amazon结点执行ping操作。 感谢您宝贵的时间和帮助。