Jak vygenerovat klíč SSH ve Windows: 2 metody

Photo of author

By etechblogcz

Zásadní body

  • Vytvořte si SSH klíč v operačním systému Windows, a to prostřednictvím příkazové řádky nebo WSL. Klient OpenSSH, jenž je součástí Windows 11, tento proces značně usnadňuje a zabezpečuje. Uživatelé Windows 10 mohou tuto funkci aktivovat v nastavení volitelných funkcí.
  • Pro generování klíče použijte příkaz „ssh-keygen“ nebo „ssh-keygen -t ed25519“ v příkazové řádce nebo WSL. Zadejte umístění pro uložení a (volitelně) heslovou frázi, která klíč ochrání.

SSH klíč (Secure Shell) představuje ověřovací prostředek, který se využívá v rámci protokolu SSH. Slouží k zabezpečení přenosů dat, síťových propojení a správě rozsáhlých cloudových platforem, jako je například AWS. Lze jej vytvořit i v prostředí Windows a tím zajistit šifrovaná připojení. Následuje postup, jak na to.

Jak vygenerovat SSH klíč v prostředí Windows

Protokol Secure Shell (SSH) je preferovanou metodou pro zabezpečení komunikace mezi počítači přes internet. Doporučuje se vyhnout se používání uživatelského jména a hesla. Místo toho je výhodnější využít kryptograficky vygenerovaný SSH klíč.

Operační systém Windows 11 je vybaven integrovaným klientem OpenSSH. Díky tomu je generování SSH klíčů bez nutnosti instalace externího softwaru velmi jednoduché. Stejný postup by měl fungovat i ve Windows 10. V případě potíží je však třeba aktivovat funkci „OpenSSH Client“ v nastavení volitelných funkcí systému Windows.

V systému Windows existují dva způsoby, jak vytvořit SSH klíč: prostřednictvím příkazové řádky a pomocí WSL (Windows Subsystem for Linux). Nejdříve se zaměříme na první metodu.

Pro jednotné rozhraní příkazové řádky se doporučuje využít Windows Terminal, který v jediném okně umožňuje spouštění příkazové řádky, PowerShellu a Windows Subsystem for Linux. Tento nástroj nabízí větší flexibilitu a zjednodušuje úkoly, jako je generování SSH klíčů.

1. Generování SSH klíče pomocí příkazové řádky

Pro vytvoření SSH klíče v prostředí Windows za použití příkazové řádky postupujte podle následujících kroků:

  • Spusťte příkazovou řádku s oprávněním správce.
  • Do příkazové řádky zadejte tento příkaz a stiskněte klávesu Enter:
    ssh-keygen
  • Systém vás vyzve k zadání umístění, kam se má klíč uložit.
  • Klíč uložíte do výchozího umístění stisknutím klávesy Enter (obvykle C:\Users\vaše_uživatelské_jméno/.ssh/id_rsa). Alternativně můžete zadat i jiné umístění.
  • Následně budete vyzváni k zadání heslové fráze pro ochranu klíče. Tento krok je volitelný, ale přidává další vrstvu zabezpečení. Pokud heslo nechcete, stiskněte Enter.
  • Potvrďte heslovou frázi (pokud jste ji zadali) a stiskněte Enter. Pokud jste heslo nezadávali, stiskněte Enter znovu.
  • Váš SSH klíč je nyní vygenerován a systém zobrazí otisk klíče a jeho umístění. Dvojici klíčů si můžete prohlédnout v zadaném umístění.

    Kromě klíčů RSA je možné generovat také klíče Ed25519. Proces je velmi podobný, liší se pouze drobně v příkazovém řádku. Místo příkazu ssh-keygen použijte tento příkaz:

    ssh-keygen -t ed25519

    Další kroky jsou shodné s generováním RSA klíče. Zadejte umístění souboru, nastavte heslovou frázi (pokud si přejete) a systém vygeneruje klíč včetně otisku a umístění.

    Otisk klíče, který obdržíte, slouží k identifikaci vašeho SSH klíče. Používá se k ověření pravosti při připojování ke vzdálenému serveru. Po vygenerování SSH klíče se vytvoří dvě části – soukromý a veřejný klíč. Rozlišíte je podle jejich přípony. Soukromý klíč nemá příponu, zatímco veřejný klíč má příponu .pub.

    Soukromý klíč slouží k šifrování a dešifrování dat a je důležité jej uchovávat v tajnosti. Veřejný klíč se používá pouze k šifrování a jeho sdílení s ostatními neohrožuje soukromí soukromého klíče.

    2. Generování SSH klíče pomocí WSL

    Druhým způsobem, jak vygenerovat SSH klíč, je využití subsystému Windows pro Linux (WSL). Proč ale zvolit WSL, když je k dispozici příkazová řádka Windows?

    WSL umožňuje spouštění příkazů Linuxu v prostředí Windows bez nutnosti instalace samostatného operačního systému. To je výhodné pro vývojáře a správce systémů, kteří pracují jak s Windows, tak s Linuxem.

    Pokud máte potíže, nahlédněte do našeho návodu na aktivaci WSL ve Windows.

    Pro zahájení postupu postupujte následovně:

  • Spusťte terminál WSL.
  • Chcete-li vytvořit klíč RSA-4096, zadejte tento příkaz a stiskněte Enter:
    ssh-keygen -t rsa -b 4096
  • Pro vytvoření klíče Ed25519 příkaz upravte následujícím způsobem:
    ssh-keygen -t ed25519
  • Na konec příkazu můžete přidat i svou e-mailovou adresu. To funguje jako komentář, který usnadňuje identifikaci klíče patřícího k danému účtu, pokud vytvoříte více klíčů pro různé servery. Příklad: ssh-keygen -t rsa -b 4096 -C „[email protected]„.
  • Vyberte umístění klíče nebo stiskněte Enter pro použití výchozího umístění.
  • Terminál vás vyzve k zadání hesla. Tento krok je volitelný, takže můžete heslo vynechat stisknutím klávesy Enter.
  • Zobrazí se zpráva s umístěním a otiskem vašeho nově vytvořeného SSH klíče. Tento klíč můžete nyní použít pro zabezpečení připojení mezi vaším počítačem a vzdálenými servery.

    Jaké jsou rozdíly mezi klíči RSA a Ed25519?

    V předchozích krocích byly popsány dva typy SSH klíčů: RSA a Ed25519. Jaké jsou mezi nimi rozdíly?

  • Algoritmus: RSA (Rivest-Shamir-Adleman) používá asymetrické šifrování, zatímco Ed25519 využívá kombinaci eliptických křivek a asymetrického šifrování.
  • Velikost klíče: Klíče RSA mohou mít různé velikosti, od 1024 do 4096 bitů. Ed25519 má pevnou velikost klíče 256 bitů, což umožňuje rychlejší zpracování než u RSA.
  • Zabezpečení: Ed25519 je obecně považován za bezpečnější a odolnější vůči útokům.
  • Výkon: Ed25519 je rychlejší a efektivnější než RSA.
  • Kompatibilita: RSA je obecně rozšířenější, ale Ed25519 získává na popularitě.
  • Volba mezi algoritmy závisí na vašich individuálních potřebách a systémech. Generování SSH klíčů je s použitím metod dostupných ve Windows snadné a důležité z hlediska zabezpečení přístupu ke vzdáleným systémům.