Каждый день новый ключ хоста с использованием MSFTP и WinSCP
-
16-09-2019 - |
Вопрос
Я переношу файл с одного сервера на другой, используя "Core FTP mini-sftp-server" на стороне источника и WinSCP на стороне назначения (оба сервера работают под управлением Windows).
Я вхожу в эти две машины, используя учетную запись локального администратора, которые одинаковы на обоих серверах.Я выполнял этот процесс вручную:
- Запустите MSFTP-сервер в исходном коде
- Запустите WinSCP в пункте назначения, подключитесь к источнику и получите файл.
Теперь я хочу автоматизировать это, и я попробовал следующее
Начать msftp
из командной строки в исходном коде.
По месту назначения в winscp.exe
консоль:
open login:password@IPAdress
get <file> <destination>
close
exit
Проблема в том, что если я делаю это в первый раз каждый день, он просит меня обновить ключ на стороне назначения, говоря:
"ПРЕДУПРЕЖДЕНИЕ О ПОТЕНЦИАЛЬНОМ НАРУШЕНИИ БЕЗОПАСНОСТИ!Ключ хоста сервера не соответствует тому, который есть в кэше WinSCP.Это означает, что либо сервер администратор зарядил ключ хоста, сервер при определенных обстоятельствах выдает другой ключ, либо вы действительно подключились к другому компьютеру, притворяющемуся сервером"
Я должен сделать это вручную (нажмите на Обновить) сначала, а затем для следующих копий автоматизация работает.
Вопрос:
Как я могу обновить ключ с помощью командной строки при подключении к серверу?
Могу ли я запретить источнику генерировать новый ключ ежедневно?Или я должен это сделать?
Решение
Вы должны запретить исходному серверу генерировать новый ключ - для этого нет абсолютно никаких причин.Открытый ключ сервера идентифицирует сервер, и поэтому этот идентификатор не должен быть изменен.
Другие советы
Вы теряете какую-либо безопасность, подключаясь к SSH-серверу, который каждый день меняет открытый ключ.
В любом случае, если это ваш единственный вариант, недавний WinSCP позволяет автоматически принимать любой ключ хоста с помощью -hostkey=*
переключатель из open
команда:
open -hostkey=*
Делая это, вы теряете всякую безопасность, но вы уже есть, так что это не имеет никакого значения.