Linux-nätverk och TCP/IP för utvecklare · Lektion

SSH för säker fjärråtkomst

Konfigurera och säkra SSH för fjärråtkomst via kommandoraden, filöverföringar och portvidarebefordran.

Lektion 1 av 411 steg

SSH för säker fjärråtkomst är en gratis lektion i Linux-nätverk och TCP/IP för utvecklare på CoddyKit. Detta är lektion 1 av 4. Ni kan läsa hela lektionen gratis nedan och sedan öva praktiskt i webbläsaren med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt. Den ingår i lärvägen för Linux-nätverk och TCP/IP för utvecklare, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i Linux-nätverk och TCP/IP för utvecklare innehåller totalt 4 lektioner.

Introduktion till SSH

Secure Shell (SSH) är ett kraftfullt nätverksprotokoll som låter dig ansluta säkert till fjärrdatorer. Det skapar en krypterad tunnel mellan din lokala dator och en fjärrserver.

SSH är nödvändigt för att:

  • köra kommandon på fjärrservrar.
  • överföra filer säkert.
  • skapa säkra tunnlar för andra nätverkstjänster.

Det är ett grundläggande verktyg för att hantera Linux-servrar på distans och på ett säkert sätt.

Så fungerar SSH

SSH bygger på en klient-server-modell. Din lokala dator fungerar som klient och fjärrservern kör en SSH-daemon (serverprogramvaran).

När du initierar en anslutning genomför klienten och servern ett kryptografiskt handslag. Det upprättar en säker, krypterad kanal som skyddar all utväxlad data mot avlyssning och manipulation.

Den starka krypteringen och identitetsverifieringen gör SSH säkert att använda även i opålitliga nätverk som internet.

Ansluta på distans

För att ansluta till en fjärrserver behöver du dess IP-adress eller värdnamn samt ett giltigt användarnamn på servern. Grundkommandot är enkelt:

När du ansluter för första gången ber SSH dig verifiera värdens identitet och lägga till dess fingeravtryck i filen ~/.ssh/known_hosts. Verifiera alltid detta fingeravtryck om möjligt!

ssh username@hostname_or_ip

Autentisering med SSH-nycklar

Även om lösenord fungerar erbjuder SSH-nycklar ett säkrare och smidigare sätt att autentisera sig. De eliminerar behovet av att ange lösenordet vid varje anslutning.

Ett SSH-nyckelpar består av två delar:

  • En privat nyckel: Förvaras hemligt på din lokala dator.
  • En publik nyckel: Delas med de fjärrservrar som du vill komma åt.

Under anslutningen använder servern din publika nyckel för att kryptera en utmaning. Endast din privata nyckel kan dekryptera den, vilket bevisar din identitet utan att lösenordet någonsin skickas över nätverket.

Generera SSH-nycklar

Du kan generera ditt eget SSH-nyckelpar på din lokala dator med kommandot ssh-keygen. Vi rekommenderar att du använder en stark lösenfras för att skydda din privata nyckel.

Kommandot frågar var nycklarna ska sparas (standard är ~/.ssh/id_rsa och ~/.ssh/id_rsa.pub) samt efter en valfri lösenfras.

ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

# Example output:
# Generating public/private rsa key pair.
# Enter file in which to save the key (/home/user/.ssh/id_rsa):
# Enter passphrase (empty for no passphrase):
# Enter same passphrase again:
# Your identification has been saved in /home/user/.ssh/id_rsa
# Your public key has been saved in /home/user/.ssh/id_rsa.pub

Distribuera din publika nyckel

För att aktivera nyckelbaserad autentisering måste din publika nyckel kopieras till fjärrservern. Den ska placeras i filen ~/.ssh/authorized_keys i din hemkatalog på fjärrservern.

Det enklaste sättet att göra detta är att använda verktyget ssh-copy-id:

Alternativt kan du kopiera innehållet i filen id_rsa.pub manuellt och lägga till det sist i fjärrserverns fil ~/.ssh/authorized_keys.

ssh-copy-id username@hostname_or_ip

