3 способа создания ключей SSH в Windows

Опубликовано: 2023-11-19

Если вы выполняете свою работу через облачные вычисления, получая доступ к удаленным серверам, которые не находятся в вашей текущей или домашней сети, вы, вероятно, уже знакомы с SSH или ключами Secure Shell. Поскольку ключи SSH во много раз более безопасны, чем традиционная комбинация имени пользователя и пароля, они часто используются для доступа к рабочим станциям, использующим удаленные серверы. Ключи SSH обеспечивают простой и безопасный доступ сотрудникам или другим людям, которым они разрешают войти на сервер.

generate ssh keys on windows

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

Оглавление

Что такое SSH-кейген?

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

Генераторы ключей SSH обычно используются для безопасного доступа к облачным серверам. Однако их также можно использовать и на других рабочих местах для предоставления доступа пользователям и сотрудникам, например, в центрах обработки данных, компаниях и т. д. Создание Keygen можно выполнить на компьютере под управлением Windows тремя способами, описанными ниже.

Как работает SSH Keygen?

Прежде чем вы научитесь создавать ключи SSH, важно иметь краткое представление о том, как они работают. При создании ключей SSH вы по сути создаете пару ключей — публичный и закрытый. Как следует из названия, закрытые ключи не должны передаваться другим лицам.

Открытые ключи, с другой стороны, расположены на сервере другой стороны, будь то ваш работодатель или ваша компания. Таким образом, открытый и закрытый ключи могут установить соединение между компьютером, осуществляющим доступ, и центральным сервером и взаимодействовать друг с другом. Если замок и ключ совпадают, вам будет предоставлен доступ.

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

Командная строка Windows — лучший способ сделать это, поскольку она встроена в систему по умолчанию. Создание ключей SSH занимает максимум несколько шагов, и вам не нужны никакие дополнительные инструменты.

Windows 11 по умолчанию поставляется с терминалом Windows, но мы рекомендуем загрузить его из Microsoft Store, если вы используете более старую версию. Он может запускать командную строку, Windows PowerShell и подсистему Windows для Linux, предлагая при этом гораздо более чистый и удобный интерфейс.

  1. Нажмите клавишу Windows и найдите Терминал . Чтобы продолжить использование командной строки, найдите вместо этого cmd .
    open windows terminal
  2. Введите ssh-keygen и нажмите Enter .
    type ssh keygen
  3. Вам будет предложено ввести путь сохранения по вашему выбору и имя файла, который нужно сохранить. Вы можете пропустить первый пункт и сохранить ключи в папке вашего ПК по умолчанию, обычно это диск C. Не волнуйся; Рядом с ним будет отображаться местоположение файла.
    enter location pathway
  4. Вам будет предложено ввести парольную фразу для дополнительной защиты. Опять же, вы не можете защитить ключи с помощью парольной фразы, но мы настоятельно не рекомендуем этого делать. Затем нажмите клавишу Enter .
    enter passphrase
  5. Введите парольную фразу еще раз, чтобы подтвердить ее.
    enter passphrase again to confirm it
  6. Появится подтверждающее сообщение о том, что ваши ключи были сгенерированы и сохранены в указанном месте.
    the generated ssh keys

По умолчанию Windows 11 генерирует ключи, соответствующие 2048-битному алгоритму RSA. Однако если вам нужны ключи SSH, основанные на другом алгоритме, добавьте -t (имя алгоритма) после первой команды на втором шаге. Например, GitHub рекомендует использовать алгоритм ed25519, поэтому вам необходимо ввести ssh-keygen -t ed25519 , чтобы сгенерировать соответствующие ключи.

ed25519 algorithm

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

pair of ssh keys generated

Генерация ключей SSH с использованием WSL

Если вам нравится идти по пути Linux, то вам подойдет подсистема Windows для Linux. Хотя процесс более или менее похож, его рекомендуется использовать тем, кто хорошо разбирается в мире Linux. Если нет, вам следует придерживаться первого метода.

В качестве предварительного условия вам понадобится подсистема Windows для Linux (WSL) на вашем ПК с Windows 10, которую вы можете загрузить из Microsoft Store. Пользователям Windows 11 не нужно загружать инструмент WSL, поскольку встроенный терминал Windows хорошо поддерживается для запуска команд WSL в приложении. Как упоминалось выше, вы можете загрузить Windows Terminal из Microsoft Store, если вы используете более старую версию Windows.

  1. Откройте Терминал Windows . Кроме того, вы также можете открыть окно командной строки в WSL.
    open windows terminal
  2. В отличие от первого метода, вам придется указать алгоритм генерации ключей. Например, чтобы сгенерировать ключ RSA-4096, введите ssh-keygen -t rsa -b 4096 «ваш@email.адрес» и нажмите Enter . Указание адреса электронной почты необходимо для облегчения идентификации. Его можно пропустить, если вы генерируете ключи с помощью терминала Windows, поскольку Windows автоматически фиксирует имя и имя пользователя вашего компьютера.
    enter wsl command
  3. Введите местоположение файла, который необходимо сохранить, и при необходимости укажите парольную фразу. Вы можете оставить настройки по умолчанию, нажав Enter .
    enter passphrase
  4. Подтвердите парольную фразу, набрав ее еще раз, и нажмите Enter .
    confirm your passphrase

