You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用EC2 Instance Connect Endpoint连接私有EC2的SSH失败求助

修复通过EC2 Instance Connect Endpoint SSH连接私有EC2的问题

核心问题:AWS CLI版本不足

aws ec2-instance-connect open-tunnel命令是在AWS CLI v2.12.0版本才正式引入的,你的当前版本为2.11.27,不支持该操作,这是报错的直接原因。

步骤1:升级AWS CLI到兼容版本

在Mac终端执行对应命令升级:

# 若通过Homebrew安装CLI,执行:
brew upgrade awscli

# 若使用官方安装包,执行:
curl "https://awscli.amazonaws.com/AWSCLIV2.pkg" -o "AWSCLIV2.pkg"
sudo installer -pkg AWSCLIV2.pkg -target /

升级完成后验证版本,确保≥2.12.0:

aws --version

升级后仍报错的额外排查点

  • 验证IAM权限:确保你的AWS身份(用户/角色)拥有以下权限:

    • ec2-instance-connect:OpenTunnel
    • ec2:DescribeInstances
    • ec2:DescribeInstanceConnectEndpoints
      可临时附加AmazonEC2InstanceConnectEndpointFullAccess托管策略快速验证。
  • 指定正确区域:在open-tunnel命令中添加--region参数,确保与EC2实例、Instance Connect Endpoint所在区域一致:

ssh -i <key-pair>.pem ec2-user@i-xxxxxxx -o ProxyCommand='aws ec2-instance-connect open-tunnel --instance-id i-xxxxxxx --region us-east-1'
  • 修正SSH密钥权限:避免密钥文件权限过宽被SSH拒绝:
chmod 400 <key-pair>.pem
  • 检查实例端服务状态:若使用Amazon Linux 2/2023实例,通过控制台连接后验证EC2 Instance Connect服务运行正常:
sudo systemctl status ec2-instance-connect

临时替代方案(无法升级CLI时)

安装EC2 Instance Connect SSH客户端插件,自动处理隧道连接:

brew install ec2-instance-connect

使用插件连接实例:

mssh ec2-user@i-xxxxxxx

内容的提问来源于stack exchange,提问作者Jean-Pascal MEWENEMESSE

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.18 22:47:42