Авторизация по ключам в ssh (беспарольный вход)

Материал из Wiki МИАЦ ВО
Версия от 11:26, 29 октября 2024; Misha (обсуждение | вклад) (Добавление приватного ключа в агент аутентификации PuTTY SSH)
Перейти к навигации Перейти к поиску

С Linux клиента

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

$ ssh-keygen -q

При запросе пароля просто жмем ввод.
В результате у нас в каталоге ~/.ssh/ появилось 2 новых файла: id_rsa – приватный ключ id_rsa.pub – публичный ключ Отправляем публичный ключ на удаленный сервер(потребуется ввести пароль от сервера):

$ ssh-copy-id user@example.com
usr/bin/ssh-copy-id: ERROR: No identities found

Опс! Операция не удалась :( В этом случае необходимо изменить текущий командный процессор, загрузить ключи, а потом уже выполнять операцию экспортирования ключа:

eval `ssh-agent`
ssh-add
ssh-copy-id user@example.com

Отлично! Теперь можно заходить по ssh на сервер example.com под пользователем user и не вводить пароль.

Взято тут
Более подробно можно почитать Генерация и использование SSH ключей

С Windows клиента (putty)

Взято тут и тут

Скачиваем PuTTY и PuTTYgen

PuTTY и PuTTYgen можно скачать с официального сайта проекта.

Генерация ключевой пары

  • Необходимо запустить PuTTYgen и нажать кнопку «Generate»:

Putty-ssh-key-auth-1.png

Для ускорения генерации необходимо хаотично передвигать курсор мыши.

  • Сохраняем в буфер код, выделенный синим цветом на картинке. Посмотрите внимательно, туда не входит конец текста.
  • Сохраняем приватный ключ, предварительно введя 2 раза парольную фразу.

Настройка Linux сервера (сохранение публичного ключа)

  • На сервере создаем файл ~/.ssh/authorized_keys и туда вставьте из буфера свой публичный ssh - ключ в ОДНУ СТРОКУ (это очень важно!!!)

Это должно быть что-то вроде:

ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAIBf3inevLchN36/bjLulNKDOnWTd/12I2QkM+o3uxg4C…

Далее введите

chmod 600 authorized_keys

Добавление приватного ключа в агент аутентификации PuTTY SSH

Запустите агент аутентификации PuTTY SSH PAGEANT.EXE (Правая кнопка по запуску putty, а там есть Run pageant). После запуска щелкните правой кнопкой мыши его значок в системном трее и выберите «View key», а там Add key. Выберите файл закрытого ключа и введите парольную фразу при добавлении ключа. The Pageant работает как хранитель кодовых фраз.

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

Откройте PuTTY и настройте подключение через ключ, указав путь до приватного ключа.

6.png