Ошибка WinSCP SSH Неизвестная команда 'ssh-rsa' - PullRequest
0 голосов
/ 07 марта 2019

Контекст: У меня есть файлы CSV, которые я выводил с SQL Server через BCP. Я пытаюсь безопасно перенести файлы в удаленную папку SFTP с помощью WinSCP.

Подробности: Когда я выполняю приведенный ниже пакетный файл через powershell, я выдаю сообщение об ошибке «Неизвестная команда« ssh-rsa »с файлом журнала, показывающим код выхода = 1, что является ошибкой.

Вот как выглядит мой файл синхронизации ...

option batch abort
option confirm off
open sftp://username:password@sftp.redacted.com -hostkey="ssh-rsa 2048 redacted=ssh-rsa 2048 redacted"
synchronize remote D:\redactedDaily_Reports\redacted_Catalog_New_Item /upload/redacted_catalog
exit

и & мой командный файл ...

winscp.com /script=SyncTo_redacted_catalog.txt /log=D:\redacted_Daily_Reports\winscp_log_catalog.txt
pause

Вот фрагмент моего файла powershell и файла журнала ... вывод powershell

. 2019-03-06 23:39:28.379 Access granted
. 2019-03-06 23:39:28.379 Opening session as main channel
. 2019-03-06 23:39:28.447 Opened main channel
. 2019-03-06 23:39:28.583 Started a shell/command
. 2019-03-06 23:39:28.583 --------------------------------------------------------------------------
. 2019-03-06 23:39:28.584 Using SFTP protocol.
. 2019-03-06 23:39:28.584 Doing startup conversation with host.
> 2019-03-06 23:39:28.584 Type: SSH_FXP_INIT, Size: 5, Number: -1
< 2019-03-06 23:39:28.769 Type: SSH_FXP_VERSION, Size: 95, Number: -1
. 2019-03-06 23:39:28.769 SFTP version 3 negotiated.
. 2019-03-06 23:39:28.769 Unknown server extension posix-rename@openssh.com="1"
. 2019-03-06 23:39:28.769 Supports statvfs@openssh.com extension version "2"
. 2019-03-06 23:39:28.769 Unknown server extension fstatvfs@openssh.com="2"
. 2019-03-06 23:39:28.769 We believe the server has signed timestamps bug
. 2019-03-06 23:39:28.769 We will use UTF-8 strings until server sends an invalid UTF-8 string as with SFTP version 3 and older UTF-8 strings are not mandatory
. 2019-03-06 23:39:28.769 Limiting packet size to OpenSSH sftp-server limit of 262148 bytes
. 2019-03-06 23:39:28.769 Getting current directory name.
. 2019-03-06 23:39:28.769 Getting real path for '.'
> 2019-03-06 23:39:28.769 Type: SSH_FXP_REALPATH, Size: 10, Number: 16
< 2019-03-06 23:39:28.837 Type: SSH_FXP_NAME, Size: 23, Number: 16
. 2019-03-06 23:39:28.837 Real path is '/'
. 2019-03-06 23:39:28.837 Startup conversation with host finished.
< 2019-03-06 23:39:28.837 Script: Active session: [1] redacted@sftp.redacted.com
> 2019-03-06 23:39:28.838 Script: ssh-rsa 2048 redacted
< 2019-03-06 23:39:28.838 Script: Unknown command 'ssh-rsa'.
. 2019-03-06 23:39:28.838 Script: Failed
. 2019-03-06 23:39:28.838 Script: Exit code: 1
. 2019-03-06 23:39:28.838 Closing connection.
. 2019-03-06 23:39:28.838 Sending special code: 12
. 2019-03-06 23:39:28.838 Sent EOF message

Вопросы: Почему я поднимаю эту ошибку и как ее исправить? Является ли эта ошибка попыткой сообщить мне, что я использую неверный отпечаток ключа? Если да, то почему именно так: а) я получил этот ключ непосредственно с сервера при первом успешном подключении и б) журнал появляется файл, показывающий, что начальное соединение было успешным?

Пожалуйста, помогите Любые советы или рекомендации очень ценятся - ответы, вероятно, дойдут до приличной аудитории, учитывая, что winscp - довольно популярная утилита. Я провел свое исследование здесь , здесь , здесь , здесь , здесь , здесь и здесь и не нашли подходящего решения.

1 Ответ

0 голосов
/ 07 марта 2019

Это чепуха:
-hostkey="ssh-rsa 2048 redacted=ssh-rsa 2048 redacted"
(где вы видели такой странный синтаксис?)

Это должно быть как: -hostkey="ssh-rsa 2048 xxxxxxxxxxx...="

Хотя в действительности это не объясняет сообщение об ошибке, которое вы получаете - если в части redacted нет некоторых специальных символов (например, двойных кавычек).


В общем, самый простой способ чтобы WinSCP GUI сгенерировал для вас правильный шаблон скрипта .


Или, если вы хотите пойти ручным путем, см .:
Где я могу получить SSHОтпечаток ключа хоста для авторизации сервера?
В частности, раздел «Автоматическая проверка ключа хоста» (хотя вы захотите прочитать статью с самого начала).

Я знаю, что вы сами ссылаетесь на эту статью.Но тогда я не понимаю, как вы могли прийти к своему странному синтаксису.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...