Gå til innholdet

Cookie-innstillinger

Velg hvilke typer cookies du tillater. Du kan når som helst endre valget via Cookie-innstillinger nederst på hver side. Personvernerklæring

Nødvendige

Alltid på

Trengs for å logge inn, beholde handlekurven og huske valgene dine. Disse er alltid på.

Hvilke cookies?
  • weboke_sessie, weboke_klant, weboke_remember: økten din og at du forblir innlogget
  • weboke_basket: handlekurven din
  • wkBtwIncl: visning av priser med eller uten mva.
  • wok_cookies: cookievalget ditt, 12 måneder

Måler hvilken annonse som fører til et besøk eller en bestilling, slik at vi ikke betaler for annonser som ikke gir noe.

Hvilke cookies?
  • Google Ads via Google Tag Manager (_gcl_au, _gcl_aw), opptil 90 dager
  • OpenAI Ads, annonser i ChatGPT
  • wok_aff: hvilken partner som henviste deg til oss (partnerprogram), 60 dager

4,6

Land og språk

Hvert land har sin egen nettside, med priser og mva. for det landet.

Vis

Lag og bruk SSH-nøkler

Modul 2: SSH og nøkler · Lesetid: 10 minutter

Læringsmål: Etter denne leksjonen kan du lage et nøkkelpar, legge den offentlige nøkkelen på serveren din, logge inn uten passord og oppbevare den private nøkkelen din slik at en mistet bærbar PC ikke blir en katastrofe.

Nøkkelbegreper: nøkkelpar, offentlig nøkkel, privat nøkkel, ed25519, RSA, passfrase, ssh-agent, ssh-copy-id, authorized_keys, rettighetene 700 og 600, én nøkkel per enhet, FIDO2-nøkkel

Hvorfor nøkler er bedre enn passord

I leksjon 1.3 logget du inn med et passord. Det fungerer, men en server på internett får besøk fra første minutt av programmer som gjetter passord. Ta en titt i loggen på en helt ny server:

root@web1:~# journalctl -u ssh --since "1 hour ago" | grep -c "Failed password"
214

Hundrevis av forsøk i timen er normalt. Et sterkt passord stopper dem, men du har laget et svakt punkt du ikke trenger. Med en SSH-nøkkel er gjetting meningsløst: det finnes ingenting å gjette som står i en ordliste.

En nøkkel består av to deler som hører sammen, et nøkkelpar:

  • Den private nøkkelen blir på din egen datamaskin. Den som har denne filen (og kjenner passfrasen), kan logge inn. Ikke del den med noen, heller ikke med leverandøren din eller en brukerstøtte.
  • Den offentlige nøkkelen gir du til serveren. Den kan alle se: du kan ikke logge inn med den, bare kontrollere.

Ved innlogging sendes ikke noe passord over linjen. Datamaskinen din beviser med en signatur at den har den private nøkkelen, og serveren kontrollerer signaturen med den offentlige nøkkelen. Selv om noen lytter på nettverket, ser de ingenting de kan bruke på nytt senere.

Lag en nøkkel

Du lager nøkkelen på din egen datamaskin, ikke på serveren. På Windows 10 og 11, macOS og Linux er ssh-keygen allerede med. Åpne PowerShell eller Terminal:

