Oppgave - nøkkelbasert innlogging
For å bli litt kjent med innlogging ved hjelp av nøkkelpar, vil denne oppgaven gå gjennom hvordan en kan gå frem for å sette opp sikker autentisering ved hjelp av kryptografiske nøkler.
Oppgaven består av
- Bekrefte SSH-status
- Generere SSH-nøkler
- Overføre nøkkel til server
- Teste tilkobling
- Sikre SSH-konfigurasjonen
1. Verifiser SSH-status
På serveren:
# Sjekk SSH-status
sudo systemctl status ssh
# Sjekk hvilken port som lyttes på
sudo ss -tulpn | grep ssh
2. Generer SSH-nøkler
På din lokale maskin (Windows):
# Generer ny SSH-nøkkel
ssh-keygen -t ed25519 -C "homelab"
# Nøklene lagres vanligvis i:
# C:\Users\<brukernavn>\.ssh\id_ed25519 (privat nøkkel)
# C:\Users\<brukernavn>\.ssh\id_ed25519.pub (offentlig nøkkel)
3. Overfør nøkkel til server
Metode 1: ssh-copy-id (Linux/Mac)
ssh-copy-id brukernavn@server-ip
Metode 2: Kopiere fil (Windows)
Åpne et PowerShell-vindu på pc. Naviger til mappen som inneholder ssh-nøkkelen du har generert.
Standard mappe på windows er
C:\Users\<ditt_brukernavn>\.ssh
# Kopier filen fra windows til server
scp id_ed25519.pub brukernavn@server-ip:~/
# Du får beskjed om å skrive inn passord, dette er passordet for ditt brukernavn på serveren.
Logg deg så på server, og gjør følgende i terminalen (bash) når du står i din hjemmappe:
cat id_ed25519.pub >> .ssh/authorized_keys
Metode 3: Manuell (Windows)
# Vis offentlig nøkkel
type C:\Users\<brukernavn>\.ssh\id_ed25519.pub
# Kopier innholdet
# På serveren:
mkdir -p ~/.ssh
nano ~/.ssh/authorized_keys
# Lim inn den offentlige nøkkelen på en ny linje
4. Test tilkobling
# Test SSH-tilkobling
ssh brukernavn@server-ip
# Hvis alt er riktig, skal du nå logge inn uten passord
Vanlige problemer
Problem: Tilkobling nektes
Sjekk:
- IP-adresse er korrekt
- SSH-tjenesten kjører
- Brannmur tillater SSH
- Rettigheter på .ssh-mappe
Problem: Nøkkel aksepteres ikke
Sjekk:
- Rettigheter på .ssh-mappe og filer
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
Dokumentasjon
Skriv ned følgende i et tekstdokument:
- Serverens IP-adresse
- Nummeret til nettverksporten som brukes til SSH
- Filbane til SSH-nøkler