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

Введение:

В этом руководстве мы рассмотрим процесс настройки аутентификации по ключам SSH с помощью PuTTY и сервера Linux. Использование аутентификации на основе ключей вместо аутентификации на основе паролей позволяет повысить безопасность SSH-соединения. При использовании аутентификации на основе ключей войти в систему могут только те пользователи, которые обладают соответствующим закрытым ключом, что обеспечивает более надежный и безопасный метод аутентификации.

1) Генерация ключей в Linux

Puttygen - это мощный инструмент для генерации пар ключей SSH в Linux-версии PuTTY. Его основной функцией является создание пар открытых и закрытых ключей, которые хранятся в файлах .ppk. Кроме того, Puttygen может конвертировать форматы ключей, обеспечивая гибкость и совместимость с различными SSH-клиентами и серверами.

Puttygen - незаменимый инструмент для генерации SSH-ключей в Linux-версии PuTTY. Подобно инструменту ssh-keygen в OpenSSH, Puttygen позволяет генерировать пары открытых и закрытых ключей. Сгенерированные ключи хранятся в собственном формате PuTTY, а именно в файлах .ppk.

Одной из основных функций Puttygen является создание пар ключей. Эти пары состоят из открытого ключа, который предназначен для передачи другим пользователям, и закрытого ключа, который должен храниться в безопасности и никогда не передаваться. Открытый ключ используется для аутентификации, позволяя пользователям безопасно подключаться к удаленным серверам или системам.

Формат ключей PuTTY, хранящихся в файлах .ppk, специфичен для программы PuTTY. Однако Puttygen обладает дополнительной возможностью конвертации форматов ключей. Это означает, что пользователи могут конвертировать файлы .ppk в другие распространенные форматы, например, в формат ключей OpenSSH, что обеспечивает совместимость с различными SSH-клиентами и серверами.

Необходимые условия

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

1. PuTTY - программа-клиент SSH, например PuTTY. Вы можете загрузить PuTTY отсюда.

2. Linux-сервер - сервер, к которому вы будете подключаться с помощью SSH.

3. SSH Key Pair - Пара открытых и закрытых ключей, сгенерированная сервером или клиентом с помощью ssh-keygen.

1) Генерируем ключи на Linux

Запускаем утилиту ssh-keygen. Программа спросит куда сохранить ключи и предложит задать пароль (можно без пароля).

ssh-keygen

Теперь у нас есть два ключа, которые были сохранены в директорию .ssh: id_rsa — приватный ключ и id_rsa.pub — публичный ключ

Ключи выглядят в виде текста. По этому их можно легко просмотреть, скопировать и вставить в нужный файл.

cat /root/.ssh/id_rsa
cat /root/.ssh/id_rsa.pub

Заходим в папку .ssh

cd /root/.ssh

Запишем наш ключ в нужный файл

cat id_rsa.pub > authorized_keys

Меняем файлу права

chmod -c 0600 id_rsa

2) Авторизация на сервер с помощью программы PuTTY

На сервере выполняем команду

cat /root/.ssh/id_rsa

Копируем содержимое ключа, вставляем в блокнот и сохраняем с расширением *.ppk
Открываем программу PuTTY Key Generator и загружаем наш ключ кнопкой «Load»

Сохраняем наш ключ, соглашаемся созданию без пароля
(Если в 1шаге вы устанавливали пароль на ключи, укажите этот пароль)

Далее открываем клиент PuTTY. Как обычно в главном окне указываем куда подключаемся, а с левой стороны выбираем «Connection → SSH -> Auth», в окошке выбираем наш ключ

Подключаемся, вводим логин на сервере, попадаем на сервер без пароля

В PuTTY также можно сразу указать логин.
Переходим в «Connection → Data» и в поле «username» секции «Auto-login» укажем логин для сеанса.

Заключение

Настройка аутентификации по SSH-ключам с помощью PuTTY и Linux-сервера позволяет установить более безопасное и надежное соединение. Использование SSH-ключей избавляет от необходимости вводить пароли, снижая риск заражения. Выполните описанные в этом документе шаги по настройке аутентификации с помощью SSH-ключей в PuTTY и оцените преимущества этой технологии.