![]() |
|
Работа с WinSCP. Ошибка: does not match pattern | ☑ | ||
---|---|---|---|---|
0
Radion
22.11.22
✎
18:59
|
Работаем с sftp, выкладываем файлы из 1с для склада. Получили ошибку, после обновления сервиса (сменили формат ssh-rsa на ed25519) на стороне склада (выслали новые параметры ключа). При заполнении "SessionOptions",
конкретно параметра "SshHostKeyFingerprint", получаю ошибку: Произошла исключительная ситуация (WinSCPnet): SSH host key fingerprint "Ключ" does not match pattern /((ssh-rsa|ssh-dss|ssh-ed25519|ecdsa-sha2-nistp(256|384|521... Кто сталкивался, в чем может быть проблема? |
|||
1
Garykom
гуру
22.11.22
✎
19:49
|
(0) загляни в C:\Users\ИмяПользователя\.ssh
|
|||
2
Radion
22.11.22
✎
22:27
|
(1) не нашел файла с расширением ssh
|
|||
3
Garykom
гуру
22.11.22
✎
22:31
|
(2) это не файл а каталог
|
|||
4
Garykom
гуру
22.11.22
✎
22:32
|
||||
5
Garykom
гуру
22.11.22
✎
22:34
|
хотя у тебя winscp так что https://superuser.com/questions/1215002/known-hosts-file-for-winscp
|
|||
6
Radion
23.11.22
✎
13:23
|
(0) не совсем понимаю, зачем смотреть папку ssh. Нам выслали два файла ключ и сертификат как понимаю, для подключения. Отправка файла как я понимаю происходит через подключение программы WINSCP. В момент подключения через com объект, и установки параметров объекта происходит ошибка. Человек, который высылал файлы ключей сказал, что ssh-rsa устарел обмен и работает как ed25519.
|
|||
7
Radion
23.11.22
✎
13:26
|
sessionOptions = Новый COMОбъект("WinSCP.SessionOptions");
sessionOptions.HostName = ПутьFTP; sessionOptions.UserName = Пользователь; sessionOptions.PortNumber = PortNumber; sessionOptions.SshHostKeyFingerprint= SshHostKeyFingerprint; ---------------------------------- Здесь происходит ошибка "does not match pattern" |
|||
8
Kassern
23.11.22
✎
13:29
|
(7) Вы сам winscp открывали, пробовали зайти на ресурс?
|
|||
9
Radion
23.11.22
✎
13:38
|
(7) Если на диске C открывать WinSCP, то я подключаюсь к sftp. Вижу папки, и могу вручную скопировать туда файл.
|
|||
10
Kassern
23.11.22
✎
13:40
|
(9) Так вот, когда вы подключаетесь, там можно скопировать SshHostKeyFingerprint ключ. Его же и надо вставить в sessionOptions.SshHostKeyFingerprint=
|
|||
11
Radion
23.11.22
✎
13:40
|
В инете нашел, описание и решение подобной ошибки: https://winscp.net/eng/docs/message_key_fingerprint_does_not_match
Но я так и не понял, (ТАМ ПРИВЕДЕН ПРИМЕР) как: Base64-encoded SHA-256 SSH host key fingerprint: ssh-rsa 2048 2EPqmpSRaRtUIqwvm15rzavssrhHxJ3avJWh9mBaz8M= Кодировать в: Hex-encoded SHA-256 TLS host certificate fingerprint: b0:ea:9e:a2:0b:90:58:72:4c:dc:bc:5d:83:0e:bf:02:ef:28:9d:b8:8e:26:bc:25:bd:36:4b:17:50:1b:c8:da |
|||
12
Radion
23.11.22
✎
13:42
|
В инете просмотрел кучу онлайн кодировщиков, но не получил результат кодирования строки:
ssh-rsa 2048 2EPqmpSRaRtUIqwvm15rzavssrhHxJ3avJWh9mBaz8M= ,в итоговую строку: b0:ea:9e:a2:0b:90:58:72:4c:dc:bc:5d:83:0e:bf:02:ef:28:9d:b8:8e:26:bc:25:bd:36:4b:17:50:1b:c8:da |
|||
13
Kassern
23.11.22
✎
13:51
|
(11) В вашей же ссылке "Самый простой способ получить отпечатки пальцев в правильном формате — заставить WinSCP сгенерировать для вас шаблон кода "
|
|||
14
Kassern
23.11.22
✎
13:51
|
Я вам и говорю, взять уже сгенерированный правильный ключ и вставить в 1с
|
|||
15
Radion
23.11.22
✎
14:51
|
(14) да спасибо, полазил по WINSCP. В меню "Generate session URL/code", закладка ".Net assembly code" нашел примеры SessionOption. Скопировал от туда SshHostKeyFingerprint и о чудо заработало) PS Код кстати не шестнадцатеричном формате.
Всем Спасибо!!! |
|||
16
Garykom
гуру
23.11.22
✎
14:53
|
(15) а лежать оно должно в (5)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |