Авторизация SSH по ключу в Linux

  • Автор:
  • Опубликовано:
  • Изменено:
  • Просмотры: 1 380
  • Комментарии: 0
  • Рейтинг: 90,00%
  • Голосов: 2

Генерация ключа запускается следующей командой:

ssh-keygen -t rsa -b 2048

-t rsa - тип шифрования;
-b 2048 - длина ключа;

если нужно сгенерировать ключ под другого пользователя, то необходимо воспользоваться командой sudo:

sudo -u ЛОГИН ssh-keygen -t rsa -b 2048

очевидно, ЛОГИН необходимо заменить на имя нужного пользователя.

При генерации ключа вам будет задано несколько вопросов:

Enter file in which to save the key (/home/user/.ssh/id_rsa) - если нет необходимости сохранять в другое место сгенерированные файлы ключей, то оставляем без ответа;
Enter passphrase (empty for no passphrase): - если хотим защитить наш файл ключа паролем (пароль именно на клиентский ключ!), если же хотим сделать файл ключа без пароля, то оставляем без ответа. ВАЖНО - ВОССТАНОВИТЬ ЗАБЫТЫЙ ПАРОЛЬ НЕВОЗМОЖНО;
Enter same passphrase again: - повторяем пароль;

После конца генерации, появляется два ключа:

Your identification has been saved in /home/user/.ssh/id_rsa.
Your public key has been saved in /home/user/.ssh/id_rsa.pub.

id_rsa - приватный ключ пользователя;
id_rsa.pub - публичный ключ сервера;

В файле /etc/ssh/sshd_config проверяем:

Разрешаем использование RSA ключей:

RSAAuthentication yes

Разрешаем авторизацию при помощи ключей:

PubkeyAuthentication yes

Путь где будут находиться ключи, с которыми можно соединяться:

AuthorizedKeysFile    %h/.ssh/authorized_keys

Потом идем в директорию пользователя

cd /root/.ssh

и записываем авторизованные ключи

cat id_rsa.pub >> authorized_keys

Копируем себе файл id_rsa, и удаляем его на сервере. Так же удаляем и id_rsa.pub.

Теперь для авторизации в Windows с помощью ключа, скопированного ранее с сервера, нужно воспользоваться утилитой PuTTYGen (идет в комплекте с PuTTY), которая сконвертирует ключ в понятный PuTTY формат.

Conversion - Import key

puttygen1

При желании можем написать комментарий в поле "Key comment", а так же добавить пароль, написав его в "Key passphrase".
Далее жмем "Save private key".

puttygen2

Для авторизации по ключу, в PuTTY/KiTTY нужно проделать следующее:

Connection - data - autologin username = имя пользователя

kitty1

Connection - data - ssh - auth - указываем файл ключа

kitty2

Если соединение с ssh сервером проходит успешно, то следует отключить возможность захода с помощью авторизации по логину/паролю. В конфиге /etc/ssh/sshd_config меняем значение параметров "PasswordAuthentication" и "PermitEmptyPasswords" на "no"

PasswordAuthentication no
PermitEmptyPasswords no

Перезапускаем службу

/etc/init.d/ssh restart

Оценить статью

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (2 оценок, среднее: 4,50 из 5)

Добавить комментарий

Ваш e-mail не будет опубликован.

Читайте ранее:
Windows 8: Настройка клавиш переключения языка
Mozilla Thunderbird: сортировка сообщений в новостной конференции по дате
LibreOffice: сохранение по умолчанию в формате Microsoft Office 97/2000/XP/2003
Делаем txpower 33 на Alfa AWUS 036NHR
uTorrent: Как отключить рекламу?
Закрыть