代码之家  ›  专栏  ›  技术社区  ›  Doug Porter

如何从FileZilla FTP客户端的密钥缓存中提取SFTP SSH密钥

  •  12
  • Doug Porter  · 技术社区  · 18 年前

    我已经使用FileZilla通过SFTP连接到服务器,并接受将服务器的SSH密钥添加到FileZilla中的密钥缓存中。

    如何将此缓存密钥提取到密钥文件中,以便可以通过需要密钥文件可用的其他SFTP应用程序使用它?

    我在FileZilla文档中找不到与此相关的任何内容。

    5 回复  |  直到 18 年前
        1
  •  18
  •   Tom Mayfield    18 年前

    Putty也存储主机密钥,但它似乎用十六进制编码。可在HKCUR\Software\SimonTatham\PuTTY\SshHostKeys上找到

        2
  •  7
  •   Doug Porter    16 年前

    托马斯是对的。FileZilla搭载PuTTY的PSFTP程序,并将以十六进制格式编码的保存密钥存储在他列出的注册表项(HKCUR\Software\SimonTatham\PuTTY\SshHostKeys)中。我需要已知_hosts格式的密钥,因此我能够安装 windows version of openssh 根据他的建议,使用ssh keyscan工具点击服务器并以正确的格式保存密钥信息:

    ssh-keyscan -t rsa <my_ftp_ip_address> > c:\known_hosts
    ssh-keyscan -t dsa <my_ftp_ip_address> > c:\known_hosts
    

    谢谢托马斯等人!

        3
  •  6
  •   Nasri Najib    14 年前

    多谢道格曼的提示!


    在运行ssh密钥扫描之前,假设openssh默认为install,则需要运行一些命令(有关详细信息,请阅读quickstart/readme安装)。
    以下是我的命令,允许我获取主机密钥。

    C:\Program Files\OpenSSH\bin>mkgroup -l >> ..\etc\group
    C:\Program Files\OpenSSH\bin>mkpasswd -l >> ..\etc\passwd
    C:\Program Files\OpenSSH\bin>net start opensshd
    The OpenSSH Server service is starting.
    The OpenSSH Server service was started successfully.
    C:\Program Files\OpenSSH\bin>ssh-keyscan -t rsa vivo.sg.m.com > c:\known_hosts
    vivo.sg.m.com SSH-2.0-Sun_SSH_1.1
    
        4
  •  6
  •   drzaus tranceporter    10 年前

    如果您希望使用GUI,可以使用WinSCP FTP client从日志窗口或第一次连接弹出窗口获取主机密钥: https://winscp.net/eng/docs/ssh_verifying_the_host_key

        5
  •  0
  •   Andrew Burns    18 年前

    如果您使用另一个应用程序(例如:PuTTY)连接到服务器,并且它以前没有看到服务器,则系统将提示您接受密钥。

    我明白为什么您可能想这样做,但每个应用程序都可以有自己的方式来存储密钥。