我已经使用FileZilla通过SFTP连接到服务器,并接受将服务器的SSH密钥添加到FileZilla中的密钥缓存中。
如何将此缓存密钥提取到密钥文件,以便可以通过需要密钥文件的其他SFTP应用程序使用它?
我无法在与此相关的FileZilla文档中找到任何内容。
答案 0 :(得分:15)
如果您使用标准的openssh控制台客户端(cygwin或来自linux),则主机密钥将存储在〜/ .ssh / known_hosts中,每行一个。从那里,只需要确定您的库需要哪个主机密钥位。
Putty还存储主机密钥,但它似乎以十六进制编码。这些可以在HKCUR \ Software \ SimonTatham \ PuTTY \ SshHostKeys找到
答案 1 :(得分:7)
ssh-keyscan -t rsa <my_ftp_ip_address> > c:\known_hosts
ssh-keyscan -t dsa <my_ftp_ip_address> > c:\known_hosts
谢谢Thomas和SO!
答案 2 :(得分:6)
感谢Dougman的提示!
进一步帮助任何新手阅读你的答案。
在运行ssh-keyscan之前,假设默认情况下openssh是安装的,则需要运行一些命令(有关详细信息,请阅读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
答案 3 :(得分:4)
如果您更喜欢使用GUI,则可以使用WinSCP FTP客户端从日志窗口或首次连接弹出窗口中锁定主机密钥:https://winscp.net/eng/docs/ssh_verifying_the_host_key
答案 4 :(得分:0)
除非我误解你:你不需要。
如果您使用其他应用程序(即:PuTTY)连接到服务器并且之前没有看过服务器,系统将提示您接受该密钥。
我明白为什么你可能想要这样做,但每个应用程序都可以拥有自己的方式来存储密钥。