
Udgivet

Hvis du har brug for at bruge SSH i Linux til at fjernadministrere andre computere, vil denne vejledning guide dig gennem netop det.
I nutidens indbyrdes forbundne landskab er evnen til at administrere computere fra forskellige geografiske steder vokset fra luksus til nødvendighed. Der er flere måder at gøre dette på, afhængigt af hvilket operativsystem der bruges. Til Linux-baserede systemer, den mest almindelige og sikreste måde at administrere din pc på er at bruge SSH (eller Sikker Shell).
Lad os grave ind i, hvordan man bruger SSH på Linux til at oprette forbindelse til andre computere.
Væsentlige første skridt
Før du kan oprette forbindelse til en anden Linux-computer med SSH, skal du opfylde følgende forudsætninger:
- Målcomputeren skal forblive tændt og tilsluttet et netværk.
- Den nødvendige klient- og serversoftware skal være installeret og aktiveret.
- Du skal kende IP-adressen eller værtsnavnet på målmaskinen.
- Passende tilladelser til fjernadgang skal være på plads.
- Firewall-konfigurationer på fjerncomputeren skal tillade den indgående forbindelse.
Hvis du har adgang til en Linux-computer, der drives af f.eks. dit webhostingfirma, burde de allerede have taget sig af alt det. Dernæst skal du muligvis lave en grundlæggende softwareinstallation på din egen Linux-computer.
Brug af SSH på Linux: En praktisk vejledning
Etablering af en funktionel SSH-forbindelse kræver både klient- og serversoftwaremoduler. OpenSSH fungerer som en open source alternativ overvejende til Linux-platforme.
For at installere den korrekte OpenSSH-klient skal du bruge terminaladgang på din lokale maskine. Bemærk, at Ubuntu-systemer mangler en forudinstalleret SSH-server.
Installation af en OpenSSH-klient
Før du dykker ned i installationsprocessen, bør du kontrollere, at SSH-klienten ikke allerede er der. For at gøre det, bare åbne et terminalvindue. Du kan enten søge efter "terminal" eller trykke på ctrl + alt + t på dit tastatur.
Når du er i dit terminalvindue, test for tilstedeværelsen af SSH-klienten ved at skrive følgende:
$ ssh
Hvis Linux-computeren allerede har en SSH-klient installeret, vil du se følgende oplysninger rulle hen over skærmen.
usage: ssh [-46AaCfGgKkMNnqsTtVvXxYy] [-B bind_interface] [-b bind_address] [-c cipher_spec] [-D [bind_address:]port] [-E log_file] [-e escape_char] [-F configfile] [-I pkcs11] [-i identity_file] [-J [user@]host[:port]] [-L address] [-l login_name] [-m mac_spec] [-O ctl_cmd] [-o option] [-p port] [-Q query_option] [-R address] [-S ctl_path] [-W host: port] [-w local_tun[:remote_tun]] destination [command [argument ...]]
Hvis du i stedet modtager en klage over, at filen ikke blev fundet, skal du gå videre med OpenSSH-klientinstallationen. Heldigvis er dette simpelt nok.
På Ubuntu og andre Debian-baserede installationer skal du bare køre følgende kommando i Terminal:
$ sudo apt install openssh-client
Hvis du kører Fedora eller en anden fordeling der bruger nam i stedet for passende, kør bare denne kommando:
$ sudo yum -y install openssh-clients
Nyere Fedora-systemer kan bruge dnf i stedet. Hvis det lyder som dig, er den magiske kommando:
$ sudo dnf install -y openssh-clients
Følg instruktionerne på skærmen, og du er klar til at gå på ingen tid.
Opstart af en SSH-forbindelse
Når du har sikret dig, at SSH-klienten er installeret på din Linux-computer, er det tid til at starte den første forbindelse. Mens du stadig er i terminalvinduet, skal du udstede følgende kommando:
$ ssh username@host_ip_address
Hvis brugernavne matcher på tværs af lokale og eksterne maskiner, skal du blot indtaste:
$ ssh host_ip_address
Første gang du opretter forbindelse, vil du blive mødt med en prompt, der spørger, om du vil fortsætte med at oprette forbindelse til den ukendte computer. Indtast på dette tidspunkt Ja og fortsæt.
Indtast din adgangskode, idet du forstår, at du ikke får nogen feedback på skærmen under adgang. Når du er færdig, skal du være logget ind på fjernserveren og kan begynde at udføre enhver opgave, du skal udføre på den computer i første omgang.

