
Я пытаюсь настроить пакетный файл для автоматизированной транзакции, однако мои тесты пока не увенчались успехом.
У меня есть открытый ключ сервера, с которого происходит подключение. Он был сохранен в виде файла .pkk и импортирован в WinSCP.
Я записал результаты в текстовый файл, вот как это выглядит:
Username: 4m4nseth (Password: No, Key File: No)
Файл ключа есть, но WinSCP по какой-то причине его не обнаруживает.
При запуске пакетного файла я получаю следующее сообщение:
Имя сеанса: 4m4nseth@IP-адрес Имя хоста: IP-адрес (порт: 22) Имя пользователя: 4m4nseth (Пароль: Нет, Ключевой файл: Нет) Туннель: Нет Протокол передачи: SFTP (SCP) Тип пинга: -, Интервал пинга: 30 сек; Тайм-аут: 15 сек
Но следующее, если выполняется в WinSCP
Имя сеанса: 4m4nseth@ipaddress Имя хоста: ipaddress (Порт: 22) Имя пользователя: 4m4nseth (Пароль: Нет, Ключевой файл: Да) Туннель: Нет Протокол передачи: SFTP (SCP)
Как видите, файл ключа сохранен, но при запуске в качестве пакетной команды он не распознается.
решение1
Я думаю, что вы перепутали местами открытый и закрытый ключи.
Если вы используете WinSCP для копирования информации на сервер (или с сервера), вам необходимо сгенерировать открытый/закрытый ключ на компьютере, на котором запущен WinSCP, настроить WinSCP с использованием закрытого ключа и поместить открытый ключ в соответствующее место на сервере (в Linux в ~username/.ssh/authorized_keys
Хотя это казалось мне поначалу нелогичным (давно!!), на самом деле это имеет смысл, если вы работаете с логикой. Может помочь следующее размышление об этом -
- Закрытый ключ должен быть закрытым, то есть это должна быть только та информация, которую вам следует знать.
- Если сервер принадлежит кому-то другому, вы вряд ли захотите передавать ему то, что
известно только вам, поэтому не сообщайте ему свой закрытый ключ. - С другой стороны, если вы дадите им свой открытый ключ, а их система будет скомпрометирована, и кто-то другой добавит ваш открытый ключ в их настройки, это означает только то, что вы можете получить доступ к их системе, вы ничего не потеряли. Если же, с другой стороны, вам пришлось дать им свой закрытый ключ, вы потеряете над ним контроль.