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

Windows11配置AWS CodeCommit SSH后git clone密钥协商失败如何解决

问题根因

你遇到的报错核心原因是Git Bash内置的OpenSSH版本较高,默认禁用了基于SHA-1哈希的ssh-rsa算法,但AWS CodeCommit目前仅支持ssh-rsa作为主机密钥协商算法;且PowerShell使用的系统内置OpenSSH配置和Git Bash的SSH配置相互独立,你在PowerShell侧的配置未同步到Git Bash环境。

排查解决步骤
  • 方案1:统一Git使用的SSH客户端为系统已验证的版本
    直接让Git调用你已经测试通过的系统自带OpenSSH,无需修改额外算法配置,在Git Bash中执行以下命令即可:
    git config --global core.sshCommand "C:/Windows/System32/OpenSSH/ssh.exe"
    
    配置完成后直接重试git clone操作即可。
  • 方案2:修改Git Bash的SSH配置适配ssh-rsa算法
    1. 打开Git Bash,执行cd ~/.ssh进入SSH配置目录
    2. 编辑config文件,在对应CodeCommit的Host配置段新增2行算法配置,最终配置如下:
    Host git-codecommit.*.amazonaws.com
      User 你的AWS SSH密钥ID
      IdentityFile ~/.ssh/codecommit_rsa
      HostKeyAlgorithms +ssh-rsa
      PubkeyAcceptedKeyTypes +ssh-rsa
    

    注意将配置中的你的AWS SSH密钥ID替换为你在AWS IAM控制台上传codecommit_rsa.pub后生成的SSH密钥ID(格式通常为APKA开头的字符串)。

    1. 在Git Bash中重新执行连接验证命令,确认认证成功:
    ssh git-codecommit.us-west-2.amazonaws.com
    
    1. 验证通过后重试git clone操作即可。
  • 可选排查项
    执行git config --list --global检查是否有其他SSH相关的全局配置冲突,确认无误后再重试操作。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 16:39:04