anna@laptop:~$ ssh-keygen -t ed25519 -C "anna@laptop 2026"
Generating public/private ed25519 key pair.
Enter file in which to save the key (/home/anna/.ssh/id_ed25519):
Enter passphrase for "/home/anna/.ssh/id_ed25519" (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/anna/.ssh/id_ed25519
Your public key has been saved in /home/anna/.ssh/id_ed25519.pub
The key fingerprint is:
SHA256:q3J8vX0bT2kPz9mWc1nR4sLh7uYdE5aF6gBiC0oN2xQ anna@laptop 2026

Hva skjer her?

  • -t ed25519 velger typen. Ed25519 er kort, raskt og sikkert, og siden OpenSSH 9.5 også standardtypen hvis du ikke oppgir noe. Må du betjene et gammelt system som ikke kjenner ed25519, bruker du RSA med minst 3072 bit: ssh-keygen -t rsa -b 4096. Eldre typer som DSA er fjernet fra OpenSSH; ikke bruk dem.
  • -C er bare en kommentar. Skriv noe som gjør at du senere ser hvilken enhet nøkkelen tilhører. Det hjelper enormt når du må trekke tilbake en nøkkel.
  • Passfrasen krypterer den private nøkkelen på disken. Blir den bærbare PC-en din stjålet, har tyven en kryptert fil. Uten passfrase har tyven direkte tilgang til alle serverne dine.

Du har nå to filer:

FilHvaDele?
~/.ssh/id_ed25519Privat nøkkelAldri
~/.ssh/id_ed25519.pubOffentlig nøkkel, én tekstlinjeJa, til serveren

På Windows ligger de i C:\Users\anna\.ssh\. Den offentlige nøkkelen er én linje som begynner med ssh-ed25519:

anna@laptop:~$ cat ~/.ssh/id_ed25519.pub
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHk2... anna@laptop 2026

Legg den offentlige nøkkelen på serveren

Serveren ser etter offentlige nøkler i filen ~/.ssh/authorized_keys til brukeren du logger inn med. Hver linje er én nøkkel. Det finnes tre måter å få nøkkelen din dit på:

1. Ved installasjonen. De fleste leverandører har et felt for den offentlige nøkkelen når du oppretter eller installerer en VPS på nytt. Hos WebOké heter feltet "SSH-nøkkel" i VPS-skjermbildet; hos andre leverandører fungerer det på lignende måte. Dette er den beste måten: da trenger passordinnlogging aldri å være slått på.

2. Med ssh-copy-id (macOS og Linux), mens passordinnlogging fortsatt fungerer:

anna@laptop:~$ ssh-copy-id anna@192.0.2.10
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed
anna@192.0.2.10's password:
Number of key(s) added: 1

3. For hånd, for eksempel fra Windows eller via konsollen hos leverandøren din. Lim inn linjen fra .pub-filen din i authorized_keys og sett riktige rettigheter:

anna@web1:~$ mkdir -p ~/.ssh
anna@web1:~$ nano ~/.ssh/authorized_keys
anna@web1:~$ chmod 700 ~/.ssh
anna@web1:~$ chmod 600 ~/.ssh/authorized_keys

Disse rettighetene er ingen detalj. SSH-serveren kontrollerer dem (innstillingen StrictModes er slått på som standard): hvis andre kan skrive i .ssh-mappen din eller hjemmemappen din, ignorerer den nøklene dine. Du får da bare et passordspørsmål igjen, uten noen tydelig feilmelding. Hvordan du leser rettigheter, lærer du i leksjon 3.1.

Test deretter i et nytt vindu:

anna@laptop:~$ ssh anna@192.0.2.10
Enter passphrase for key '/home/anna/.ssh/id_ed25519':
anna@web1:~$

Spørsmålet kommer nå fra din egen datamaskin (passfrasen til nøkkelen), ikke lenger fra serveren.

ssh-agent: lås opp én gang

Å skrive inn passfrasen hver gang er tungvint. ssh-agent holder den opplåste nøkkelen i minnet så lenge du er logget inn på datamaskinen din:

anna@laptop:~$ ssh-add ~/.ssh/id_ed25519
Enter passphrase for /home/anna/.ssh/id_ed25519:
Identity added: /home/anna/.ssh/id_ed25519 (anna@laptop 2026)
anna@laptop:~$ ssh-add -l
256 SHA256:q3J8vX0bT2kPz9mWc1nR4sLh7uYdE5aF6gBiC0oN2xQ anna@laptop 2026 (ED25519)

På macOS kobler agenten seg til nøkkelringen, på Windows er det tjenesten "OpenSSH Authentication Agent" (slå den på én gang under Tjenester). Slik får du det enkle ved å slippe passord, og likevel en kryptert nøkkel på disken.

Vær forsiktig med agent forwarding (ssh -A): da kan serveren du logger inn på bruke agenten din. Den som er root på den serveren, kan da gå videre med nøkkelen din. Bruk det bare på servere du stoler fullt på, eller bruk ProxyJump (leksjon 2.3).

Én nøkkel per enhet, og vit hvilke som ligger hvor

En vanlig feil: å kopiere én privat nøkkel til bærbar PC, stasjonær PC og telefon. Mister du én enhet, må du bytte nøkkelen overalt og sette opp alle enhetene på nytt. Bedre:

  • lag en egen nøkkel på hver enhet, med en tydelig kommentar (-C "anna@telefoon");
  • legg alle offentlige nøkler i authorized_keys, én per linje;
  • mister du en enhet, fjerner du bare den ene linjen.

Sjekk jevnlig hvilke nøkler som har tilgang:

anna@web1:~$ ssh-keygen -lf ~/.ssh/authorized_keys
256 SHA256:q3J8vX0bT2kPz9mWc1nR4sLh7uYdE5aF6gBiC0oN2xQ anna@laptop 2026 (ED25519)
256 SHA256:Zt5oP1yW8eQ3rK6sV0bN9mD2xA4cH7jL1uI5fG8tE3w anna@telefoon (ED25519)

Står det en nøkkel der som du ikke kjenner igjen, er det et varselsignal (leksjon 10.3). Inntrengere legger gjerne inn sin egen nøkkel i authorized_keys for å komme tilbake senere.

En maskinvarenøkkel (FIDO2, for eksempel en YubiKey) går også an. Med ssh-keygen -t ed25519-sk ligger den hemmelige delen på selve nøkkelen, og du må berøre den hver gang den brukes. En stjålet fil er da verdiløs. Det er et fint steg videre, men ikke nødvendig for å komme i gang.

Mistet den private nøkkelen?

Mister du din eneste private nøkkel og passordinnlogging er slått av, kommer du ikke lenger inn via SSH. Derfor:

  • legg alltid minst to nøkler på serveren (for eksempel bærbar og stasjonær PC);
  • vit hvordan konsollen hos leverandøren din fungerer (leksjon 1.2). Der logger du inn som om du har koblet et tastatur til serveren, og det fungerer også uten SSH. Hos WebOké heter det Konsoll i VPS-skjermbildet; andre leverandører kaller det VNC-konsoll, nettkonsoll eller nødkonsoll.

På AlmaLinux og Rocky Linux

Alt i denne leksjonen fungerer likt. Én ekstra felle: med SELinux slått på må ~/.ssh ha riktig sikkerhetsetikett. Har du laget eller kopiert mappen for hånd og nøkkelen din blir ignorert, retter restorecon -Rv ~/.ssh det opp.

Oppsummering

  • Et nøkkelpar består av en privat nøkkel (blir hos deg) og en offentlig nøkkel (går til serveren, i ~/.ssh/authorized_keys).
  • Lag nøkler med ssh-keygen -t ed25519 på din egen datamaskin, med en passfrase; bruk ssh-agent for enkelhets skyld.
  • Rettigheter teller: ~/.ssh på 700 og authorized_keys på 600, ellers ignorerer serveren nøkkelen din.
  • Én nøkkel per enhet, med en tydelig kommentar, slik at du kan trekke tilbake én av dem.
  • Sørg for en ekstra nøkkel og kjenn konsollen hos leverandøren din som nødinngang.

Quiz

1. Hvilken fil kan du gi til leverandøren din eller en kollega slik at du får tilgang til en server?



2. Du har lagt nøkkelen din i authorized_keys, men serveren spør fortsatt om passord. Hva er en vanlig årsak?



3. Hvorfor setter du en passfrase på den private nøkkelen?



4. Den bærbare PC-en din er stjålet. På serveren ligger tre nøkler: bærbar PC, stasjonær PC og telefon, hver med sin egen kommentar. Hva gjør du?



5. Hva er risikoen ved ssh -A (agent forwarding) til en server du ikke stoler på?



Oppgave

Oppgave O2.1: Lag og bruk en nøkkel. Lag en ed25519-nøkkel på din egen datamaskin med en passfrase og en tydelig kommentar, legg den på serveren din (via feltet hos leverandøren din, ssh-copy-id eller for hånd), kontroller rettighetene og logg inn med nøkkelen i et nytt vindu. Fyll deretter inn fingeravtrykket til nøkkelen din (fra ssh-keygen -lf ~/.ssh/id_ed25519.pub) og svar på spørsmålene om hvor den private nøkkelen din ligger og hva du gjør hvis du mister den. Programmet kontrollerer bare at fingeravtrykket har riktig form; resten gjør du selv.

Oppgave O2.1: Lag og bruk en nøkkel

Denne oppgaven gjør du selv; ingen kontrollerer den. Kryss av det du har gjort, og merk oppgaven som fullført.




Avkrysningene og notatene dine blir kun i denne nettleseren; vi sender dem ikke noe sted. Er du logget inn, lagrer vi kun i Mine kurs at du har gjort oppgaven.

Les mer

Stegene i disse artiklene gjelder for VPS-skjermbildet og panelene hos WebOké; hos andre leverandører fungerer det på lignende måte.

Et øyeblikk …

Sett opp domenene dine

Ordne for hvert domene navnetjenerne, koblingen til hostingen din og hvem som blir innehaver.

Laster inn domenene dine…