Hoppa till huvudinnehåll

SSH-nycklar i Git

Vad är SSH & en SSH-nyckel?

SSH står för Secure Shell och är ett nätverksprotokoll som gör det enklare att ansluta säkert till andra datorer, speciellt över ett osäkert nätverk. En SSH-nyckel är hur man krypterar och avkrypterar informationen, det gör datorn automatiskt. Med SSH-nycklar använder man oftast inte lösenord.

SSH-nycklar 

En SSH-nyckel innehåller två delar, en privat och en publik del. 

Den publika nyckeln (.pub)

Den publika nyckeln är den delen av nycklen du delar ut till andra tjänster som ett "har du den här, kan du förstå mig"-kort. Den här nyckeln kan du fritt sprida till exempelvis Github eller vår egen GitLab för att autentisera dig. 

Den privata nyckeln

Du ska aldrig dela med dig av den privata delen av din SSH-nyckel eftersom det är den delen av nyckeln som autentiserar att det verkligen är du som ansluter. Du kan identifiera den publika delen av din nycken som du kan dela med dig av för den har .pub i slutet. 

Skapa SSH-nyckelpar i Windows!

  1. Öppna Powershell.

  2. Skriv in ssh-keygen och tryck på enter.

  3. Följ sedan instruktionerna tills du ser bilden nedan.

image-1620048931052.png

Nu finns nyckeln i .ssh i din användarmapp. (C:\Users\[användarnamn]\.ssh) i filen id_rs.pub

Skapa en SSH-nyckel i Linux!

Det finns en mer detaljerad guide här som man kan följa, men den är på engelska.

Steg 1 - Skapa ett SSH-nyckelpar på den klienten du ska använda

I terminalen i Linux (eller ekvivalent WSL på Windows) skriver du in:

$ ssh-keygen -t rsa

Följ sedan instruktionerna som ges. 

Du behöver inte ange en passphrase såvida du inte vill ha ett extra lager av säkerhet ifall någon skulle komma över din privata SSH-nyckel. Men då skulle du behöva ange din passphrase varje gång du vill koppla dig via SSH med din nyckel.

När du har gått igenom processen kommer du  i ~/.ssh återfinna två filer (eller flera om du har flera nycklar) en id_rsa.pub och en id_rsa (eller vilket namn du nu valt). Det är innehållet i id_rsa.pub som du ska använda ifall du vill autentisera dig emot GitLab. 

Använd SSH-nyckeln i Git

  1. Gå in på git.ssis.nu och logga in. (Använd ditt Google-konton, elev@stockholmscience.se)

  2. Klicka på “Edit profile”

  3. Klicka på “SSH Keys”

  4. Kopiera allt i filen id_rsa.pub som vi hittar i .ssh i din användarmapp. C:\Users\ELEV-TAG\.ssh eller i ~/.ssh i Linux

  5. Klicka sedan på “Add key".

  6. Klistra in nyckeln i rutan och klicka på spara.

Nu har din nya nyckel registrerats på skolans GitLab och nu kan du klona och skicka upp commits till dina repositories via SSH.