Генерация ключей SSH с помощью PuTTY

В течение многих лет PuTTY был лучшим решением для установления связи между серверами и компьютерами. Хотя клиент SSH все еще используется, он уже не так широко распространен. Тем не менее, PuTTY по-прежнему является работоспособным генератором ключей SSH, поэтому вы можете попробовать его, если по какой-то причине описанные выше методы вам не помогли. Прежде чем продолжить, загрузите и настройте клиент PuTTY для Windows. PuTTY также можно загрузить из Microsoft Store.

  1. Нажмите клавишу Windows и найдите PuTTYgen . Открой это.
    open puttygen client
  2. Вам нужно будет выбрать тип генерируемых ключей SSH. Выберите необходимый тип ключа и введите значение бита в разделе «Параметры» . Например, выберите RSA и введите 4096 , чтобы создать ключи типа RSA-4096 . Тип EdDSA можно дополнительно настроить с помощью раскрывающегося меню рядом с ним, чтобы включить 255 бит и ключи формы типа Ed25519 .
    enter ssh key parameters
  3. Выберите Создать .
    generate ssh keys
  4. Генератор PuTTY предложит вам случайным образом переместить курсор в пустую область, чтобы увеличить случайность ключа, что, в свою очередь, увеличивает его силу.
    create randomness by moving cursor
  5. После того, как ключ был сгенерирован, вы можете указать парольную фразу . Подтвердите парольную фразу, введя ее еще раз в следующее поле ввода.
    set a passphrase
  6. Нажмите «Сохранить открытый ключ» , чтобы сохранить открытый ключ в выбранном вами месте. Имя файла должно иметь в конце расширение .pub .
    save public key
  7. Сохраните закрытый ключ, нажав «Сохранить закрытый ключ» . Вы увидите предупреждение, если не установите парольную фразу; выберите Да , чтобы продолжить.
    save private key

Обратите внимание, что закрытый ключ по умолчанию работает только с собственным клиентом PuTTY. Если ваша рабочая станция не работает с клиентом PuTTY, поэтому лучше всего экспортировать в формат OpenSSH , чтобы обеспечить универсальную совместимость. Для этого на последнем шаге выберите «Конверсии» и нажмите кнопку «Экспортировать OpenSSH» .

Как сгенерировать несколько ключей?

Если вам нужно несколько ключей SSH для входа на разные серверы, вы можете легко создать несколько ключей. Для этого вы можете повторить любой из описанных выше процессов и создать дополнительные ключи SSH, но не забудьте соответствующим образом пометить имена файлов или сохранить их под уникальными именами, чтобы избежать путаницы. Чтобы не забыть кодовые фразы ключей, ознакомьтесь с лучшими бесплатными менеджерами паролей, чтобы сохранить кодовые фразы сгенерированных ключей.

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

Легко создавайте SSH-ключи

Вот и все, ребята! Процесс генерации ключей SSH прост, а благодаря официальным и интегрированным платформам, таким как Windows Terminal, вам даже не нужно загружать отдельное приложение или программное обеспечение. Другие платформы, такие как WSL и PuTTY, столь же просты в использовании и эффективны. Не забывайте кодовые фразы для ключей и храните свои ключи в безопасности, не передавая их другим.

Часто задаваемые вопросы о SSH-кейгенах

1. Что такое кейген SSH?

SSH-генератор ключей — это современная замена традиционному дуэту имени пользователя и пароля. Технически ключи SSH — это виртуальные ключи, которые генерируются, сопоставляются и используются для доступа к удаленным облачным платформам, сайтам и серверам. Он состоит из двух ключей — публичного и частного, первый из которых находится на сервере, а второй предоставляет доступ при правильном сопоставлении.

2. Обязан ли я предоставить парольную фразу?

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

3. Почему для одного ключа SSH создаются два файла?

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

4. Как я могу генерировать ключи SSH, если я привык к Linux?

Подсистема Windows для Linux, сокращенно WSL, позволяет генерировать собственные ключи SSH. Кроме того, терминал Windows, поддерживающий команды WSL, также можно использовать для создания ключей в стиле Linux. Возможно, вам придется запланировать несколько дополнительных шагов, но вы получите дополнительные преимущества детального контроля и знакомства с Linux.

5. Как мне перенести ключи SSH, если я перехожу на новый компьютер?

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

6. Как потом найти ключи SSH?

Будь то Windows Terminal или WSL, вам будет показано точное местоположение созданного вами ключа SSH. Если вы выйдете из программы без проверки, вам нужно будет ввести некоторые команды в Терминале Windows. Введите ~/.ssh/id_rsa и ~/.ssh/id_rsa.pub для поиска частных и общедоступных ключей SSH, если они доступны.