Премиальное программное обеспечение и практические уроки
Как устранить ошибку «Выбранный ключ пользователя не зарегистрирован на удаленном хосте»
В использованииXshellУдаленный входАВСПри использовании сервера вы столкнетесь с "Выбранный ключ пользователя не зарегистрирован на удаленном хосте." ошибка, практически каждый новичок сталкивается с одной и той же ошибкой, так что же именно вызывает ошибку «Выбранный ключ пользователя не зарегистрирован на удаленном хосте» при SSH-подключении? Ниже приведен подробный анализ причин возникновения ошибки.
Xshell — один из самых популярных инструментов удалённого доступа по SSH. По сравнению с Putty, он мощнее и поддерживает OpenSSH.
В созданииEC2После подключения к серверу при использовании SSH вы увидите предупреждение безопасности SSH.
Проверьте ключ хоста.
Ключ хоста для xxx не совпадает с ключом, хранящимся в локальной базе данных ключей хостов. Возможно, ключ хоста изменился, или кто-то пытается перехватить это соединение. Если это не подтверждено, рекомендуем отменить соединение.
Я немного запутался. Это проблема с ключом, сгенерированным AWS, или с SSH-подключением через Xshell? Далее я попробую решить проблему шаг за шагом.
Шаг 1: Сначала проверьте, правильно ли указано имя пользователя. В AWS есть небольшой нюанс: имя пользователя по умолчанию для каждого типа сервера отличается.Google ОблакоЭто корень по умолчанию. Давайте рассмотрим различные варианты AWS.ЛинуксИмя пользователя для экземпляра.
Какое имя пользователя используется по умолчанию для экземпляров Amazon EC2 Linux (для SSH, PuTTY и т. д.)?
Экземпляры Linux на серверах EC2/AWS (Ubuntu, Дебиан, Федора, Амазонка Имя пользователя по умолчанию для Linux и т. д.
- Amazon Linux 2023/Amazon Linux 2/Amazon Linux ec2-пользователь
- CentOS centos или ec2-user
- Дебиан админ
- Федора fedora или ec2-user
- РХЕЛ ec2-пользователь или root
- СЬЮЗ ec2-пользователь или root
- Убунту Убунту
- Оракул ec2-пользователь
- Битнами битнами
Имя пользователя по умолчанию в системе RHEL, установленной на тестовой машине, — ec2-user или root. При удалённом подключении я попробовал оба имени, но всё равно не смог подключиться.
Официальная страница справки AWS:https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/connect-to-linux-instance.html
Шаг 2: Убедившись, что проблема не в имени пользователя, проверьте, есть ли проблема с ключом.
Инструкции по удаленному подключению с использованием ключей приведены в официальной документации.
Для подключения к вашему экземпляру необходимо знать местоположение файла закрытого ключа. Для SSH-подключений необходимо настроить разрешения, чтобы только вы могли читать файл.
Информацию о работе пар ключей при использовании Amazon EC2 см. в разделе Пары ключей Amazon EC2 и экземпляры Linux.
Найдите закрытый ключ
Получите полный путь к файлу .pem на вашем компьютере для пары ключей, указанной при запуске экземпляра. Подробнее см. в разделе Определение открытого ключа, указанного при запуске. Если вы не можете найти файл закрытого ключа, см. раздел Я потерял свой закрытый ключ. Как подключиться к моему экземпляру Linux?
Если вы используете Putty для подключения к экземпляру и вам необходимо преобразовать файл .pem в .ppk, см.Преобразование закрытого ключа с помощью PuTTYgen в теме «Подключение к экземпляру Linux из Windows с помощью PuTTY».
Установите разрешения на доступ к вашему закрытому ключу так, чтобы его могли прочитать только вы.
от macOS или Linux-соединение
Если вы планируете использовать SSH-клиент на компьютере macOS или Linux для подключения к вашему экземпляру Linux, используйте следующую команду, чтобы установить разрешения для файла закрытого ключа, чтобы читать его могли только вы.
chmod 400 key-pair-name.pem
Если вы не установите эти разрешения, вы не сможете подключиться к своему экземпляру с помощью этой пары ключей. Подробнее см. в разделе «Ошибка: файл закрытого ключа не защищён».Подключение из Windows
Откройте проводник и щёлкните правой кнопкой мыши по файлу .pem. Выберите «Свойства» > вкладку «Безопасность», затем «Дополнительно». Выберите «Отключить наследование». Удалите разрешения доступа для всех пользователей, кроме текущего.
Попробуйте изменить свойства закрытого ключа при удаленном подключении в Windows.
После изменения свойств ключ по-прежнему невозможно использовать для подключения.
Шаг 3: Проверьте, не слишком ли устарела версия инструмента удаленного подключения SSH Xshell 6, из-за чего невозможно установить соединение SSH.
Поскольку я использовал Xshell 6 для управления сервером на своём компьютере, я давно не обновлял Xshell. Поэтому я обновил Xshell 6 до Xshell 7 и попробовал подключиться снова.
Подключение успешно установлено!
После долгих мучений выяснилось, что проблема была в слишком низкой версии Xshell.
Наконец, подведем итоги: удаленное подключениеAWS EC2Если вы не можете подключиться к серверу, наиболее вероятной причиной является то, что вы не ввели правильное имя пользователя, например, ввод по умолчанию root.
Другая причина — слишком низкая версия программного обеспечения SSH. Обновите Xshell!
Если у вас нет бесплатногоAmazon CloudДля серверов AWS EC2 регистрация бесплатная.
Официальный сайт AWS China: https://aws.amazon.com/cn/
Официальный сайт Amazon Web Services: https://www.amazonaws.cn/