Hur man genererar en SSH-nyckel i Windows: 2 metoder

Viktiga takeaways

  • Generera en SSH-nyckel på Windows med kommandotolken eller WSL. OpenSSH-klienten i Windows 11 gör det enkelt och säkert, samtidigt som detta kräver aktivering av valfria funktioner på Windows 10.
  • Med kommandotolken eller WSL, kör ”ssh-keygen” eller ”ssh-keygen -t ed25519” och ange lagringsplatsen och lösenordsfrasen (valfritt) för att generera nyckeln.

SSH-nyckeln (Secure Shell) är en autentiseringsinformation som används med SSH-protokollet för att säkra filöverföringar, ansluta nätverk och hantera de flesta stora molntjänster som AWS. Du kan skapa dem som lösenord på Windows och skapa krypterade anslutningar – så här gör du.

Hur man genererar en SSH-nyckel på Windows

Secure Shell Protocol (SSH) är det bästa sättet att låsa en osäker anslutning mellan datorer över webben. Du bör undvika att använda protokollet med ett användarnamn och ett lösenord och istället välja en kryptografiskt genererad SSH-nyckel.

Windows 11 kommer med en inbyggd OpenSSH-klient. Detta gör det enkelt att generera SSH-nycklar utan att använda ett tredjepartsprogram. Det bör fungera på samma sätt på Windows 10; om du har problem, öppna panelen för Windows tillvalsfunktioner och aktivera alternativet OpenSSH Client.

Det finns två sätt att generera en SSH-nyckel på Windows – Kommandotolken och WSL (Windows Subsystem for Linux). Låt oss börja med den första metoden.

Du kanske föredrar Windows Terminal eftersom den ger en enhetlig miljö för kommandoradsgränssnitt. Den kör kommandotolken, PowerShell och Windows Subsystem för Linux i ett enda fönster. Det här verktyget förbättrar mångsidigheten och förenklar uppgifter som att generera SSH-nycklar.

1. Generera en SSH-nyckel med hjälp av kommandotolken

För att generera en SSH-nyckel på Windows med hjälp av kommandotolken, följ dessa steg:

  • Kör kommandotolken som administratör.
  • Skriv följande i kommandotolken och tryck på Retur:
     ssh-keygen 
  • Systemet kommer att uppmana dig att ange en filplats där nyckeln ska sparas.
  • Tryck på Enter för att spara nyckeln på standardplatsen (vanligtvis C:\Users\ditt_användarnamn/.ssh/id_rsa). Du kan också ange en annan plats om det behövs.
  • Du kommer att bli ombedd att ange en lösenordsfras för nyckeln. Detta är ett valfritt steg, men lösenfrasen lägger till ett säkerhetslager till din SSH-nyckel och skyddar den. Om du inte vill ha en lösenfras, tryck på Enter.
  • Ange lösenordsfrasen igen (om du har valt en) och tryck på Enter. Om du inte angav en lösenfras, tryck på Retur igen.
  • Systemet kommer nu att generera din SSH-nyckel och förse dig med ett fingeravtryck och platsen för nyckeln. Du kan också se nyckelparet på den sparade platsen.

    Förutom RSA-nycklar kan du även generera Ed25519-nycklar med den. Processen är ganska lik, med bara en liten ändring av kommandoraden. Istället för att köra med ssh-keygen, kör följande kommando:

     ssh-keygen -t ed25519 

    De återstående stegen är desamma som för att generera en RSA-nyckel. Du måste nu ange en filplats och ställa in en lösenordsfras (om så önskas), och systemet kommer att generera nyckeln med ett fingeravtryck och plats.

    Nyckelfingeravtrycket du får är en identifierare för din SSH-nyckel. Du kan använda den för att bekräfta äktheten när du ansluter till en fjärrserver. När du genererar en SSH-nyckel genereras två nycklar – en privat och en offentlig nyckel. Du kan skilja dessa två nycklar på deras tillägg. Den privata nyckeln har ingen förlängning, medan den offentliga nyckeln slutar med en .pub förlängning.

    Den privata nyckeln används för kryptering och dekryptering och bör hållas konfidentiell. Å andra sidan används den offentliga nyckeln endast för kryptering, och att dela den med andra äventyrar inte den privata nyckelns integritet.

    2. Generera en SSH-nyckel med WSL

    Den andra metoden för att generera en SSH-nyckel är genom Windows Subsystem for Linux (WSL). Men varför skulle du välja WSL när du redan har Windows Command Prompt?

    WSL tillhandahåller en komplett Linux-miljö inom Windows för att köra Linux-kommandon utan att installera ett separat OS. Detta är användbart för utvecklare och systemadministratörer som arbetar med Windows och Linux.

    Om du har problem med detta, se vår guide för att aktivera WSL på Windows.

    För att börja, följ dessa steg:

  • Starta WSL-terminalen.
  • För att generera en RSA-4096-nyckel, skriv följande kommando och tryck på Enter:
     ssh-keygen -t rsa -b 4096 
  • För att generera en Ed25519-nyckel, ändra kommandot i enlighet med detta:
     ssh-keygen -t ed25519 
  • Du kan också lägga till din e-postadress i slutet av kommandot. Det här är som en kommentar som hjälper till att enkelt identifiera vilken nyckel som hör till vilket konto om du skapar flera nycklar för olika webbplatser. Till exempel, ssh-keygen -t rsa -b 4096 -C ”[email protected]”.
  • Välj en plats för din nyckel eller tryck på Enter för att använda standardplatsen.
  • Terminalen kommer att uppmana dig att välja ett lösenord. Detta är valfritt, så du kan lämna det tomt om du föredrar det. Tryck på Enter för att fortsätta.
  • Slutligen kommer du att se ett meddelande med din nygenererade SSH-nyckels plats och fingeravtryck. Du kan nu använda den här nyckeln för att säkra anslutningar mellan din dator och fjärrservrar.

    Vad är skillnaderna mellan RSA- och Ed25519-nycklar?

    I stegen ovan diskuterade vi två SSH-nyckeltyper: RSA och Ed25519. Men hur är de olika?

  • Algoritm: RSA (Rivest-Shamir-Adleman) använder asymmetrisk kryptering, medan Ed25519 använder både elliptiska kurvor och asymmetrisk kryptering.
  • Nyckelstorlek: RSA-nycklar har olika nyckelstorlekar, från 1024 till 4096 bitar. Ed25519 har en fast nyckelstorlek på 256 bitar, vilket gör den snabbare än RSA.
  • Säkerhet: Ed25519 anses generellt vara säkrare och mer motståndskraftig mot attacker.
  • Prestanda: Ed25519 är snabbare och effektivare än RSA.
  • Kompatibilitet: RSA stöds mer allmänt, men användningen av Ed25519 växer.
  • I slutändan kan du använda endera kryptografisk algoritm beroende på dina system. Att generera SSH-nycklar är enkelt med metoderna som är tillgängliga i Windows och bör övervägas på grund av allvarliga onlinerisker vid åtkomst till fjärrsystem.