KernelHub®
← Все материалы
ПРАКТИКА / РУКОВОДСТВО 04 / 8 МИНУТ

SSH-ключи без потери доступа

SSH-ключи удобны, когда приватный ключ остаётся у владельца, а изменения на сервере проверяются до закрытия действующего подключения.

Создайте отдельную пару ключей

Для современного совместимого окружения можно использовать Ed25519. Команда ниже создаёт отдельный файл и не затрагивает стандартный ключ, если такого файла ещё нет. Если ssh-keygen предлагает перезапись, остановитесь и выберите другое имя.

ssh-keygen -t ed25519 -f ~/.ssh/id_ed25519_kernelhub -C "workstation"

Задайте парольную фразу. Файл без расширения — приватный ключ, его нельзя передавать на сервер или в переписку. Файл .pub — публичная часть; её устанавливают в authorized_keys нужного пользователя.

Установите публичную часть

Если доступна утилита ssh-copy-id, она добавит ключ через существующий способ входа. Замените пользователя и адрес на свои.

ssh-copy-id -i ~/.ssh/id_ed25519_kernelhub.pub user@server.example
ssh -i ~/.ssh/id_ed25519_kernelhub user@server.example

При первом входе сверяйте отпечаток сервера через независимый доверенный канал, например консоль провайдера. Не принимайте изменившийся отпечаток автоматически: сначала выясните причину.

Сохраните короткое имя подключения

Добавьте блок в пользовательский файл ~/.ssh/config. Это пример, а не команда для терминала: адрес и имя пользователя нужно заменить.

Host my-server
    HostName server.example
    User user
    IdentityFile ~/.ssh/id_ed25519_kernelhub
    IdentitiesOnly yes

После этого подключение запускается командой ssh my-server. Явный IdentityFile упрощает работу, если у вас несколько ключей.

Сначала проверьте, потом ограничивайте

Оставьте текущую SSH-сессию открытой. Проверьте вход новым ключом во второй сессии и доступность консоли восстановления. Только после этого меняйте серверные способы авторизации.

Перед применением изменений sshd проверьте синтаксис командой sshd -t с подходящими правами. Не отключайте парольный вход и не меняйте сетевые ограничения одновременно: при ошибке будет сложнее понять, что закрыло доступ.

Читать в первоисточниках

Сначала понять. Затем изменить.Другие материалы →