Jak wygenerować klucz SSH w systemie Windows: 2 metody

  • Wygeneruj klucz SSH w systemie Windows za pomocą wiersza poleceń lub WSL. Klient OpenSSH w systemie Windows 11 sprawia, że ​​jest to łatwe i bezpieczne, chociaż wymaga to włączenia opcjonalnych funkcji w systemie Windows 10.
  • Za pomocą wiersza poleceń lub WSL uruchom „ssh-keygen” lub „ssh-keygen -t ed25519” i wprowadź lokalizację zapisu oraz hasło (opcjonalnie), aby wygenerować klucz.

Klucz SSH (Secure Shell) to dane uwierzytelniające używane w protokole SSH do zabezpieczania przesyłania plików, łączenia sieci i zarządzania większością dużych usług w chmurze, takich jak AWS. Możesz je generować jak hasła w systemie Windows i tworzyć szyfrowane połączenia — oto jak to zrobić.

Jak wygenerować klucz SSH w systemie Windows

Protokół Secure Shell (SSH) to najlepszy sposób blokowania niezabezpieczonego połączenia między komputerami w Internecie. Należy unikać używania protokołu z nazwą użytkownika i hasłem i zamiast tego wybrać klucz SSH generowany kryptograficznie.

Windows 11 ma wbudowanego klienta OpenSSH. Ułatwia to generowanie kluczy SSH bez korzystania z programu innej firmy. Powinno działać tak samo w systemie Windows 10; jeśli masz problemy, otwórz panel opcjonalnych funkcji systemu Windows i włącz opcję OpenSSH Client.

Istnieją dwa sposoby generowania klucza SSH w systemie Windows — za pomocą wiersza poleceń i WSL (podsystem Windows dla systemu Linux). Zacznijmy od pierwszej metody.

Możesz preferować terminal Windows, ponieważ zapewnia ujednolicone środowisko dla interfejsów wiersza poleceń. Uruchamia wiersz poleceń, program PowerShell i podsystem Windows dla systemu Linux w jednym oknie. To narzędzie zwiększa wszechstronność i upraszcza zadania, takie jak generowanie kluczy SSH.

1. Generowanie klucza SSH za pomocą wiersza poleceń

