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

如何在Windows机器的WebStorm中复用Ubuntu生成的SSH私钥连接远程Linux服务器?

如何在Windows机器的WebStorm中复用Ubuntu生成的SSH私钥连接远程Linux服务器?

我之前也碰到过一模一样的情况,别着急,咱们一步步来排查解决:

1. 先确保私钥文件格式和存放位置正确

你复制的私钥内容绝对不能把所有字符挤在一行,必须严格保留原格式:

  • 第一行单独是 -----BEGIN RSA PRIVATE KEY-----
  • 中间的密钥内容分成多行(和你在Ubuntu上看到的一致)
  • 最后一行单独是 -----END RSA PRIVATE KEY-----

然后把这个文件存到Windows的默认SSH目录下:C:\Users\你的用户名\.ssh\id_rsa(如果.ssh文件夹不存在,自己新建一个),这样系统和WebStorm都能自动识别到它。

2. 关键!设置私钥文件的权限(Windows下最容易踩坑的点)

Windows的文件权限默认比较宽松,而SSH协议要求私钥只能被你自己访问,否则会判定为不安全而拒绝使用:

  • 右键你保存的id_rsa文件 → 点击「属性」→ 切换到「安全」标签页 → 点击「高级」
  • 点击「禁用继承」,然后选择「从此对象中删除所有继承的权限」
  • 点击「添加」→ 选择「主体」→ 找到你当前的Windows用户名,添加进去
  • 给这个用户设置「完全控制」的权限,然后删掉其他所有用户/组的权限
  • 最后点击确定保存所有设置

3. 检查WebStorm的SSH配置

打开WebStorm,依次进入「Settings/Preferences」→「Tools」→「SSH Configurations」:

  • 新建或编辑你的远程服务器配置
  • 在「Authentication」区域选择「Private key」,如果你的私钥存到了默认路径,直接选「Default private key files」就行;如果存在其他路径,就手动选择你保存的id_rsa文件
  • 注意:如果原来的私钥设置了密码(passphrase),WebStorm会弹出输入框,一定要输入正确的密码,否则也会提示「Invalid Credentials」

4. 用Windows自带的SSH客户端测试(排除WebStorm的问题)

先别着急找WebStorm的问题,打开PowerShell或者命令提示符,输入以下命令测试连接:

ssh -i C:\Users\你的用户名\.ssh\id_rsa 你的远程服务器用户名@服务器IP地址
  • 如果这里提示「Permissions for 'id_rsa' are too open」,说明权限没设置对,回到步骤2重新调整
  • 如果提示「invalid format」,说明私钥文件的格式错了,重新复制并确保换行正确
  • 如果这里能成功连接,那问题就在WebStorm的配置上,再检查一遍步骤3的设置

5. 可选:转换私钥为兼容格式(针对特殊情况)

如果你的私钥是比较旧的PEM格式(就是你现在这种开头的),有些新版本的SSH客户端可能兼容性不太好,可以用Windows自带的ssh-keygen工具转换一下:

ssh-keygen -p -f C:\Users\你的用户名\.ssh\id_rsa

按提示操作就行,如果原来没有密码,直接按回车跳过设置,这样能确保私钥是标准的OpenSSH格式。

按照这些步骤来,应该就能解决「Invalid Credentials」的问题啦!

备注:内容来源于stack exchange,提问作者Mohsen

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.16 11:29:33