Использование SSH ключей для подключения к серверу

Генерация ключа

На локальной машине вводим команду:

ssh-keygen -t ed25519 -C "$(whoami)@$(uname -n)-$(date -I)" -f ~/.ssh/"$(whoami)"
Bash

В процессе генерации будет предложено установить пароль. Рекомендуется это сделать в публичных местах.
Создаётся ключ:

  • -t ed25519 – с типом шифрования ED25519
  • -C "коммент" – с комментарием состоящим из имени пользователя, имени компьютера и даты генерации
  • -f ~/.ssh/"$(whoami)" – в директории .ssh пользователя с именем по шаблону имя_пользователя

Сменить пароль к ключу.

ssh-keygen -p -f ~/.ssh/id -P '' -N ''
Bash

-p ключ смены пароля, -f путь к ключу, -P старый пароль (в кавычках), -N новый пароль (в кавычках)

Добавление и удаление ключа в ssh-agent

Добавить ключ

ssh-add ~/.ssh/id
Bash

Удалить ключ

Необходимо использовать ключ -d

ssh-add -d ~/.ssh/id
Bash

Добавить ключ в macOS keychain

ssh-add --apple-use-keychain ~/.ssh/id
Zsh

Установка ключа на сервер

Копирование с помощью команды ssh-copy-id

ssh-copy-id -i ~/.ssh/id.pub root@server
Bash

Вместо id.pub надо указать имя своего ключа. Если имя не указывать, то скопируются все ключи.

Вместо root@server надо указать пользователя на удалённом сервере, например root@127.0.0.1

Оцените статью
( Пока оценок нет )
Поделиться с друзьями
finderX.pro
Добавить комментарий