我正在尝试按照OSX的说明进行操作
http://wiki.filezilla-project.org/Howto
我可以ssh
不用用户名/密码就可以成功地到达目标服务器(OSX从~/.ssh
目录中提取我的证书),但是我不知道如何让Filezilla做到这一点。
我已经尝试过运行ssh-agent
,但效果不佳。
printenv SSH_AUTH_SOCK
?
/tmp/launch-xi2Fu5/Listeners
我正在尝试按照OSX的说明进行操作
http://wiki.filezilla-project.org/Howto
我可以ssh
不用用户名/密码就可以成功地到达目标服务器(OSX从~/.ssh
目录中提取我的证书),但是我不知道如何让Filezilla做到这一点。
我已经尝试过运行ssh-agent
,但效果不佳。
printenv SSH_AUTH_SOCK
?
/tmp/launch-xi2Fu5/Listeners
Answers:
现在FileZilla -> Preferences -> Connection -> SFTP
,您可以使用来导入私钥。
Command-Shift-G
并输入:~/.ssh
进入您的.ssh
目录
OSX的最新版本具有ssh-agent内置功能,因此无需单独启动它。
以我为例,我只需要在FileZilla的站点设置中将登录类型更改为“交互式”,然后选择SFTP作为协议。
FileZilla显然与ssh-agent对话并处理身份验证。这比将密钥导入FileZilla更好,因为这样可以保持文件密码的保护。
您不需要.ppk
或.pem
键。
ssh-add ~/.ssh/[your private key]
-如果尚未创建SSH密钥,请先运行此命令ssh-keygen -t rsa -f ~/.ssh/[give a name for your keys] -C "[your email]"
sftp://[host ip address you want to connect to]
3)键入用户名:[your username]
4)保留密码和端口字段为空5)单击快速连接FileZilla将能够自动使用您已在SSH代理中加载的密钥。
此页面上的两个说明都讲述了故事的3/4:
是的是正确的:您只需要转到SFTP设置页面以输入SSH密钥(我必须将其格式化为具有.ppk扩展名的腻子密钥-如果允许,FileZilla会为您格式化普通的SSH私钥) 。
ddd是正确的,您必须将登录名设置为“普通”模式(但是您仍然还需要在SFTP设置中输入密钥)。
但是,您还必须在设置中做一件事-必须允许FileZilla保存密码。这在“首选项”->“界面”中:如果选中“不保存密码”框,则将不允许您使用普通模式,然后将不使用ssh,系统将提示您输入密码。
因此,请执行所有三个步骤:
祝好运!
这些解决方案在MacOS(Sierra,High Sierra或Mojave)上都不适合我。重新启动后,将自己的密钥添加到FileZilla设置仍会提示您输入密码。
将以下内容添加到~/.ssh/config
:
Host *
ForwardAgent yes
UseKeychain yes
AddKeysToAgent yes
IdentityFile ~/.ssh/id_rsa
然后在终端中执行以下操作:
ssh-add -K ~/.ssh/id_rsa
然后创建此文件:
〜/ Library / LaunchAgents / local.computername.AddSSHKeysAtLogin.plist
把它放进去:
标签local.mycomputername.AddSSHKeysAtLogin ProgramArguments / usr / bin / ssh-add -A StandardOutPath / dev / null StandardErrorPath / dev / null RunAtLoad
重新启动,您应该能够使用FileZilla,而无需提示输入密码。有用!
我在这里得到了最后一部分:https : //blog.elao.com/en/tech/ssh-agent-does-not-automatically-load-passphrases-on-the-osx-sierra-keychain/