ssh-keygen является частью набора программ пакета OpenSSH-client и отвечает за генерацию, конвертирование и управление ключами авторизации.

Пример генерации пары ключей

ssh-keygen -t rsa -b 4096 -C "ваш@почтовый.ящик"

Где:

  • -t rsa - алгоритм шифрования
  • -b 4096 - сложность шифрования
  • -C «ваш@почтовый.ящик» - подпись публичного ключа в виде вашего ящика

В процессе генерации будет задано несколько вопросов

  • Enter file in which to save the key (/home/user/.ssh/id_rsa):

Месторасположение и название файла приватного ключа. В случае, если создаёте дополнительный ключ, в довесок к основному, то имеет смысл назвать его по другому. Например id_rsa_work. Хранить файлы ключей в домашней директории в определённом месте - вполне нормальная практика

  • Enter passphrase (empty for no passphrase):

Парольная фраза для шифрования приватного ключа. Использование парольной фразы увеличивает безопасность и при получении злоумышленником доступа к вашему рабочему месту, или хищении ключа, воспользоваться им не получится.

Генерация публичного ключа

На основании приватного ключа можно сгенерировать публичный ключ

ssh-keygen -y -f ~/.ssh/id_rsa > ~/.ssh/id_rsa.pub

Дополнительная информация

  • Что такое приватный ключ
  • Что такое публичный ключ
  • Подключение к серверу по ключу
  • Использование ssh-agent
  • Конвертирование ключа в другой формат