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

Материал из Wiki МИАЦ ВО
Перейти к навигации Перейти к поиску
Строка 35: Строка 35:
  
 
===Добавление приватного ключа в агент аутентификации PuTTY SSH===
 
===Добавление приватного ключа в агент аутентификации PuTTY SSH===
Запустите агент аутентификации PuTTY SSH PAGEANT.EXE. После запуска щелкните правой кнопкой мыши его значок в системном трее и выберите «Add key». Выберите файл закрытого ключа и введите парольную фразу при добавлении ключа. The Pageant работает как хранитель кодовых фраз.
+
Запустите агент аутентификации PuTTY SSH PAGEANT.EXE. После запуска щелкните правой кнопкой мыши его значок в системном трее и выберите «View key», а там Add key. Выберите файл закрытого ключа и введите парольную фразу при добавлении ключа. The Pageant работает как хранитель кодовых фраз.
 
===Используйте PuTTY для подключения к вашему серверу===
 
===Используйте PuTTY для подключения к вашему серверу===
 
Откройте PuTTY и настройте подключение через ключ, указав путь до приватного ключа.
 
Откройте PuTTY и настройте подключение через ключ, указав путь до приватного ключа.
  
 
[[Изображение:6.png]]
 
[[Изображение:6.png]]

Версия 11:19, 29 октября 2024

С 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. После запуска щелкните правой кнопкой мыши его значок в системном трее и выберите «View key», а там Add key. Выберите файл закрытого ключа и введите парольную фразу при добавлении ключа. The Pageant работает как хранитель кодовых фраз.

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

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

6.png