Терминал Mac продолжает запрашивать пароль при использовании PPK с SSH
Я пытаюсь подключиться к серверу Amazon EC2 через терминал Mac. У меня есть файл PPK, у которого нет пароля, прикрепленного к нему, но когда я пытаюсь подключиться, я получаю всплывающее окно с надписью "Введите пароль для секретного ключа SSH".
Итак, мы попытались создать PPK с паролем, но он не принимает пароль, он все равно отклоняет соединение.
У меня есть пользователь Windows, который может подключиться с использованием того же PPK на Putty.
Кто-нибудь испытал эту проблему?
Ответы
Ответ 1
Возможно, ваша проблема связана с разрешениями для вашего ключа. Я знаю, что в linux требуется изменить разрешения.
Взято с веб-сайта http://om4.com.au/ssh-rsa-key-pairs-passphrases-leopard/
-
Очистите содержимое вашего каталога ~/.ssh и установите разрешения для каталога на 700 (каталоги должны быть "исполняемыми" )
$ rm ~/.ssh/*
$ chmod 700 ~/.ssh
-
Создайте свою пару ключей rsa (есть варианты для этого, но это версия, которую я использовал):
$ ssh-keygen -t rsa
-
Задайте разрешения для всех файлов в ~/.ssh до 600
$ chmod 600 ~/.ssh
-
Скопируйте свой ключ id_rsa.pub на ваш сервер .ssh/authorized_keys файл
-
Добавьте кодовую фразу в цепочку ключей, используя следующую команду:
$ ssh-add -K
(вы увидите Enter passphrase для [вашей системы]/. ssh/id_rsa:)
Ответ 2
Mac ищет ключ .pem. Ppk генерируется специально для шпаклевки. Если у вас нет оригинального ключа ppk.
Загрузите puttygen.exe из http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html. Затем перейдите к преобразованиям → экспортируйте ключ OpenSSH. Сохраните вывод в виде файла .pem и попробуйте использовать его с помощью mac.
Если это не сработает, вы можете отправить команду, запущенную с mac. Возможно, у вас есть дополнительный параметр или что-то еще.
Ответ 3
Ошибка Enter your password for the SSH key x
может возникнуть из-за использования ключа неправильного формата (например, ключа ppk) в ssh или sftp. Это объясняется тем, что он интерпретируется как зашифрованный ключ ssh и поэтому запрашивает парольную фразу, когда на самом деле нет кодовой фразы.
В OS X мне удалось смоделировать эту ошибку, просто введя в командной строке следующее:
sftp -o IdentityFile=randomtextfile mysftpserver.com
Решение состоит в том, чтобы преобразовать файл, используя puttygen, как было предложено bwight.
Ответ 4
В дополнение к другим ответам проблема может возникнуть из-за того, что вы не указали, с каким пользователем вы хотите подключиться.
Например, ssh -i francky.pem 208.52.170.43
запросит у вас пароль на Mac, тогда как ssh -i francky.pem [email protected]
не должен. Обратите внимание, что в Linux вы не указываете пользователя.
Ответ 5
Я столкнулся с одной и той же проблемой в MAC, я нашел довольно простой способ избавиться от нее.
Вместо использования ssh -i IP-адреса используйте следующие > ssh user @IP
Надеюсь, что вы уже нашли ответ после этого долгого времени:)
Ответ 6
В моем случае проблема заключалась в типе разрыва файла. Попробуйте следующее:
1.- Откройте файл .pem с помощью TextWrangler
2.- В нижней части приложения проверьте, является ли тип прерывания "Windows (CRLF)".
Ответ 7
Этот вопрос заставил меня потянуть мои волосы на 20 минут или около того. Понял, что мне удалось успешно подключиться из другого окна терминала. В моем случае мне просто пришлось закрыть текущее окно терминала и использовать другое или новое окно. Очень странно, но может помочь вам.