4

Я использую WinSCP для подключения через SFTP к серверу Linux с двухфакторной аутентификацией на месте. Когда я подключаюсь, я должен подтвердить соединение на своем мобильном телефоне. Каждая передача файла также считается отдельным "соединением", и поэтому для каждого файла я должен проверить свой телефон и одобрить действие.

Есть ли способ сохранить соединение "активным", чтобы я не переподключался каждый раз, когда хочу сделать перевод? Этот вопрос кажется похожим, но остается без ответа, и в частности упоминается Google с двумя факторами. (Для справки, мой сервер использует Duo Security, если это имеет значение.)

2 ответа2

4

Вы можете попробовать использовать агент, который запоминает ваши учетные данные, например, Pageant, который обычно устанавливается вместе с WinSCP. В зависимости от конкретной реализации 2FA и от того, что на самом деле защищает 2FA, это может или не может решить проблему.

Если это не сработает - что, вероятно, не сработает - вы застряли, ограничивая WinSCP одним соединением. К сожалению, это несколько ограничит функциональность WinSCP: фоновые передачи больше не будут работать. Это имеет несколько эффектов:

  • Вы не сможете просматривать файловую систему во время выполнения любой операции загрузки / выгрузки.
  • Операции SSH, такие как ярлыки для создания tar-архивов, по-прежнему будут требовать отдельного соединения, что означает, что вам придется снова проходить аутентификацию.
  • Вы сможете передавать только один файл за раз.
  • Вы сможете ставить в очередь только один объект за раз (файл или каталог), то есть очереди больше нет. Все происходит на переднем плане, и вы должны дождаться его окончания, прежде чем продолжить.

Чтобы переключить это состояние, вам необходимо полностью отключить фоновые передачи. Это не так просто, как могло бы быть; Есть два места, где вам нужно настроить параметры:

  1. Диалог настроек (Перенос -> Фон)
  2. Диалог передачи файлов во время передачи

Дополнительная полезная информация на веб-сайте WinSCP: Очередь передачи

На странице «Передача -> Настройки фона» измените максимальное количество одновременных подключений на 1 , отключите обработку очереди по умолчанию и убедитесь, что все параметры, связанные с фоновыми передачами, отключены.

Во время передачи вы увидите диалоговое окно передачи:

Диалог переноса WinSCP

Убедитесь, что Transfer on background не проверена.

3

Попробуйте настроить параметр « Keepalive » из WinSCP. В поле Keepalives вы можете приказать WinSCP отправлять некоторые фиктивные данные через регулярные промежутки времени, чтобы избежать отключения. Этот период определяется с секундами между keepalive. Найдите полную информацию со скриншотами здесь: http://winscp.net/rus/docs/ui_login_connection

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .