Как сгенерировать SSH-ключ в Windows: 2 метода

Ключевые выводы

  • Создайте ключ SSH в Windows с помощью командной строки или WSL. Клиент OpenSSH в Windows 11 делает это простым и безопасным, хотя для этого требуется включить дополнительные функции в Windows 10.
  • С помощью командной строки или WSL запустите «ssh-keygen» или «ssh-keygen -t ed25519» и введите место сохранения и парольную фразу (необязательно), чтобы сгенерировать ключ.

Ключ SSH (Secure Shell) — это учетные данные аутентификации, используемые с протоколом SSH для защиты передачи файлов, подключения сетей и управления большинством крупных облачных сервисов, таких как AWS. Вы можете генерировать их как пароли в Windows и создавать зашифрованные соединения — вот как.

Как сгенерировать SSH-ключ в Windows

Протокол Secure Shell (SSH) — лучший способ заблокировать небезопасное соединение между компьютерами через Интернет. Вам следует избегать использования протокола с именем пользователя и паролем и вместо этого выбрать криптографически сгенерированный ключ SSH.

Windows 11 поставляется со встроенным клиентом OpenSSH. Это позволяет легко генерировать ключи SSH без использования сторонней программы. В Windows 10 все должно работать так же; Если у вас возникли проблемы, откройте панель дополнительных функций Windows и включите опцию OpenSSH Client.

Существует два способа создания ключа SSH в Windows — командная строка и WSL (подсистема Windows для Linux). Начнем с первого метода.

  Как исправить отсутствующий стереомикс или опцию Wave Out в Windows

Вы можете предпочесть терминал Windows, поскольку он обеспечивает унифицированную среду для интерфейсов командной строки. Он запускает командную строку, PowerShell и подсистему Windows для Linux в одном окне. Этот инструмент повышает универсальность и упрощает такие задачи, как генерация ключей SSH.

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

Чтобы сгенерировать ключ SSH в Windows с помощью командной строки, выполните следующие действия:

  • Запустите командную строку от имени администратора.
  • В командной строке введите следующее и нажмите Enter:
     ssh-keygen 
  • Система предложит вам ввести местоположение файла, в котором следует сохранить ключ.
  • Нажмите Enter, чтобы сохранить ключ в папке по умолчанию (обычно C:\Users\ваше_имя_пользователя/.ssh/id_rsa). При необходимости вы также можете указать другое местоположение.
  • Вам будет предложено ввести парольную фразу для ключа. Это необязательный шаг, но парольная фраза добавляет уровень безопасности вашему SSH-ключу и защищает его. Если вам не нужна парольная фраза, нажмите Enter.
  • Повторно введите парольную фразу (если вы ее выбрали) и нажмите Enter. Если вы не ввели парольную фразу, нажмите Enter еще раз.
  • Теперь система сгенерирует ваш SSH-ключ и предоставит вам отпечаток пальца и местоположение ключа. Вы также можете просмотреть пару ключей в сохраненном месте.

    Помимо ключей RSA, с его помощью вы также можете генерировать ключи Ed25519. Процесс очень похож, с небольшими изменениями в командной строке. Вместо выполнения с помощью ssh-keygen выполните следующую команду:

     ssh-keygen -t ed25519 

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

      Сохраняйте фотографии и видео из Instagram в вашей системе [Windows]

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

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

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

    Второй метод создания ключа SSH — через подсистему Windows для Linux (WSL). Но зачем вам выбирать WSL, если у вас уже есть командная строка Windows?

    WSL предоставляет полную среду Linux в Windows для запуска команд Linux без установки отдельной ОС. Это полезно для разработчиков и системных администраторов, работающих с Windows и Linux.

    Если у вас возникли проблемы с этим, ознакомьтесь с нашим руководством по включению WSL в Windows.

    Для начала выполните следующие действия:

  • Запустите терминал WSL.
  • Чтобы сгенерировать ключ RSA-4096, введите следующую команду и нажмите Enter:
     ssh-keygen -t rsa -b 4096 
  • Чтобы сгенерировать ключ Ed25519, измените команду соответствующим образом:
     ssh-keygen -t ed25519 
  • Вы также можете добавить свой адрес электронной почты в конце команды. Это похоже на комментарий, который помогает легко определить, какой ключ принадлежит какой учетной записи, если вы создаете несколько ключей для разных сайтов. Например, ssh-keygen -t rsa -b 4096 -C «[email protected]».
  • Выберите местоположение для ключа или нажмите Enter, чтобы использовать местоположение по умолчанию.
  • Терминал предложит вам выбрать пароль. Это необязательно, поэтому при желании вы можете оставить это поле пустым. Нажмите Enter, чтобы продолжить.
  •   Как запланировать закрытие приложения в Windows 10

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

    Каковы различия между ключами RSA и Ed25519?

    В приведенных выше шагах мы обсудили два типа ключей SSH: RSA и Ed25519. Но чем они отличаются?

  • Алгоритм: RSA (Ривест-Шамир-Адлеман) использует асимметричное шифрование, а Ed25519 использует как эллиптические кривые, так и асимметричное шифрование.
  • Размер ключа: ключи RSA имеют переменный размер ключей от 1024 до 4096 бит. Ed25519 имеет фиксированный размер ключа 256 бит, что делает его быстрее, чем RSA.
  • Безопасность: Ed25519 обычно считается более безопасным и устойчивым к атакам.
  • Производительность: Ed25519 быстрее и эффективнее RSA.
  • Совместимость: RSA поддерживается более широко, но распространение Ed25519 растет.
  • В конечном итоге вы можете использовать любой криптографический алгоритм в зависимости от вашей системы. Генерировать ключи SSH легко с помощью методов, доступных в Windows, и его следует учитывать из-за серьезных онлайн-рисков при доступе к удаленным системам.