Kiro Remote SSH 无法连接远程服务器问题排查与解决

一、问题背景

在使用 Kiro(Open Remote SSH 扩展) 连接远程服务器(AlmaLinux,GPU 节点)时,出现无法连接的问题,主要报错包括:

text 复制代码
Couldn't get identities from OpenSSH agent
Failed to connect to agent
Unable to establish SSL connection.
Error downloading server from https://prod.download.desktop.kiro.dev/...

导致 Kiro Server 无法在远程服务器安装并启动 ,从而连接失败。下图无法正确安装:


二、问题总体结论(先看)

这是一个"本地 SSH Agent 问题 + 远程服务器 HTTPS 下载失败"的组合问题

  • 本地问题:
    👉 Windows 的 ssh-agent 服务被禁用,未运行
  • 远程问题(核心失败原因):
    👉 远程服务器无法通过 HTTPS 正常下载 kiro-server(SSL / CA / 出网受限)

三、问题一:Windows 本地 ssh-agent 未启动

1️⃣ 现象

PowerShell 中执行:

powershell 复制代码
Get-Service ssh-agent

结果:

text 复制代码
Status   Name       DisplayName
------   ----       -----------
Stopped  ssh-agent  OpenSSH Authentication Agent

执行:

powershell 复制代码
ssh-add -L

报错:

text 复制代码
Error connecting to agent: No such file or directory

2️⃣ 原因

  • Windows 的 OpenSSH Authentication Agent 服务被禁用

  • ssh-add 无法连接到 agent 管道

  • Kiro / Remote-SSH 报错:

    text 复制代码
    Couldn't get identities from OpenSSH agent

四、解决方案一:启用并启动 ssh-agent(推荐)

✅ 方法一:管理员 PowerShell(最稳)

右键 PowerShell → 以管理员身份运行,执行:

powershell 复制代码
Set-Service -Name ssh-agent -StartupType Automatic
Start-Service ssh-agent
Get-Service ssh-agent

期望结果:

text 复制代码
Status   Name       DisplayName
------   ----       -----------
Running  ssh-agent  OpenSSH Authentication Agent

✅ 方法二:服务管理器(GUI)

  1. Win + Rservices.msc

  2. 找到 OpenSSH Authentication Agent

  3. 设置:

    • 启动类型:自动
    • 服务状态:启动



五、把 SSH 私钥加入 agent

powershell 复制代码
ssh-add $env:USERPROFILE\.ssh\id_ed25519
ssh-add -L

正常应看到:

text 复制代码
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAI... C:\Users\xxx\.ssh\id_ed25519

到这里正常就可以连接了不行再尝试以下方法:

六、强烈建议:绕过 ssh-agent 的"兜底方案"

即使 ssh-agent 正常,也建议强制指定私钥,避免以后再被 agent 状态影响。

编辑或创建文件:

复制代码
C:\Users\xxx\.ssh\config

内容如下:

ssh 复制代码
Host sx671pe
  HostName 10.222.222.144
  User root
  IdentityFile C:\Users\xxx\.ssh\id_ed25519
  IdentitiesOnly yes

👉 这样 Kiro / SSH 永远直接使用该私钥,不依赖 agent。


七、问题二(核心):远程服务器无法下载 kiro-server(SSL 失败)

1️⃣ 关键报错

text 复制代码
Unable to establish SSL connection.
Error downloading server from
https://prod.download.desktop.kiro.dev/releases/remotes/...

2️⃣ 发生阶段

  • SSH 已成功登录远程服务器
  • Kiro 尝试在远程自动下载并安装 kiro-server
  • HTTPS 下载失败 → 安装脚本返回非 0 → 连接失败

八、远程问题常见原因总结

类别 说明
CA 证书缺失 AlmaLinux 默认环境常见
服务器不允许出公网 HPC / 内网集群
DNS 解析失败 内部 DNS / 防火墙
需要代理 但未配置 http(s)_proxy

九、远程服务器排查命令(推荐)

登录远程服务器后执行:

bash 复制代码
# DNS 是否正常
getent hosts prod.download.desktop.kiro.dev

# HTTPS 证书 & 连接测试
curl -I -v https://prod.download.desktop.kiro.dev/

# 直接测试下载
curl -L -v -o /tmp/kiro-reh.tgz \
https://prod.download.desktop.kiro.dev/releases/remotes/<commit>/kiro-reh-linux-x64.tar.gz

十、解决方案二:修复 CA 证书(最常见)

AlmaLinux 上执行:

bash 复制代码
sudo dnf makecache
sudo dnf install -y ca-certificates curl wget
sudo update-ca-trust

然后重新测试 curl -I https://prod.download.desktop.kiro.dev/


十一、解决方案三(最稳):离线手动安装 kiro-server(推荐 HPC 场景)

🚀 适用于:远程服务器不能访问公网

1️⃣ 本地(Windows)下载

text 复制代码
https://prod.download.desktop.kiro.dev/releases/remotes/<commit>/kiro-reh-linux-x64.tar.gz

2️⃣ 上传到远程服务器

powershell 复制代码
scp kiro-reh-linux-x64.tar.gz dlh@10.249.218.44:/tmp/

3️⃣ 远程解压到指定目录

bash 复制代码
COMMIT=<commit>
SERVER_DIR="$HOME/.kiro-server/bin/$COMMIT"

mkdir -p "$SERVER_DIR"
tar -xf /tmp/kiro-reh-linux-x64.tar.gz --strip-components 1 -C "$SERVER_DIR"

ls "$SERVER_DIR/bin/kiro-server"

完成后重新用 Kiro 连接即可。


十二、最终总结

✅ 已解决

  • Windows ssh-agent 未启动问题
  • SSH 身份加载失败问题

⚠️ 仍需关注

  • 远程服务器 HTTPS 下载失败才是最终阻塞点
  • 推荐优先使用 离线安装方案,最稳定、最省时间
相关推荐
Sinclair1 天前
简单几步,安卓手机秒变服务器,安装 CMS 程序
android·服务器
Rockbean2 天前
用40行代码搭建自己的无服务器OCR
服务器·python·deepseek
蝎子莱莱爱打怪2 天前
Centos7中一键安装K8s集群以及Rancher安装记录
运维·后端·kubernetes
埃博拉酱2 天前
VS Code Remote SSH 连接 Windows 服务器卡在"下载 VS Code 服务器":prcdn DNS 解析失败的诊断与 BITS 断点续传
windows·ssh·visual studio code
茶杯梦轩2 天前
CompletableFuture 在 项目实战 中 创建异步任务 的核心优势及使用场景
服务器·后端·面试
海天鹰3 天前
【免费】PHP主机=域名+解析+主机
服务器
DianSan_ERP3 天前
电商API接口全链路监控:构建坚不可摧的线上运维防线
大数据·运维·网络·人工智能·git·servlet
呉師傅3 天前
火狐浏览器报错配置文件缺失如何解决#操作技巧#
运维·网络·windows·电脑
不是二师兄的八戒3 天前
Linux服务器挂载OSS存储的完整实践指南
linux·运维·服务器
芝士雪豹只抽瑞克五3 天前
Nginx 高性能Web服务器笔记
服务器·nginx