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

使用VSCode连接AWS EC2实例时遇‘Permission denied(public key)’错误

解决AWS EC2 SSH连接Permission denied(public key)错误

排查与修复步骤

  • 检查本地密钥文件权限
    SSH要求密钥文件(.pem)权限必须为600,否则会被拒绝访问。执行以下命令修改权限:

    chmod 600 /path/to/your-key-pair.pem
    
  • 配置VSCode SSH的密钥路径
    打开VSCode的SSH配置文件(可通过Remote SSH扩展的"Open SSH Configuration File"选项打开),确保对应Host条目添加了密钥文件路径:

    Host your-ec2-host
        HostName [你的实例公网IP]
        User ec2-user
        IdentityFile /path/to/your-key-pair.pem
    
  • 确认密钥对匹配
    启动EC2实例时选择的密钥对,必须和本地保存的.pem文件是同一组。如果不匹配,需重新启动实例并选择正确的密钥对,或者手动将本地公钥内容添加到EC2实例的~/.ssh/authorized_keys文件中。

  • 验证安全组规则
    检查EC2实例的安全组,确保已允许TCP端口22从你的本地IP地址(或临时允许0.0.0.0/0用于测试)访问。

  • 确认登录用户正确性
    不同AMI的默认登录用户不同:

    • Amazon Linux:ec2-user
    • Ubuntu:ubuntu
    • CentOS:centos
      如果用错用户,也会触发权限拒绝错误,可尝试更换用户测试。
  • 测试基础SSH连接
    先在本地终端执行SSH命令,排除VSCode扩展的问题:

    ssh -i /path/to/your-key-pair.pem ec2-user@[你的实例公网IP]
    

    如果终端连接成功,再回到VSCode重新配置;如果终端也失败,优先解决底层SSH连接问题。

  • 检查公网IP有效性
    确保使用的是实例的公网IPv4地址,且实例处于运行状态。若未分配弹性IP,重启实例后公网IP会变更,需确认IP是否最新。

内容的提问来源于stack exchange,提问作者NAA

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.27 19:07:37