Программирование [egghead] В доступе отказано (publickey) при SSH доступе к Amazon EC2 instance (2017)

Регистрация
7 Апр 2025
Сообщения
10,778
Реакции
81
Автор: egghead​
Название: В доступе отказано (publickey) при SSH доступе к Amazon EC2 instance (2017)​

cover.jpg

Продолжительность: 0 ч 2 мин Количество уроков: 1 Видео Язык: Английский Вес архива: 5 МБ


Ошибка «В доступе отказано (publickey)» при подключении по SSH к Amazon EC2 — одна из самых распространённых проблем у пользователей AWS. Она может появляться как у начинающих, так и у опытных администраторов. В этом материале мы разберём типичные причины сбоя, способы их устранения и дадим рекомендации, которые помогут избежать подобных ошибок в будущем.

Почему появляется ошибка «В доступе отказано (publickey)»

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

Неправильный приватный ключ

Если используется не тот файл .pem или ключ повреждён, EC2 не позволит подключиться. Это частая ситуация, если у вас несколько ключей или вы переименовывали файлы.

Неверные права доступа к файлу ключа

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

Не тот пользователь для входа

Каждый AMI использует своё стандартное имя пользователя, и набор пользователей отличается. Если указать неправильный логин, авторизация не пройдёт.

Как устранить ошибку SSH publickey

1. Проверьте правильность выбранного ключа

• Убедитесь, что используете именно тот.pem-файл, который был создан при запуске EC2 instance.
• Если ключ потерян — создайте новый, используя EC2 Instance Connect или AWS Systems Manager.

2. Установите корректные права на приватный ключ

На Linux или macOS выполните команду:

chmod 400 your-key.pem
Это гарантирует, что SSH примет ключ для использования.

3. Используйте правильное имя пользователя

Ниже приведены популярные варианты стандартных логинов:

ec2-user — Amazon Linux
ubuntu — Ubuntu Server
centos — CentOS
admin или bitnami — Bitnami-образы
root — некоторые кастомные AMI

Дополнительные шаги диагностики

Проверьте настройки безопасности

• SSH‑порт 22 должен быть открыт в Security Groups.
• Ваш IP должен быть указал в правилах доступа.

Проверьте содержимое файла ~/.ssh/authorized_keys на сервере

Если у вас есть альтернативный способ доступа, убедитесь, что ключ действительно находится в файле и корректно прописан одной строкой.

Как избежать ошибки в будущем

• Храните ключи в организованной структуре.
• Используйте менеджеры секретов AWS.
• Настройте EC2 Instance Connect для надёжного и простого доступа.

Заключение

Ошибка «В доступе отказано (publickey)» — решаемая. Зная основные причины и методы устранения, вы сможете быстро восстановить SSH‑доступ к вашему EC2 instance и избежать подобных проблем в дальнейшем.

СКАЧАТЬ:
 📥 Скрытое содержимое! Войдите или Зарегистрируйтесь
 
10,840Темы
10,893Сообщения
787Пользователи
Ganna!Новый пользователь
Сверху