Ответ
Публичный ключ нужно добавить в файл ~/.ssh/authorized_keys в домашней директории пользователя, под которым планируется подключение. Каждый ключ должен быть на отдельной строке.
Правильная последовательность команд для добавления ключа:
# 1. Создаем директорию .ssh, если её нет (с правильными правами)
mkdir -p ~/.ssh
chmod 700 ~/.ssh
# 2. Добавляем публичный ключ в файл
# Предполагается, что ключ уже скопирован на сервер или вставлен из буфера обмена
echo "ssh-rsa AAAAB3NzaC1yc2E... user@host" >> ~/.ssh/authorized_keys
# 3. Устанавливаем строгие права на файл с ключами
chmod 600 ~/.ssh/authorized_keys
Критически важные моменты для безопасности и работы:
- Права
700на директорию~/.sshи600на файл~/.ssh/authorized_keys. Более широкие права (например,755) приведут к отказу в подключении со стороны SSH-демона. - Файл должен принадлежать соответствующему пользователю и его группе.
- В DevOps-практике этот процесс часто автоматизируется с помощью инструментов управления конфигурацией, таких как Ansible, или через cloud-init при создании виртуальных машин.