Forståelse af SSH: Et overblik på højt niveau
Secure Shell eller SSH - nogle gange betegnet som Secure Socket Shell - er en protokol, der muliggør sikker forbindelse til fjernservere eller computere gennem en tekstbaseret grænseflade.
Ved godkendelse af en sikker SSH-kanal initialiseres en shell-session, hvilket tillader kommandolinjeinteraktion fra din lokale maskine.
Denne protokol er velkendt og elsket af system- og netværksadministratorer, såvel som alle, der har brug for sikker fjernstyring af maskiner.
Mekanik af SSH-funktionalitet
Etablering af en SSH-kanal kræver samarbejde mellem to centrale komponenter: en klient-side-applikation og dens server-side-modpart. Klientapplikationen starter forbindelsen ved at angive legitimationsoplysninger for ekstern vært.
Hvis verificeret, opretter softwaren en krypteret kanal mellem de to computere. På fjernmaskinen scanner en SSH-dæmon konstant en udpeget TCP/IP-port for potentielle forbindelsesanmodninger.
Ved modtagelsen formidler dæmonen sin software- og protokolkapacitet, og begge enheder udveksler identifikationsdata. En krypteret session følger, hvis legitimationsoplysningerne matcher, overvejende via SSH-protokol version 2.
Avanceret SSH-brug: Lagring af din krypteringsnøgle for at undgå at indtaste en adgangskode
Lad os nu sige, at du vil undgå at skulle Skriv dit kodeord hver gang du logger på en ekstern server. For en sikker, adgangskodefri forbindelse til en anden computer er en SSH-nøgle (Secure Shell) uundværlig.
Du har måske allerede en sådan nøgle, men det er aldrig en dårlig idé at generere en ny. En SSH-nøgle, der stammer fra din lokale computer, er opdelt i to adskilte elementer: en fortrolig, privat nøgle - som aldrig skal videregives - og dens offentlige modstykke. Denne offentlige nøgle spredes derefter til alle fjernsystemer, du skal logge på.
Nogle mennesker kan vælge en SSH-nøgle til en lang række applikationer, lige fra fjernsystemlogin til GitLab. En nøgle til at styre dem alle, kan man sige. Min tilgang er dog mere detaljeret. Jeg bruger forskellige nøgler, som hver er designet til en bestemt undergruppe af opgaver.
For eksempel bruger jeg en dedikeret nøgle til lokale maskiner i mit hjemmenetværk, en anden eksklusiv nøgle til webservere under min administration, og endnu en unik nøgle til at interagere med Git værter.
Oprettelse af et nyt SSH-nøglepar
Sådan kan du oprette en ny SSH-nøgle og derefter kopiere den til den fjernserver, du vil bruge den til. Først skal du oprette nøglen vha ssh-keygen.
$ ssh-keygen -t ed25519 -f /.ssh/lan
Flaget -t angiver den type nøgle, der skal oprettes, og sikrer, at krypteringen er højere end standarden. Det -f flag angiver nøglens filnavn og placering.
Når du udsteder denne kommando, bliver du bedt om at oprette en adgangskode til nøglen. Denne adgangskode, hvis du indstiller den, forbliver lokal og sendes ikke på tværs af netværket.
Sender din SSH-nøgle til fjernserveren
Dernæst skal du sende den sikkerhedsnøgle til fjernserveren. For at opnå dette skal du bare udsende denne kommando:
$ ssh-copy-id -i /.ssh/lan.pub user@host_ip_address
Du vil blive bedt om dit login-adgangskode på fjernværten. Når processen er fuldført, vil din nøgle dog blive installeret på den computer.

Du bør teste ved at prøve at logge ind på fjerncomputeren. Når du ssh ind i fjernværten igen, bliver du bedt om adgangssætningen til nøglen, hvis du angiver en. Dette er ikke din login-adgangskode, husk. Det er den adgangssætning, der er specifik for den pågældende SSH-nøgle.
På mange distributioner, inklusive Linux, åbnes denne adgangssætningsprompt som en dialogboks. Som du kan se fra eksemplet nedenfor, kan du markere et felt for at få Linux-computeren til at huske adgangssætningen. Det vil dog reducere nøglens sikkerhed.

Når du har indtastet adgangssætningen til din SSH-nøgle, skal du ikke indtaste den igen, før du logger ud af den lokale computer.
Andre måder at bruge SSH på
Når alt det er gjort, er du god til at bruge SSH til fjernadgang til andre Linux- eller Unix-baserede computere. Selvfølgelig handler det ikke kun om at komme til kommandoprompten.
SSH inkluderer også en sikker måde at overføre filer mellem computere uden at bruge FTP. Du kan bruge Secure Copy eller scp til flytte disse filer rundt. Hvis du er en Windows 11-bruger og skal bruge SSH, er du heldig, da klienten er forudinstalleret. Du kan selv generere og bruge SSH-nøgler i Windows 11.