"Сервер отказался от нашего ключа" после запуска экземпляра из частного EBS AMI
Я создал свой собственный EBS AMI, поделился им с другой учетной записью AWS, запустил новый экземпляр на основе этого изображения с помощью новой пары ключей и теперь, когда я пытаюсь подключиться к этому новому экземпляру, я получаю сообщение об ошибке: "Сервер отказался наш ключ".
Это то, что я сделал (шаг за шагом):
- Конфигурированный новый сервер CentOS 6.3 в моей личной учетной записи (с моей личной парой ключей)
- Создан образ EBS AMI этого сервера.
- Поделился этим изображением с моей учетной записью клиента
- Запустил новый экземпляр в моей учетной записи клиентов на основе этого общего образа + новая пара ключей
- Новый запущенный экземпляр не хочет брать новую пару ключей. После некоторого тестирования я считаю, что он принимает мою личную пару ключей.
Как создать новый экземпляр из моего изображения, чтобы принять новые пары ключей?
Я даже попытался удалить файл ".ssh/authorized_keys" в исходном изображении, запустить новый экземпляр на основе этого изображения без открытого ключа и до сих пор не добился успеха.
Пожалуйста, сообщите, как создавать изображения, которые не будут прикреплены к старым парам ключей
Ответы
Ответ 1
У меня была аналогичная проблема с этим сообщением об ошибке, и вот как я его исправил. Надеюсь, это поможет вам или кому-то другому, кто застрял и найдет здесь свой путь:
- В консоли AWS убедитесь, что ваш экземпляр работоспособен и работает
- Убедитесь, что вы использовали правильный общедоступный DNS-адрес, указанный при нажатии на экземпляр
- Выберите группы безопасности с левой стороны и нажмите на группу безопасности, которую вы хотите использовать
- Перейдите на вкладку "Входящие"
- В меню Создать новое правило: выберите диалог SSH
- В источнике введите свой IP-адрес и значение CIDR. Если его просто у вас нет NAT в вашей сети, просто используйте 32 как ваш CIDR (например.??????? 32)
- Нажмите "Добавить правило"
- Нажмите "Применить изменения правила"
- Щелкните правой кнопкой мыши на своем экземпляре и выберите "Создать образ" (EBS AMI)
- Дайте ему имя изображения в мастере создания образа и нажмите "Создать"
- Через короткое время выберите AMI с левой панели навигации в консоли AWS
- Щелкните правой кнопкой мыши на новом AMI и нажмите "Запустить экземпляр"
- В мастере экземпляров запросов нажмите "Продолжить", пока вам не понадобится создать пару ключей
- Выберите пару ключей и отметьте это
(ПРИМЕЧАНИЕ. Если вы еще не получили ваш .pem файл для этой пары ключей, вам нужно будет сгенерировать новый из выбора Key Pairs в левой панели навигации, Create Key Pair и т.д., Чтобы получить файл .pem).
- Выберите группу безопасности с правилом, созданным для вашего IP-адреса (и CIDR 32 - без маски подсети)
- Нажмите "Продолжить", а на следующем экране нажмите "Запустить"
- Вернитесь в представление "Экземпляры" и дождитесь, пока ваш экземпляр будет полностью инициализирован и здоров.
- Open PuttyGEN
- Нажмите "Конверсии" на панели инструментов и "Импорт ключа"
- Перейдите к своему .pem-ключу в браузере файлов и откройте его.
- Выберите SSH-1 (RSA) в поле "Параметры"
- Поместите имя своей пары ключей в поле комментариев к ключевым словам (только для хорошего ведения дома).
- Нажмите "Сохранить закрытый ключ" и сохраните файл .ppk где-нибудь в вашей файловой системе.
- Open Putty
- Введите общедоступный DNS для вашего экземпляра EC2 в поле Имя хоста
- Введите порт 22
- Отключить переключатель SSH из окна Тип подключения
- Нажмите SSH в дереве соединений в левой панели навигации
- Нажмите Auth
- Нажмите "Обзор" в окне "Параметры аутентификации" и откройте файл .ppk
- Нажмите "Сессия" в левой панели навигации
- Введите имя для этого соединения в текстовом поле "Сохраненные сеансы" и нажмите "Сохранить" (это значит, что вам не нужно каждый раз подключать соединение шпал, и вы можете просто дважды щелкнуть ваше сохраненное соединение - для тех не знают)
- Нажмите "Открыть"
- При запросе имени входа вы, вероятно, будете использовать "ec2-user" или "ubuntu" (TIP: используйте "root", и вы, вероятно, получите сообщение о том, какое имя пользователя вы должны использовать вместо этого!)
- Нет необходимости в пароле, файл .ppk будет аутентифицировать вас
- Надеюсь, вы теперь подключены к экземпляру EC-2 и готовы к работе!
Ответ 2
У меня была эта проблема с новым экземпляром SUSE. Наконец, я смог подключиться с помощью пользователя root. Он продолжал отклонять пользователя ec2.
Ответ 3
это означает, что вы не используете правильное имя пользователя для входа в свой экземпляр ec2. вот список пользователей, которые вы можете использовать в putty для подключения к экземпляру ec2
Для Amazon Linux AMI имя пользователя - ec2-user.
Для AMI RHEL5 имя пользователя - root или ec2-user.
Для Ubuntu AMI имя пользователя - ubuntu.
Для Fedora AMI имя пользователя - fedora или ec2-user.
Для SUSE Linux имя пользователя - root или ec2-user.
В противном случае, если ec2-user и root не работают, обратитесь к провайдеру AMI.
http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/TroubleshootingInstancesConnecting.html#TroubleshootingInstancesConnectingPuTTY
Ответ 4
Поскольку ваш AMI происходит из AMI сообщества, а не из официального публичного AMI, возможно, что он не был настроен на копирование ключей ssh при запуске экземпляра или что для его использования используется другой механизм.
Я понимаю, что для того, чтобы ключи ssh копировались при запуске, внутри самого экземпляра должна быть запущена оболочка script, как кратко описано здесь.
В странице описания AMI упоминается, что он был включен "облачный init", поэтому, возможно, есть способ сделать это через CloudInit. См. Документ здесь.
Ответ 5
У меня была эта проблема, и оказалось, что я печатал ec2_user, когда он должен был быть ec2-user
Ответ 6
Это может быть только одна причина, чтобы показать Сервер Отказался от нашего ключа.
То есть: комбинация ключевой пары и Имя пользователя неверна, я столкнулся много раз.
Ответ 7
После того, как вы попробовали различные параметры, мне удалось с именем пользователя "fedora"
Ответ 8
По умолчанию Amazon добавит новый ключ к существующему. Мы можем решить эту проблему, установив диск на другой активный экземпляр и удалив содержимое из файла .ssh/authorized_keys и добавим файл ключей вашего нового ключа.
Ответ 9
Я решил свою проблему, выбрав пользователя в качестве Ubuntu для AWS Ubuntu Machin. Поэтому, пожалуйста, проверьте правильную учетную запись пользователя и тип машины.
Пожалуйста, смотрите ниже ссылку для этого:https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/putty.html