Sshhostkeyfingerprint где взять в winscp
Через оконный режим WinSCP к SFTP подключаюсь на ураа. Вижу файлы и копирую.
Пришло время настроить автоматическое копирование файлов.Код скопировал из WinSCP. Далее запускаю, но вместо того чтобы подключиться, запускается WinSCP и спрашивает логин который при ввода любого логина отправляет лесом.
Скопированный код из WinSCP
Помогите написать код подключение к SFTP и копирование файлов из него. __________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
Не работает SFTP подключение
Здравствуйте! Почему-то не работает SFTP подключение (Проверял через psftp и FileZilla). Думаю, что.
Подключение к SFTP серверу через TC
Здравствуйте! Использую для подключения к FTP-серверам программу Total Commander. Но встала такая.
SFTP
Debian 7.0 SFTP Как создать пользователя и выдать ему папку /home/mserv/ и чтобы он не смог.
Честно говоря сталкиваюсь с SFTP тоже первый раз, всю жизнь использовал FTP и не было проблем.
Чтобы подключиться к SFTP это просто извращение: указываешь ХОСТ, логин и пароль, далее указываешь Тунель SSH опять ХОСТ и Логин, далее указываешь файл с закрытым ключем. Это просто взрыв мозга. Зачем такие сложности не понимаю.
Буду рад если поможете. Сейчас получаю ошибку:
Работа с sftp в QT
Подскажите, какими классами для этого пользоваться, QFtp может с этим чудо-протоколом работать?
delphi и sftp
Пытаюсь приконектиться к sftp через IdFTP. Тупо висит и ничего не происходит, либо socket.
Редактор + SFTP
Хочется найти что-то похожее на WinSCP только с подсветкой синтаксиса и автоматическими пробелами.
Sublime text 2 sftp
какие причины могут быть что не подключается через этот плагин к серваку? Данные подключения.
Не подключается FileZilla по SFTP
Привет всем! Тут такая головная боль, отвратительно плохо происходит соединение по SFTP.
Как подключиться по SFTP?
добрый день. У меня есть код который конектиться к фтп серверу, скачивая файл оттуда void.
Вопрос как указать Протокол и режим шифрования? Кто-нибудь подключал WinSCP из 1с с протоколом WebDAV ?
Do not set the PortNumber and the SshHostKeyFingerprint .
Do not set the PortNumber and the SshHostKeyFingerprint .
Do not set the PortNumber and the SshHostKeyFingerprint .
тот же вопрос для FTPs
как передать указанные ниже параметры, если нет доступа к таким обхъектам?
тот же вопрос для FTPs
как передать указанные ниже параметры, если нет доступа к таким обхъектам?
Спасибо, разобрался. Получилось используя ParseUrl. Только сертификат пришлось передавать дополнительно, но это не проблема он текстовый.
sessionOptions = Новый COMОбъект("WinSCP.SessionOptions"); //Создаем объект SessionOptions
sessionOptions.ParseUrl("ftpes://user:[email protected]/");
sessionOptions.TlsHostCertificateFingerprint="11:22:b0:a6:1c:db:c7:33:a2:d2:a6:ef:f0:44:55:c8:08:d0:b8:66";
session = Новый COMОбъект("WinSCP.Session"); //Создаем объект Session
session.Open(sessionOptions);
Do not set the PortNumber and the SshHostKeyFingerprint .
тот же вопрос для FTPs
как передать указанные ниже параметры, если нет доступа к таким объектам?
Mark Fishman wrote:
Спасибо, разобрался. Получилось используя ParseUrl. Только сертификат пришлось передавать дополнительно, но это не проблема он текстовый.
sessionOptions = Новый COMОбъект("WinSCP.SessionOptions"); //Создаем объект SessionOptions
sessionOptions.ParseUrl("ftpes://user:[email protected]/");
sessionOptions.TlsHostCertificateFingerprint="11:22:b0:a6:1c:db:c7:33:a2:d2:a6:ef:f0:44:55:c8:08:d0:b8:66";
session = Новый COMОбъект("WinSCP.Session"); //Создаем объект Session
session.Open(sessionOptions);
Do not set the PortNumber and the SshHostKeyFingerprint .
тот же вопрос для FTPs
как передать указанные ниже параметры, если нет доступа к таким объектам?
К сожалению 1С пока не позволяет своими средствами обмениваться файлами с SFTP сервером.
Столкнувшись с этой проблемой, оптимальным для себя выбрал вариант с использованием бесплатного SFTP клиента:WinSCP.
Я не нашел в сети примеров работы 1С с этой утилитой через COM-соединение, поэтому выкладываю свой. Возможно кому-то будет полезен.
Спасибо за интересную информацию - взял на заметку. Отдельное спасибо за ссылки по теме - будем разбираться. (2) Vladuha, SFTP и FTPS - это разные вещи. SFTP - это фтп ssh сервера, а FTPS - это фтп через SSL/TLS. SagittariusA; Orlando Skibraves; CratosX; krosaf4eg; kashafeev; ram3; + 6 – Ответить (4) о я тоже думал 8.3 SSL научили, а там тунели запилили Да действительно, заявлено что 8.3 умеет устанавливать FTPСоединение по SSL, не пробовал. Я привел рабочий пример для 8.2. Спасибо за информацию норм, а я когда-то лет 7 назад для 8.1 настраивал какого-то ftp-клиента на сервере, прописывал профили, а потом вызывал через КомандаСистемы.
COM - это хорошо
а 8.3 - лучше :) (6) vano-ekt,
Как выяснилось, 8.3 тоже не умеет работать с SFTP Спасибо, свое время тоже пришлось поизвращатся с sftp
Добрый день!
Очень благодарен за информацию!
Только у меня не получается подключиться.
Не пойму что нужно указать в поле "SshHostKeyFingerprint"
где взять значение для этого поля?
Через обычного клиента WinSCP подключаюсь нормально. Там просто указываю адрес, юзера и пароль.
Ребята, а что таки писать в поле sessionOptions.SshHostKeyFingerprint ?
система мне отвечает так:
Соединение неожиданно разорвано. Сервер вернул код завершения команды 0.
вот от куда беру код:
(16) sandybaev,какая именно команда возвращает ошибку, .Open ? С этими же параметрами через саму программу подключиться удается?
(17) ram3, Все, брат. Получилось. В параметр SshHostKeyFingerprint Я передал публичный ключ сгенерированный самим sftp серваком. А ошибка подключения была в изменненом пароле администратора (я об этом узнал потом).
Огромное спасибо вроде все заработало.
ТОлько единственное не пойму зачем ты перемещаешь файл этой командой -
ПереместитьФайл(ВыгруженныйФайл.FileName, ХранилищеВыгруженныхФайлов);
Если на сервер ты уже закидываешь эти файлы командой
Помогите
Как подключится без пароля с приват ключем.
sessionOptions = Новый COMОбъект("WinSCP.SessionOptions"); //Создаем объект SessionOptions
sessionOptions.HostName = "1.1.1.1";
sessionOptions.UserName = "log";
//sessionOptions.Password = "mypassword";
sessionOptions.PortNumber = "22";
sessionOptions.SshHostKeyFingerprint = "ssh-rsa 2048 010101010110101001012010";
sessionOptions.SshPrivateKeyPath = "С:\1111.ppk";
session = Новый COMОбъект("WinSCP.Session"); //Создаем объект Session
//параметр необходимо использовать если пути регистрации DLL и исполняемого файла различны
session.ExecutablePath = "C:\Program Files (x86)\WinSCP\winscp.exe";
Ошибка:
: Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (WinSCPnet): Disconnected: No supported authentication methods available (server sent: publickey)
Все необходимые файлы и пример обработки обмена во вложении.
Я привел пример только основных возможностей, которые сам использовал. У библиотеки довольно много классов и методов и при необходимости возможности использования можно значительно расширить. Пример работы с WinSCP через командную строку
Related Posts
71 Comments
Так ведь 8.3 умеет ЗащищенноеСоединениеOpenSSL
Да действительно, заявлено что 8.3 умеет устанавливать FTPСоединение по SSL, не пробовал. Я привел рабочий пример для 8.2. Спасибо за информацию
(4) awk, ваша правда, перепутал
(4) о я тоже думал 8.3 SSL научили, а там тунели запилили
Как выяснилось, 8.3 тоже не умеет работать с SFTP
Спасибо, свое время тоже пришлось поизвращатся с sftp
Очень благодарен за информацию!
Только у меня не получается подключиться.
где взять значение для этого поля?
Через обычного клиента WinSCP подключаюсь нормально. Там просто указываю адрес, юзера и пароль.
Установил приложение, зарегил библиотеку, но все равно при попытке создать COM-объект в 1С, ругается
(11) d_control, что нашел?
Ребята, а что таки писать в поле sessionOptions.SshHostKeyFingerprint ?
система мне отвечает так:
Соединение неожиданно разорвано. Сервер вернул код завершения команды 0.
вот от куда беру код:
какая именно команда возвращает ошибку, .Open ? С этими же параметрами через саму программу подключиться удается?
(17) ram3, Все, брат. Получилось. В параметр SshHostKeyFingerprint Я передал публичный ключ сгенерированный самим sftp серваком. А ошибка подключения была в изменненом пароле администратора (я об этом узнал потом).
Огромное спасибо вроде все заработало.
Если на сервер ты уже закидываешь эти файлы командой
Как теперь я могу создавать и менять папки на sftp серваке.
Просто тут пишу обработку для обмена а она по ТЗ должна уметь создавать и менять папки.
и плюсани уж за публикацию)
(22) ram3, Все, плюсанул вроде как. Почитаю на досуге. Спасибо большое. Тебе бы дальше эту тему развить. желательно с обилием скринов 🙂
(22) ram3, отличная публикация! Есть вопрос по такой задаче: необходимо синхронизировать файлы командой SynchronizeDirectories. Пишу:
Но не знаю, что ставить в первый параметр. По-идее, там должен быть класс SynchronizationMode mode (Например: SynchronizationMode.Local, SynchronizationMode.Remote and SynchronizationMode.Both).
Как его объявить в 1С?
(25) ram3, пробовал, не получилось. Есть ещё какие-нибудь предложения?
думаю можно так:
но не уверен, надо пробовать.
мне это не нужно было, сейчас к сожалению времени нет разбираться. Посмотри примеры на сайте разработчика, может что найдешь
Для 7.7 нечто подобное реально?
(28) Пользователь 1С, почему нет? С COM Объектами 7.7 вроде как умеет. Код только немного переписать
спасибо за чудесную реализацию.
в сети навалом обработок, но все они работают через командную строку, а тут COM-соединение. То что доктор прописал )))) в благодарность скачал, хотя и качать ничего не нужно, все понятно из текста статьи
SSH-ключи используются для идентификации клиента при подключении к серверу по SSH-протоколу . Используйте этот способ вместо аутентификации по паролю.
SSH-ключи представляют собой пару — закрытый и открытый ключ. Закрытый должен храниться в закрытом доступе у клиента, открытый отправляется на сервер и размещается в файле authorized_keys.
Создание SSH-ключей в Linux на примере CentOS
На клиентской стороне должен быть установлен пакет ssh (openssh). На серверах FirstVDS с шаблонами по умолчанию необходимое ПО уже установлено.
На клиентском компьютере в командной строке выполните команду генерации ключей:
Введите путь файла, в который будут помещены ключи. Каталог по умолчанию указан в скобках, в примере /домашний_каталог/.ssh/id_rsa . Если хотите оставить расположение по умолчанию, нажмите Enter .
Пароль (passphrase) используется для ограничения доступа к закрытому ключу. Пароль усложнит использование ключа третьими лицами в случае утраты. Если не хотите использовать секретную фразу, нажмите Enter без заполнения строки.
Успешно сгенерировав пару ключей, вы увидите уведомление:
Открытый ключ хранится в файле /домашний_каталог/.ssh/id_rsa.pub , закрытый — /домашний_каталог/.ssh/id_rsa .
Скопируйте открытый ключ на сервер в файл /домашний_каталог/.ssh/authorized_keys . Одной строкой:
Или откройте этот файл на сервере редактором vi и вставьте строку с открытым ключом после ssh-rsa .
Ещё один способ скопировать ключ в authorized_keys — команда echo , которая помещает строку в конец файла.
Теперь можно отключить на сервере аутентификацию по паролю и использовать только SSH-ключи.
Создание SSH-ключей на Windows с PuTTYgen
Если вы используете ОС Windows, то подключиться по SSH к вашему (Linux) серверу можно через PuTTY или OpenSSH . Генерация ключей в этом случае выполняется также при помощи этих программ. В примере мы используем клиент PuTTY.
Запустите приложение PuTTYgen , которое устанавливается вместе с PuTTY.
Выберите тип ключа SSH2-RSA и нажмите Generate .
В процессе генерации ключей несколько раз произвольно проведите мышкой по экрану приложения для создания случайных величин, используемых для ключей.
После завершения создания ключей открытый ключ выводится на экран, закрытый хранится в памяти приложения. Чтобы сохранить эти ключи нажмите Save public key и Save private key . Укажите расположение файлов с ключами.
При сохранении закрытого ключа, если не заполнено поле Key passphrase , появится запрос «Хотите ли вы сохранить ключ без секретной фразы?»
Теперь открытый ключ необходимо скопировать на сервер в файл authorized_keys . Используйте WinSCP или другой клиент для работы с файлами на удалённом Linux-сервере. Вы можете скопировать файл с открытым ключом целиком на сервер, чтоб его копия хранилась в папке .ssh
Откройте файл authorized_keys через WinSCP и файл, в который вы сохранили открытый ключ (public), на локальном компьютере текстовым редактором. Скопируйте значение ключа, сохраните и закройте файл в WinSCP.
При запуске PuTTY укажите путь к закрытому ключу на локальном компьютере. Для этого во вкладке Connections → Auth выберите необходимый путь.
Теперь можно отключить на сервере аутентификацию по паролю и использовать только SSH-ключи.
Отключение аутентификации по паролю
Подключитесь к серверу по SSH, используя пароль, и откройте файл sshd_config для редактирования.
Убедитесь, что указан правильный путь к открытым ключам SSH, поставьте значение параметра PasswordAuthentication no .
Перезапустите службу sshd.
Подключитесь к серверу по SSH без использования пароля. Например, запустите PuTTY, проверьте, что во вкладке Connections -> Auth содержится путь к закрытому ключу и откройте подключение.
Читайте также: