Mac 上的 Filezilla:具有无密码验证的 SFTP?

Mac 上的 Filezilla:具有无密码验证的 SFTP?

我正在尝试按照此处针对 OSX 的说明进行操作

http://wiki.filezilla-project.org/Howto

我可以成功ssh进入目标服务器而无需用户名/密码(OSX 从目录中获取我的证书~/.ssh),但我不知道如何让 Filezilla 执行相同的操作。

我已尝试过仅跑步ssh-agent,但没有多大作用。

答案1

您现在可以使用FileZilla -> Preferences -> Connection -> SFTP它来导入您的私钥。

答案2

OSX 的最新版本已经内置了 ssh-agent,无需单独启动它。

就我而言,我只需在 FileZilla 的站点设置中将登录类型更改为“交互式”,然后选择 SFTP 作为协议。

FileZilla 显然会与 ssh-agent 对话并处理身份验证。这比将密钥导入 FileZilla 更好,因为这样您可以保护文件密码。

答案3

您不需要.ppk.pem钥匙。

  1. 将您的私钥添加到 SSH 代理。在 Mac 中,这是ssh-add ~/.ssh/[your private key]- 如果您尚未创建 SSH 密钥,请先运行此命令ssh-keygen -t rsa -f ~/.ssh/[give a name for your keys] -C "[your email]"
  2. 1) 打开 FileZilla 2) 输入主机:sftp://[host ip address you want to connect to]3) 输入用户名:[your username]4) 将密码和端口字段留空 5) 单击“快速连接”

FileZilla 将能够自动使用您在 SSH 代理中加​​载的密钥。

答案4

这些解决方案在 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/本地.计算机名称.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/

相关内容