Säker filöverföring med SCP

Secure Copy Protocol (SCP) gör det möjligt att säkert kopiera filer och kataloger mellan lokala och fjärranslutna värdar, eller till och med mellan två fjärranslutna värdar.

SCP använder SSH för dataöverföring och autentisering, vilket säkerställer att dina filer är krypterade under hela processen.

  • Så här kopierar du en lokal fil till en fjärrserver:
scp /path/to/local/file.txt user@example.com:/path/to/remote/

SCP: från fjärrserver till lokal dator

På samma sätt kan du enkelt kopiera filer från en fjärrserver till din lokala dator med SCP:

  • Så här kopierar du en fjärrfil till din lokala dator:

Kom ihåg att ange den fullständiga sökvägen för både källa och mål för att undvika fel.

scp user@example.com:/path/to/remote/file.txt /path/to/local/

SSH-portvidarebefordran (lokal)

SSH kan skapa säkra ”tunnlar” för att vidarebefordra nätverkstrafik. Lokal portvidarebefordran gör att du kan komma åt en tjänst i ett fjärrnätverk som om den kördes på din lokala dator.

Detta är mycket användbart när du vill komma åt tjänster bakom en brandvägg eller i ett internt nätverk.

Kommandosyntax: ssh -L local_port:target_host:target_port user@ssh_server

Exempel: Kom åt en webbserver (port 80) på internal_web_server från din lokala webbläsare via localhost:8080.

ssh -L 8080:internal_web_server:80 user@jump_host

Snabbkontroll: SSH-funktioner

Vilka av följande påståenden om SSH är SANT?

Sammanfattning: SSH för säker åtkomst

Bra jobbat! Du har lärt dig grunderna i SSH för säker fjärråtkomst.

  • Vi gick igenom grundläggande SSH-anslutning med ssh username@host.
  • Vi utforskade SSH-baserad autentisering med nycklar, genererade nycklar med ssh-keygen och distribuerade dem med ssh-copy-id.
  • Du lärde dig hur du överför filer säkert med SCP.
  • Du lärde dig om lokal portvidarebefordran för att tunnla trafik säkert.

SSH är ett oumbärligt verktyg för alla utvecklare och systemadministratörer. Fortsätt öva på dessa kommandon för att bemästra hantering av fjärrservrar!

Gratis att börja

Lär dig Linux-nätverk och TCP/IP för utvecklare med en AI-lärare – gratis

Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.

Kurser
12
Lektioner
48

Vanliga frågor

Är lektionen ”SSH för säker fjärråtkomst” gratis?

Ja – hela texten till ”SSH för säker fjärråtkomst” kan läsas gratis här på webben. Om Ni vill öva interaktivt med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt och låsa upp resten av kursen i Linux-nätverk och TCP/IP för utvecklare, kan Ni uppgradera till CoddyKit PRO. Kursen i Linux-nätverk och TCP/IP för utvecklare innehåller totalt 4 lektioner.

Vad lär jag mig i ”SSH för säker fjärråtkomst”?

Konfigurera och säkra SSH för fjärråtkomst via kommandoraden, filöverföringar och portvidarebefordran. Ni övar på Linux-nätverk och TCP/IP för utvecklare med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.

Behöver jag någon erfarenhet för att börja lära mig Linux-nätverk och TCP/IP för utvecklare?

Du behöver inga förkunskaper. Utbildningen i Linux-nätverk och TCP/IP för utvecklare på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 1 av 4.

Hur lång tid tar lektionen ”SSH för säker fjärråtkomst”?

De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.

Kan jag skriva och köra kod i den här Linux-nätverk och TCP/IP för utvecklare-lektionen?

Ja. Varje Linux-nätverk och TCP/IP för utvecklare-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.

Alla lektioner i den här kursen

  1. SSH för säker fjärråtkomst
  2. HTTP/HTTPS-webbtjänster
  3. DHCP- och DNS-tjänster
  4. NTP och tjänster för tidssynkronisering
← Tillbaka till Linux-nätverk och TCP/IP för utvecklare