Hvad er SSH og hvordan virker det?

SSH er en sikret netværksprotokol til at få adgang til fjerncomputere i et netværk.

Computere taler med hinanden gennem netværk. Derfor definerede netværksforskere et sæt regler for kommunikation til andre maskiner og begyndte at udvikle protokoller som Telnet; ved at bruge det, kan en bruger tage kontrol over en anden computer.

Men de er ikke sikre, dvs. alle i midten af ​​netværket kan opsnappe og læse de data, der overføres. I midten af ​​90’erne er en mere sikker protokol ved navn ssh blevet introduceret som en pålidelig efterfølger af telnet-protokollen.

Hvis du er softwareudvikler eller systemadministrator, der arbejder i en industri, har du måske brugt ssh, mindst en enkelt gang. Hvis du ikke gjorde det, så lad os lære det nu, da det er en af ​​de essentielle færdigheder, du skal vide.

Hvad er SSH?

SSH eller Secure Shell eller Secure Socket Shell er en netværksprotokol, der hjælper os med sikker adgang til og kommunikation med fjernmaskiner (for det meste fjernservere).

Det giver stærk kryptering og bruges i vid udstrækning af netværksadministratorer og udviklere til at administrere fjernsystemer og applikationer, udføre kommandoer, dele filer osv.

Behov for SSH

SSH blev oprettet i 1995 for at løse sikkerhedsproblemer, som usikrede fjernadgangsprotokoller som f.eks rlogin, rsh, Telnet.

Lad os nu tale om Telnet, som står for Teletype Network udviklet i 1969. Det er et simpelt kommandolinjeværktøj, der kører på din computer for at få adgang til en fjernserver (hvor som helst i verden). Og send kommandoer, der skal udføres på den server, ligesom hvis du sidder lige foran fjernserveren (selv miles væk fra serveren). Telnet transmitterer og modtager beskeder i almindelig tekst over et netværk.

  17 bedste kurser/ressourcer til at lære Kotlin-programmering

De kommandoer, du ville udføre, kunne være at køre programmer, oprette mapper, oprette/slette/overføre filer, starte/stoppe tjenester osv.

Problemet med at tilslutte en anden maskine i et netværk er, at de data, der overføres, vil passere gennem mange netværk. I mellemtiden kan nogle af dem være usikre, og de transmitterende data kan opsnappes, muligvis ændres, før de når den tilsigtede målmaskine.

I de tidlige dage, hvor sikkerhed ikke var så vigtigt, foregår al kommunikation i almindelig tekst. Derfor kan de data, der transmitteres over internettet mellem klient og server, let opsnappes. Og den kan læses, da beskederne ikke er krypteret.

Derfor er klartekstprotokoller ekstremt usikre og bruges aldrig til følsom datatransmission som adgangskoder, hemmeligheder osv. Derfor bliver SSH betragtet som et sikkert alternativ til ældre netværksprotokoller for fjernadgang.

Hvordan virker det?

SSH bruger en klient-server-arkitektur til sikker kommunikation over netværket ved at forbinde en ssh-klient med ssh-serveren. Som standard lytter ssh-serveren til standard TCP-port 22 (du kan ændre dette for bedre sikkerhed).

Den bruger en offentlig nøglekrypteringsteknik til at godkende mellem klient og server. Derudover bruger protokollen stærk symmetrisk kryptering og hashing-algoritmer til udveksling af meddelelser mellem klient og server for at sikre privatliv og dataintegritet.

  Hvad er redaktion? 8 bedste redigeringssoftware til at skjule følsomme data

Linux er det meget brugte operativsystem til fjernservere på grund af dets sikkerhed og holdbarhed. Mange servere, der bruger Linux-operativsystemer på internettet, har kørt i årevis uden mange fejl eller endda blevet genstartet.

De fleste SSH-sessioner (en periode, hvor vi får adgang til fjernserveren) vil kun have følgende to operationer:

  • Godkendelse
  • Kommandoudførelse

SSH-servere kan godkende klienter ved hjælp af en række forskellige metoder.

Og de to populære måder er:

Adgangskodebaseret godkendelse er standardmetoden, der bruges til godkendelse af ÅbnSSH installerede klienter. Det er den mest grundlæggende ssh-godkendelse, men ikke den mest sikre.

Selvom adgangskoder sendes sikkert til serveren, kan moderne brute force-angreb omgå godkendelsen.

Nøglebaseret autentificering forbedrer systemsikkerheden yderligere ved at generere SSH-nøglepar, som viser sig at være et pålideligt og sikkert alternativ.

Efter at serveren har godkendt klienten med succes, etableres en sikker forbindelse mellem dem.

Adgang til fjernserver ved hjælp af SSH

Hvis du er en Mac/Linux-bruger, kan du direkte bruge terminalen til at skrive og køre ssh-kommandoer, da OpenSSH allerede er installeret som standard.

Hvis du er en Windows-bruger, skal du installere en tredjeparts terminalemulatorklient for at køre ssh-kommandoer. PuTTY er den mest populære ssh-klient til Windows-operativsystemet.

For at oprette forbindelse til en fjernserver ved hjælp af SSH skal du vide mindst to ting.

Syntaksen for grundlæggende ssh-kommando er:

$ ssh <user-name> @ <host> -p <port-no>

Brugernavnet er fjernmaskinens brugernavn, vi forsøger at forbinde (og ikke brugeren på din lokale maskine), og værten er enten en IP-adresse eller et domænenavn.

  Overfør filer direkte mellem to skriveborde fra din webbrowser

Lad os se på et eksempel på at oprette forbindelse til en ekstern server ved hjælp af OverTheWire internet side. Det er et gratis krigsspil-udfordringswebsted.

Lad os nu oprette forbindelse til bandit udfordring ved at bruge ssh. Det er en af ​​de tilgængelige udfordringer på hjemmesiden, der lærer at logge ind med SSH.

Legitimationsoplysninger:

brugernavn og adgangskode: bandit0
vært og port: bandit.labs.overthewire.org, 2220

Når du skriver følgende kommando og trykker enter:

$ ssh [email protected] -p 2220

Det vil bede dig om adgangskoden til godkendelsesformål. Indtast nu adgangskoden og tryk enter:

Hvis den indtastede adgangskode er korrekt, er du logget ind på fjernserveren, og din terminal vil se ud som billedet ovenfor.

Nu kan du bruge fjernmaskinens terminal til at skrive og udføre dine kommandoer og udføre dine nødvendige handlinger.

Når du vil afslutte ssh-sessionen, skal du skrive exit-kommando:

$ exit

Du får en besked, “Forbindelse lukket”, når du logger ud fra ssh-sessionen.

Konklusion

Hovedårsagen bag SSHs popularitet er, at hele kommunikationen mellem serveren og klienten er krypteret.

De fleste mennesker antager, at det er komplekst at bruge ssh, og at få viden om, hvordan det fungerer, er ikke let at forstå, men det er enklere, end du tror. Nu har du en grundlæggende forståelse af SSH, hvordan det fungerer, sikkerhedsaspekterne bag det, og hvorfor det spiller en afgørende rolle i kommunikationen.

Udforsk derefter nogle af ressourcerne for at blive Sysadmin.