Я пытаюсь использовать ssh для входа в систему AWS от Индивидуалистов OSX и имею адское время. Я вхожу:
ssh -i ~/.ssh/filename.pem
ec2-user@ec2-xx-x-xxx-xx.compute-1.amazonaws.com -v
И я получаю это, а также всплывающее окно связки ключей, которое просит пароль, даже при том, что нет ни одного для предоставления...
debug1: key_parse_private_pem: PEM_read_PrivateKey failed
debug1: read PEM private key done: type <unknown>
Saving password to keychain failed.
Я запустил новый экземпляр на AWS и генерировал новую пару ключей. Когда я оставил .pem файл незащищенным, всплывающее окно связки ключей OSX не появилось, но я был неспособен к доступу AWS, потому что файл был незащищен:
Полномочия 0644 для '/Users/cvn/.ssh/chris-test.pem' слишком открыты.
Требуется, что Ваши файлы секретных ключей не доступны
другие. Этот закрытый ключ будет проигнорирован. плохие полномочия: проигнорировать
ключ:/Users/cvn/.ssh/chris-test.pem Разрешение, отклоненное (в открытом ключе).
Таким образом, я работал
chmod 400 chris-test.pem
и Связка ключей возвратила просьбу о пароле, чтобы я не имел...
Убедитесь, что вы действительно используете закрытый ключ (не открытый и не какой-то другой), и перепроверьте его содержимое.
В моем случае закрытый ключ был в формате openssh (строка ----- BEGIN OPENSSH PRIVATE KEY -----
в файле ключей для проверки), но клиент ssh работает только с форматом rsa (строка ----- BEGIN RSA PRIVATE KEY -----
). Я просто преобразовал одно в другое, и он работает. Узнайте, как преобразовать закрытый ключ Openssh в закрытый ключ RSA здесь .