Aby wygenerować klucz SSH w systemie Windows za pomocą wiersza poleceń, wykonaj następujące kroki:

  • Uruchom wiersz poleceń jako administrator.
  • W wierszu poleceń wpisz następujące polecenie i naciśnij klawisz Enter:
     ssh-keygen 
  • System poprosi o podanie lokalizacji pliku, w którym ma zostać zapisany klucz.
  • Naciśnij klawisz Enter, aby zapisać klucz w domyślnej lokalizacji (zwykle C:\Users\twoja_nazwa_użytkownika/.ssh/id_rsa). W razie potrzeby możesz także określić inną lokalizację.
  • Zostaniesz poproszony o podanie hasła dla klucza. Jest to krok opcjonalny, ale hasło dodaje warstwę zabezpieczeń do klucza SSH i chroni go. Jeśli nie chcesz hasła, naciśnij Enter.
  • Wprowadź ponownie hasło (jeśli je wybrałeś) i naciśnij Enter. Jeśli nie wpisałeś hasła, naciśnij ponownie Enter.
  • System wygeneruje teraz Twój klucz SSH i udostępni Ci odcisk palca oraz lokalizację klucza. Możesz także wyświetlić parę kluczy w zapisanej lokalizacji.

    Oprócz kluczy RSA można za jego pomocą wygenerować także klucze Ed25519. Proces jest dość podobny, z niewielką zmianą w wierszu poleceń. Zamiast wykonywać za pomocą ssh-keygen, uruchom następującą komendę:

     ssh-keygen -t ed25519 

    Pozostałe kroki są takie same jak przy generowaniu klucza RSA. Będziesz teraz musiał wprowadzić lokalizację pliku i ustawić hasło (jeśli chcesz), a system wygeneruje klucz na podstawie odcisku palca i lokalizacji.

    Odcisk palca klucza, który otrzymasz, jest identyfikatorem Twojego klucza SSH. Możesz go użyć do potwierdzenia autentyczności podczas łączenia się ze zdalnym serwerem. Kiedy generujesz klucz SSH, generowane są dwa klucze — prywatny i publiczny. Te dwa klucze można rozróżnić po ich rozszerzeniach. Klucz prywatny nie ma rozszerzenia, natomiast klucz publiczny kończy się rozszerzeniem .pub.

    Klucz prywatny służy do szyfrowania i deszyfrowania i powinien być traktowany jako poufny. Z drugiej strony klucz publiczny służy wyłącznie do szyfrowania, a udostępnianie go innym nie narusza prywatności klucza prywatnego.

    2. Generowanie klucza SSH za pomocą protokołu WSL

    Drugą metodą generowania klucza SSH jest użycie podsystemu Windows dla systemu Linux (WSL). Ale dlaczego miałbyś wybrać WSL, skoro masz już wiersz poleceń systemu Windows?

    WSL zapewnia kompletne środowisko Linux w systemie Windows, umożliwiające uruchamianie poleceń systemu Linux bez konieczności instalowania osobnego systemu operacyjnego. Jest to przydatne dla programistów i administratorów systemów pracujących z systemami Windows i Linux.

    Jeśli masz z tym problem, zapoznaj się z naszym przewodnikiem dotyczącym włączania WSL w systemie Windows.

    Aby rozpocząć, wykonaj następujące kroki:

  • Uruchom terminal WSL.
  • Aby wygenerować klucz RSA-4096, wpisz następujące polecenie i naciśnij Enter:
     ssh-keygen -t rsa -b 4096 
  • Aby wygenerować klucz Ed25519, zmień odpowiednio polecenie:
     ssh-keygen -t ed25519 
  • Możesz także dodać swój adres e-mail na końcu polecenia. To przypomina komentarz, który pomaga łatwo określić, który klucz należy do którego konta, jeśli utworzysz wiele kluczy dla różnych witryn. Na przykład ssh-keygen -t rsa -b 4096 -C „[email protected]”.
  • Wybierz lokalizację klucza lub naciśnij klawisz Enter, aby użyć lokalizacji domyślnej.
  • Terminal wyświetli monit o wybranie hasła. Jest to opcjonalne, więc jeśli wolisz, możesz pozostawić je puste. Naciśnij Enter, aby kontynuować.
  • Na koniec zobaczysz komunikat z lokalizacją i odciskiem palca nowo wygenerowanego klucza SSH. Możesz teraz używać tego klucza do zabezpieczania połączeń między komputerem a serwerami zdalnymi.

    Jakie są różnice między kluczami RSA i Ed25519?

    W powyższych krokach omówiliśmy dwa typy kluczy SSH: RSA i Ed25519. Ale czym się różnią?

  • Algorytm: RSA (Rivest-Shamir-Adleman) wykorzystuje szyfrowanie asymetryczne, podczas gdy Ed25519 wykorzystuje zarówno krzywe eliptyczne, jak i szyfrowanie asymetryczne.
  • Rozmiar klucza: klucze RSA mają różne rozmiary kluczy, od 1024 do 4096 bitów. Ed25519 ma stały rozmiar klucza wynoszący 256 bitów, co czyni go szybszym niż RSA.
  • Bezpieczeństwo: Ed25519 jest ogólnie uważany za bezpieczniejszy i odporny na ataki.
  • Wydajność: Ed25519 jest szybszy i wydajniejszy niż RSA.
  • Kompatybilność: RSA jest szerzej wspierany, ale popularność Ed25519 rośnie.
  • Ostatecznie możesz użyć dowolnego algorytmu kryptograficznego, w zależności od systemów. Generowanie kluczy SSH jest łatwe dzięki metodom dostępnym w systemie Windows i należy je wziąć pod uwagę ze względu na poważne ryzyko online podczas uzyskiwania dostępu do systemów zdalnych.