【问题标题】:Windows 10 OpenSSH key invalid formatWindows 10 OpenSSH 密钥格式无效
【发布时间】:2018-05-31 06:18:57
【问题描述】:

OpenSSH on Windows 10 的最新测试版不接受我的 openssh 格式私钥:

相同的密钥适用于 ssh 随 github 提供的 git shell

Windows 上的 openssh 格式选项是否有我遗漏的或者这是一个错误?

【问题讨论】:

  • 对我来说同样的问题。不仅可以使用 git shell,还可以从 WSL 运行 ssh
  • @Uri 那么您使用的格式可能无效! Git shell ssh 适用于有效格式

标签: windows ssh windows-10 openssh


【解决方案1】:

Windows 10 当前(截至 2018 年 1 月)仅支持 ed25519 键(参考:https://github.com/PowerShell/Win32-OpenSSH/issues/973)。我看到您正在尝试连接到 Amazon Web Services。如果您使用 AWS 控制台管理密钥,则只能使用 RSA 密钥。

但是,如果您尝试连接到现有的 EC2 实例,您可以执行以下操作:

  1. 如果您还没有这样做,请使用命令“ssh-keygen”在 Windows cmd 中创建私钥/公钥。密钥对保存在 .ssh 目录中的 id_ed25519.pub 和 id_ed25519 文件中
  2. 连接到您的 AWS EC2 实例。将 id_ed25519.pub 的内容添加到 .ssh 目录中的 authorized_keys 文件中
  3. 现在您可以使用 Windows 10 SSH 客户端连接到您的 EC2 实例。

【讨论】:

  • 也许您可以添加一种将密钥转换为此标准的方法?
  • 为了使服务器和客户端都能正常工作,必须支持相同的签名协议,但事实并非如此。
【解决方案2】:

试试这个

ssh-keygen -o -a 100 -t ed25519 -f ~/.ssh/id_rsa -C "your email"

并使用此命令捕获文件夹

cat ~/.ssh/id_rsa.pub

希望对您有所帮助。

【讨论】:

    【解决方案3】:

    我得到了这个工作.. 信不信由你,在你的私钥文件的末尾添加一个 LF。 E.G


    -----开始 OPENSSH 私钥-- 钥匙 -----结束 OPENSSH 私钥-----


    如果没有 LF,私钥在 putty、secureCRT、WinSCP、GIT 等方面工作得很好......但是 Windows(由 VisualCode 使用)一直给我“无效格式”

    【讨论】:

    • 是的,只是将行尾从 crlf 更改为 lf 就可以了
    【解决方案4】:

    我遇到了类似的问题。我将 id_rsa 从 Linux 复制到 Windows 10。我知道这可能是行终止问题。于是我下载了适用于 Windows 的 dos2unix https://waterlan.home.xs4all.nl/dos2unix.html,然后运行了 dos2unix id_rsa,然后它就可以工作了。

    【讨论】:

      猜你喜欢
      • 2011-07-27
      • 2023-03-20
      • 2020-09-07
      • 1970-01-01
      • 1970-01-01
      • 2021-03-26
      • 1970-01-01
      • 2012-02-28
      相关资源
      最近更新 更多