Як створити ключ 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.

Існує два способи створення ключа SSH у Windows — командний рядок і WSL (підсистема Windows для Linux). Почнемо з першого способу.

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

1. Створення ключа SSH за допомогою командного рядка

Щоб створити ключ SSH у Windows за допомогою командного рядка, виконайте такі дії:

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

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

     ssh-keygen -t ed25519 

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

    Відбиток ключа, який ви отримуєте, є ідентифікатором вашого ключа 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, щоб продовжити.
  • Нарешті ви побачите повідомлення з місцем розташування та відбитком вашого щойно згенерованого ключа SSH. Тепер ви можете використовувати цей ключ для захисту з’єднань між вашим комп’ютером і віддаленими серверами.

    Які відмінності між ключами RSA та Ed25519?

    У наведених вище кроках ми обговорили два типи ключів SSH: RSA та Ed25519. Але чим вони відрізняються?

  • Алгоритм: RSA (Rivest-Shamir-Adleman) використовує асиметричне шифрування, тоді як Ed25519 використовує як еліптичні криві, так і асиметричне шифрування.
  • Розмір ключа: Ключі RSA мають змінний розмір ключа в діапазоні від 1024 до 4096 біт. Ed25519 має фіксований розмір ключа 256 біт, що робить його швидшим, ніж RSA.
  • Безпека: Ed25519 зазвичай вважається більш безпечним і стійким до атак.
  • Продуктивність: Ed25519 швидший і ефективніший, ніж RSA.
  • Сумісність: RSA підтримується ширше, але впровадження Ed25519 зростає.
  • Зрештою, ви можете використовувати будь-який криптографічний алгоритм залежно від вашої системи. Згенерувати ключі SSH легко за допомогою методів, доступних у Windows, і це слід враховувати через серйозні онлайн-ризики під час доступу до віддалених систем.