Как заставить WinSCP подключиться к SSH-серверу с указанным мной приватным ключом?

Вопрос или проблема

Как заставить WinSCP подключиться к SSH-серверу с приватным ключом, который я укажу.

Я не вижу этой опции.

Скриншот

  • Например, у меня есть приватный ключ, который я создал с помощью SSH в Cygwin. (id_rsa)

    $ ls ~/.ssh -l
    
      -rw------- 1 user None 2602 Дек 24 17:26 id_rsa
      -rw-r--r-- 1 user None  570 Дек 24 17:28 id_rsa.pub
      -rw-r--r-- 1 user None 4562 Апр 27 08:03 known_hosts
    
    $ cat .ssh/id_rsa
    
      -----BEGIN OPENSSH PRIVATE KEY-----
      b3Blb...........wcm9ib29rMQECAw==
      -----END OPENSSH PRIVATE KEY-----
    

    И я уже добавил публичный ключ (id_rsa.pub) в authorized_keys на сервере.

В окне входа WinSCP нажмите кнопку Дополнительно, перейдите в SSH > Аутентификация и в поле Файл приватного ключа выберите файл своего приватного ключа:

введите описание изображения здесь

Смотрите также https://winscp.net/eng/docs/ui_login_authentication


Если у вас нет ключа в формате PuTTY .ppk, вам нужно изменить фильтр файлов на Все файлы приватного ключа. После того как вы выберете SSH-ключ, WinSCP предложит преобразовать ключ для вас, сохранив его копию в формате .ppk.

Посмотрите ответ Мартина, он быстрее, чем этот ответ.

Самый простой способ сделать это — сначала убедиться, что вы можете подключиться в PuTTY, потому что PuTTY очень похож на WinSCP.

(WinSCP даже упоминает PuTTYGen!!!)

введите описание изображения здесь

PuTTY, похоже, требует, чтобы ключ был в формате PPK. Приватный ключ PuTTY.

В инструкциях здесь упоминается, как использовать PuTTYGen для преобразования RSA-ключа (как используется в OpenSSH) в формат PPK. https://www.dmit.io/index.php?rp=/knowledgebase/10/How-to-convert-RSA-Private-Key-to-Putty-Private-Key-.ppk.html

Вы открываете PuTTYGen, делаете файл.. загрузить приватный ключ. Затем он показывает файлы PPK, измените это, чтобы отобразить все файлы. Затем выберите id_rsa, и он загрузит этот RSA-ключ. Затем сделайте файл.. сохранить приватный ключ. Это должно сохранить файл PPK.

Затем в PuTTY в разделе SSH..Auth..Файл приватного ключа для аутентификации. Вы можете выбрать этот файл приватного ключа PPK.

Затем PuTTY спросит вас указать имя пользователя, то же имя пользователя, что вы использовали бы с openssh, ssh, используемым в Cygwin, когда вы делаете ssh user@ip.

Теперь вы можете отложить PuTTY в сторону.. но полезно знать, как подключаться с помощью PuTTY!

WinSCP очень похож. На экране входа щелкните «Дополнительно». Затем он выглядит немного как экран входа PuTTY, щелкните SSH..Аутентификация..Загрузить приватный ключ. Выберите этот PPK приватный ключ, тот же, который работал в PuTTY. Он также будет работать для WinSCP.

Итак, в WinSCP вы переходите к «новой сессии»

введите описание изображения здесь

Затем, конечно, измените протокол передачи файлов на SCP. Потому что это протокол, который подразумевается в вопросе. SCP — это передача файлов через SSH.

Затем нажмите «Дополнительно» (это может занять некоторое время, когда вы нажимаете «Дополнительно»), это откроет экран «Дополнительные настройки сайта». (Кстати, это не следует называть «сайтом», но тем не менее.. это на самом деле просто компьютер, к которому вы подключаетесь, который может или не может размещать веб-сайт). Это может занять некоторое время, чтобы экран появился.. может быть, программа не была написана на C++. Поэтому она немного медленная. В разделе “О программе” упоминается Delphi, так что, возможно, это объясняет, почему экран появляется немного медленно.

Это этот экран, но не нажимайте «инструменты!» Вы можете просто указать файл приватного ключа. Но это приватный ключ PuTTY, который ему нужен!

введите описание изображения здесь

Так что используйте PuTTYgen, чтобы преобразовать ваш RSA-приватный ключ в приватный ключ PuTTY! Вы делаете это так, как я описал ранее в своем ответе.

Ответ или решение

Чтобы подключиться к SSH-серверу с помощью WinSCP и указанного вами приватного ключа, выполните следующие шаги:

  1. Подготовка приватного ключа:
    Прежде всего, убедитесь, что ваш приватный ключ (id_rsa), созданный в Cygwin, приведён в формат PPK (PuTTY Private Key). WinSCP требует именно этот формат для работы с приватными ключами.

    Для этого:

    • Откройте PuTTYgen.
    • Выберите File -> Load private key и в открывшемся окне выберите ваш файл id_rsa. Обратите внимание, что для этого может потребоваться изменить фильтр файлов на "All files (.)".
    • После загрузки приватного ключа, выберите File -> Save private key для сохранения ключа в формате PPK.
  2. Создание нового сеанса в WinSCP:

    • Запустите WinSCP и создайте новый сеанс.
    • Введите имя хоста (IP-адрес сервера), имя пользователя и выберите протокол (например, SCP или SFTP).
  3. Настройка аутентификации с помощью приватного ключа:

    • На экране входа в систему нажмите кнопку Advanced (Дополнительно).
    • В открывшемся окне перейдите в раздел SSH -> Authentication (Аутентификация).
    • В поле Private key file (Файл приватного ключа) нажмите на кнопку Browse и выберите PPK файл, который вы сохранили на предыдущем этапе.

    Настройка приватного ключа в WinSCP (пример)

  4. Завершение подключения:

    • После того как вы указали путь к вашему приватному ключу, нажмите OK, чтобы вернуться к главному окну.
    • Нажмите Login (Вход) для подключения к серверу.
  5. Проверка подключения:
    Если вы всё сделали правильно и ваш ключ настроен на сервере в authorized_keys, WinSCP должно успешно подключиться к вашему SSH-серверу.

Дополнительные советы:

  • Убедитесь, что на сервере правильно настроены разрешения для файла authorized_keys и он находится в директории ~/.ssh/ вашего пользователя.
  • Если у вас возникают проблемы с подключением, убедитесь, что ваш приватный ключ имеет права доступа 600 (то есть только владелец может читать и писать), а директория ~/.ssh имеет права 700 (только владелец имеет доступ).

Дополнительную информацию о настройках вы можете найти на официальном сайте WinSCP: WinSCP Documentation.

Следуя этим шагам, вы сможете настроить WinSCP для подключения к SSH-серверу с использованием вашего приватного ключа.

Оцените материал
Добавить комментарий

Капча загружается...