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

使用PuTTy连接AWS EC2实例报错“bad service request ssh-connection”排查

解决PuTTy连接AWS EC2时出现“bad service request ssh-connection”的问题

兄弟,你这问题的核心原因太明显了——就是你勾选了**“Bypass authentication entirely”**这个选项!SSH连接依赖密钥认证完成身份校验,你直接跳过所有认证流程,服务器收到的请求完全不符合SSH协议规范,自然会抛出这个错误。

下面一步步帮你修正问题:

  • 第一步:立刻取消错误的认证跳过设置
    打开PuTTy,导航到Connection > SSH > Auth选项卡,把“Bypass authentication entirely”的勾选去掉,同时确认你之前选择的ppk密钥文件路径是正确的。这个选项只适用于极少数特殊测试场景,普通SSH连接绝对不能启用。

  • 第二步:确认基础连接设置是否正确

    • 主机名格式:确保是ec2-user@<你的EC2实例公网DNS/公网IP>,注意不同系统的默认用户名不同:Amazon Linux 2/2023用ec2-user,Ubuntu用ubuntu,CentOS用centos,别搞混了。
    • 端口设置:回到Session选项卡,确认端口号是22(SSH默认端口),别误改成其他数值。
    • 密钥转换检查:用PuTTYgen转换pem时,要先点击“Load”加载你的pem文件,确认密钥内容正确后再点击“Save private key”生成ppk,避免生成空的或无效的密钥文件。
  • 第三步:顺便检查EC2安全组配置
    登录AWS控制台,找到你的EC2实例对应的安全组,确保入站规则允许来自你本地IP的SSH(22端口)流量。虽然你当前的错误是认证阶段的问题,但安全组限制也会导致连接失败,一起排查更稳妥。

  • 第四步:用命令行辅助验证(可选)
    如果你的本地电脑有OpenSSH环境,可以先试试命令行连接,确认密钥和实例本身没问题:

    ssh -i /path/to/your/key.pem ec2-user@<公网DNS>
    

    如果这个命令能成功,说明问题完全出在PuTTy的设置上;如果也报错,再进一步排查实例状态或密钥权限(pem文件权限要设为chmod 400 key.pem)。

按照上面的步骤调整后,应该就能正常连接EC2实例了,核心就是别碰那个跳过认证的选项!

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.19 08:03:14