Ошибка полномочий при соединении с EC2 через SSH на Mac OSX

Решил проблему. Это была проблема с тем, что браузер не обновлял кеш браузера ... duhh

25
задан Dónal 18 June 2015 в 12:09
поделиться

7 ответов

Могу вспомнить две возможности, хотя они обе упомянуты в ссылке, на которую вы ссылались:

  1. Вы не указываете правильный файл пары ключей SSH или имя пользователя в команде ssh, которую вы используете для входа на сервер:

    ssh -i [полный путь к файлу пары ключей] root@[имя хоста или IP-адрес экземпляра EC2]

  2. У вас нет правильных прав доступа к файлу пары ключей; вы должны использовать

    chmod 600 [файл пары ключей]

чтобы убедиться, что только вы можете прочитать или записать файл.

Попробуйте использовать опцию -v с помощью ssh, чтобы получить больше информации о том, где именно происходит сбой, и напишите сюда, если вам нужна дополнительная помощь.

[Обновление]: Хорошо, это то, что вы должны были видеть , если все было настроено правильно:

debug1: Authentications that can continue: publickey,gssapi-with-mic
debug1: Next authentication method: publickey
debug1: Trying private key: ec2-keypair
debug1: read PEM private key done: type RSA
debug1: Authentication succeeded (publickey).

Вы выполняете команду ssh из каталога, содержащего файл ec2-keypair ? Если да, попробуйте указать -i ./ec2-keypair, чтобы устранить проблемы с путями. Также проверьте файл "ls -l [полный путь к паре ec2-keypair]" и убедитесь, что разрешения 600 (отображается как rw-------). Если ничего из этого не сработает, я заподозрю содержимое файла ключевой пары, поэтому попробуйте воссоздать его, используя шаги, описанные в вашей ссылке.

56
ответ дан 28 November 2019 в 17:43
поделиться

Была похожая проблема. Вот шаги, используемые для настройки ключей SSH и пересылки на Mac. Сделал эти заметки для себя - может помочь кому-то ... проверить по вашему конфигу.

Предполагается, что здесь нет настройки клавиш. Если у вас уже есть настройка клавиш, пропустите этот раздел.

$ ssh ‐ keygen ‐t rsa ‐b 4096

Генерация пары открытых / закрытых ключей rsa.

Введите файл, в котором нужно сохранить ключ (/Users/you/.ssh/id_rsa): [Нажмите enter] Введите кодовую фразу (пусто для пароля): [Введите кодовую фразу] Введите тот же код еще раз: [Введите кодовую фразу снова]

Измените ~ / .ssh / config, добавив запись для файла ключа:

~ / .ssh / config должно выглядеть примерно так:

Host *

AddKeysToAgent yes

UseKeychain yes

IdentityFile ~ / .ssh / id_rsa

Сохраните закрытый ключ в цепочке ключей:

$ ssh-add -K ~ / .ssh / id_rsa

Пройдите тестирование сейчас с помощью: ssh -A username @ yourhostname

Должны переслать ваш ключ к вашему имени хоста. Предполагая, что ваши ключи добавлены, вы должны подключиться без проблем.

0
ответ дан user2441357 28 November 2019 в 17:43
поделиться

У меня была та же проблема с использованием AWS Toolkit для Eclipse. Я создал экземпляр Getting Started OK и открыл оболочку. Тем не менее, пользователь был установлен на ec2-user. Я использовал команду Open Shell As ... и установил пользователя root. Тогда это сработало.

0
ответ дан Arthur Ryman 28 November 2019 в 17:43
поделиться

Я рекомендую не устанавливать пароль, как предполагают некоторые другие ответы. Использование файла ключей является более безопасным (никто не может угадать ваши пароли) и более удобным (после настройки файла конфигурации). Вот основные ~/.ssh/config:

Host my-ec2-server
  HostName 11.11.11.11
  User ec2-user
  IdentityFile /path/to/generated-key.pem

Теперь вы можете просто набрать ssh my-ec2-server, и вы в игре! И, как уже упоминалось в других ответах, используйте -v для получения дополнительной информации, когда ваше соединение не работает.

1
ответ дан Madeline Trotter 28 November 2019 в 17:43
поделиться

Примерно через полчаса поиска и отладки я смог это выяснить. В моей ситуации я использовал один и тот же pem-файл для двух разных экземпляров ec2, и он работал для одного, а не для другого.

Моим первым экземпляром, над которым он работал, был стандартный aws linux ami amzn-ami-hvm-2014.03.2.x86_64-ebs. Я просто использовал

ssh -i mypemfile.pem ec2-user@myec2ipaddress 

, и это сработало.

Затем я запустил экземпляр Fedora Fedora-x86_64-19-20140407-sda и попробовал ту же команду, но продолжал получать:

Permission denied (publickey,gssapi-keyex,gssapi-with-mic).

После смены имени пользователя с ec2-user на fedora все заработало!

ssh -i mypemfile.pem fedora@myec2address
2
ответ дан Airswoop1 28 November 2019 в 17:43
поделиться

Вы уверены, что использовали правильный экземпляр? Я столкнулся с этой проблемой и понял, что примерно в 4 экземплярах Ubuntu, которые я пробовал, не было установлено SSH-серверов.

Список хороших серверов см. В разделе «Получение изображений» примерно на полпути вниз. Похоже, вы используете что-то другое ... имя пользователя по умолчанию - Ubuntu на этих изображениях.

https://help.ubuntu.com/community/EC2StartersGuide

3
ответ дан shigeta 28 November 2019 в 17:43
поделиться

Присоединение к ответу mecca831:

ssh -v -i generate-key.pem ec2-user@11.11.11.11

[ec2-user@ip-11.11.11.11 ~] $ sudo passwd ec2-user newpassword newpassword

[ec2-user@ip-11.11.11.11 ~] $ sudo vi / etc / ssh / sshd_config Измените файл следующим образом:

    # To disable tunneled clear text passwords, change to no here!
    PasswordAuthentication yes
    #PermitEmptyPasswords no
    # EC2 uses keys for remote access
    #PasswordAuthentication no

Сохранить

[ec2-user@ip-11.11.11.11 ~] $ sudo service sshd stop [ec2-user@ip-11.11.11.11 ~] $ sudo service sshd start

вы должны быть может выйти и выполнить ssh следующим образом:

ssh ec2-user@11.11.11.11

и получить запрос пароля, ключ больше не нужен.

4
ответ дан Pelli 28 November 2019 в 17:43
поделиться
Другие вопросы по тегам:

Похожие вопросы: