保持 SFTP 连接处于活动状态以避免双重重新认证

保持 SFTP 连接处于活动状态以避免双重重新认证

我正在使用 WinSCP 通过 SFTP 连接到启用了双因素身份验证的 Linux 服务器。连接时,我必须在手机上确认连接。每次文件传输也算作一个单独的“连接”,因此对于每个文件,我都必须检查手机并批准操作。

有什么方法可以保持连接“活跃”,以便我每次想要进行传输时不需要重新连接?这个问题似乎类似,但未得到解答,并特别提到了 Google 双因素。(作为参考,我的服务器使用 Duo Security,如果这有区别的话。)

答案1

您可以尝试使用可以记住您的凭据的代理,例如 Pageant,它通常与 WinSCP 一起安装。根据特定的 2FA 实施以及 2FA 实际保护的内容,这可能会或可能不会解决问题。

如果这不起作用——很可能不会——您只能将 WinSCP 限制为单个连接。不幸的是,这会在一定程度上限制 WinSCP 的功能:后台传输将不再起作用。这会产生一些影响:

  • 在任何上传/下载操作正在进行时,您将无法浏览文件系统。
  • SSH 操作(例如创建 tarball 的快捷方式)仍需要单独的连接,这意味着您必须再次进行身份验证。
  • 您每次只能传输一个文件。
  • 您每次只能排队一个对象(文件或目录)——也就是说,不再有队列。所有操作都在前台进行,您必须等待其完成后才能继续。

要切换此状态,您需要完全禁用后台传输。这并不像想象的那么简单;您需要在两个地方调整设置:

  1. 偏好设置对话框(转移 -> 后台)
  2. 文件传输对话框转接时

WinSCP 网站上的其他有用信息:传输队列

在传输 -> 后台首选项页面中,将最大同时连接数更改为1,默认禁用队列处理,并确保禁用与后台传输相关的任何设置。

在传输时,您将看到传输对话框:

WinSCP 传输对话框

确保Transfer on background联合国检查。

答案2

尝试调整设置“保持连接“来自 WinSCP。在保持连接框,您可以命令 WinSCP 定期发送一些虚拟数据以避免断开连接。此时间段定义为保持连接之间的秒数。在此处找到带有屏幕截图的完整详细信息:http://winscp.net/eng/docs/ui_login_connection

相关内容