Как мне подключиться к SFTP с использованием предоставленного SSH-ключа?

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

Меня перенаправили на этот StackExchange, я впервые здесь. Мой опыт работы с SSH-ключами начинается и заканчивается тем единственным случаем, когда я настраивал возможность отправки кода на GitHub.

Мне нужно получить доступ к FTP-серверу через Cyberduck. Я в SFTP и нужно “Выбрать…” SSH-ключ. У меня есть ТЕКСТ для частного ключа, который мне прислали. Значит, я могу скопировать и вставить его в файл? Я не уверён, как действовать дальше, и все ресурсы, которые я нахожу, предназначены для генерации ключа, а не для сохранения файла для загрузки.

Буду признателен за руководство и ресурсы.

Вы можете сохранить текст, который вам прислали, как файл и использовать встроенную функцию “Выбрать…” в Cyberduck. Я на компьютере с Windows, поэтому использовал приложение Блокнот. Я предполагаю, что TextEdit на Mac даст аналогичные результаты. Вот шаги:

  1. Откройте Блокнот
  2. Вставьте текст, который был предоставлен для вашего SSH-ключа
  3. Сохраните файл (я назвал свой key.txt)
  4. Откройте Cyberduck
  5. Выберите Открыть соединение
  6. Выберите SFTP (SSH File Transfer Protocol) в качестве типа подключения
  7. Введите сервер, порт (22), имя пользователя
  8. Вы можете пропустить пароль – он использует SSH-ключ
  9. Для SSH-ключа выберите “Выбрать…” и найдите место хранения вашего файла
  10. Нажмите Подключиться
  11. Появится запрос на неизвестный отпечаток; нажмите Разрешить (вы можете выбрать “Всегда”, если это подключение вам доверено и вы будете использовать его часто)
  12. Вы должны увидеть ваши файлы и/или назначенное место папки!

Если вы используете SFTP-клиент для подключения к SFTP-серверу, вам следует сгенерировать пару SSH-ключей (то есть в Unix: ssh-keygen) и предоставить ваш публичный ключ (то есть .ssh/id_rsa.pub или .ssh/id_ed25519.pub) администратору SFTP-сервера.

Если ваш SSH-ключ находится в каталоге по умолчанию, программное обеспечение может найти его автоматически.

Если вы используете OpenSSH (SFTP является его частью), вы можете использовать

sftp -i <privateKey> [email protected]

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

Добавляя к ответу nikiwaibel, некоторые версии SFTP не примут “-i”, поэтому вы можете использовать альтернативу

sftp -oIdentityFile=<privateKey.file> [email protected]

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

Для подключения к SFTP-серверу с использованием предоставленного SSH-ключа, вам потребуется следовать нескольким простым шагам. В этой инструкции мы рассмотрим, как это сделать с помощью клиента Cyberduck, который широко используется для работы с SFTP.

Шаги по подключению к SFTP с использованием Cyberduck и SSH-ключа

  1. Создание файла с закрытым ключом:

    • Откройте текстовый редактор, такой как Блокнот на Windows или TextEdit на Mac.
    • Вставьте текст вашего закрытого SSH-ключа в новый файл.
    • Сохраните файл под названием, например, key.txt. Убедитесь, что в настройках сохранения выбран формат "Все файлы" для Windows или "Текстовый документ" для Mac.
  2. Открытие Cyberduck:

    • Запустите клиент Cyberduck.
    • Нажмите на кнопку Open Connection (Открыть подключение).
  3. Выбор протокола подключения:

    • В выпадающем меню выберите SFTP (SSH File Transfer Protocol) как тип подключения.
  4. Ввод данных соединения:

    • Укажите адрес сервера в поле Server (Сервер).
    • Укажите порт (обычно 22) в поле Port (Порт).
    • Введите свое имя пользователя в поле Username (Имя пользователя).
    • Поле Password (Пароль) можно оставить пустым, так как для аутентификации будет использован SSH-ключ.
  5. Выбор SSH-ключа:

    • В разделе настройки SSH Private Key (Закрытый ключ SSH) нажмите на кнопку Choose… (Выбрать…) и найдите сохраненный файл key.txt.
  6. Подключение к серверу:

    • Нажмите кнопку Connect (Подключиться).
    • Если появится запрос о неизвестном отпечатке, нажмите Allow (Разрешить) и, если это соединение надежное, вы можете выбрать Always (Всегда), чтобы не получать этот запрос в будущем.
  7. Настройки соединения:

    • После успешного подключения вы должны увидеть файл и/или папку, к которой у вас есть доступ на сервере.

Полезные советы

  • Проверка формата ключа: Убедитесь, что ваш закрытый ключ имеет правильный формат. Он должен начинаться с текста типа -----BEGIN OPENSSH PRIVATE KEY----- и заканчиваться -----END OPENSSH PRIVATE KEY-----.

  • Совместимость ключей: Если ваш SSH-ключ создан в нестандартном формате, некоторые клиенты SFTP могут не поддерживать оригинальный формат ключа. В таком случае попробуйте конвертировать его с помощью командной строки или использовать другой SSH-ключ.

  • Запуск клиента SFTP через терминал: Если вам удобнее использовать терминал, вы можете подключиться, используя команду:

    sftp -i path/to/your/key.txt [email protected]

    Замените path/to/your/key.txt на путь к вашему файлу с ключом, а username@hostname — на ваше имя пользователя и адрес сервера.

Заключение

Следуя вышеперечисленным шагам, вы сможете успешно подключиться к SFTP-серверу посредством Cyberduck с использованием SSH-ключа. Если у вас возникнут какие-либо проблемы, не стесняйтесь обращайтесь в техническую поддержку или к администратору сервера для получения дополнительной информации.

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

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