Prenosni računalnik Linux, ki prikazuje poziv lupine

Skrbno jemljite spletno varnost in uporabite SSH ključe za dostop do oddaljenih prijav. So varnejši način povezovanja kot gesla. Pokažemo vam, kako ustvariti, namestiti in uporabljati SSH ključe v Linuxu.

Kaj je narobe z gesli?

Varna lupina (SSH) je šifriran protokol, ki se uporablja za prijavo v uporabniške račune na oddaljenih računalnikih Linux ali Unix. Takšni uporabniški računi so običajno zaščiteni z gesli. Ko se prijavite v oddaljeni računalnik, morate navesti uporabniško ime in geslo za račun, v katerega ste prijavljeni.

Gesla so najpogostejša sredstva za zagotavljanje dostopa do računalniških virov. Kljub temu ima varnost, ki temelji na geslu, svoje pomanjkljivosti. Ljudje izbirajo šibka gesla, si delijo gesla, uporabljajo isto geslo v več sistemih in tako naprej.

SSH ključi so veliko bolj varni, in ko so enkrat nastavljeni, so enako enostavni za uporabo kot gesla.

Kaj naredi SSH ključe varne?

SSH ključi so ustvarjeni in uporabljeni v parih. Dva ključa sta povezana in kriptografsko varna. Eden je vaš javni ključ, drugi pa vaš zasebni ključ. Vezani so na vaš uporabniški račun. Če več uporabnikov v enem računalniku uporablja ključe SSH, bodo prejeli svoj par ključev.

Vaš zasebni ključ je nameščen v domači mapi (običajno), javni ključ pa je nameščen v oddaljenem računalniku ali računalnikih, do katerega boste morali dostopati.

Vaš zasebni ključ mora biti varen. Če je dostopna drugim, ste v istem položaju, kot če bi odkrili vaše geslo. Previdna in zelo priporočljiva previdnost je, da se v vašem računalniku šifrira zasebni ključ z robustno geslo.

Javni ključ lahko prosto delite brez kakršnega koli ogrožanja vaše varnosti. Iz pregleda javnega ključa ni mogoče določiti, kaj je zasebni ključ. Zasebni ključ lahko šifrira sporočila, ki jih lahko dešifrira samo zasebni ključ.

Ko podate zahtevo za povezavo, oddaljeni računalnik s svojo kopijo javnega ključa ustvari šifrirano sporočilo. Sporočilo vsebuje ID seje in druge metapodatke. To sporočilo lahko dešifrira samo računalnik, ki ima zasebni ključ - računalnik.

Računalnik dostopa do vašega zasebnega ključa in dešifrira sporočilo. Nato pošlje svoje šifrirano sporočilo nazaj na oddaljeni računalnik. Med drugim to šifrirano sporočilo vsebuje ID seje, ki je bil prejet oddaljenega računalnika.

Oddaljeni računalnik zdaj ve, da morate biti takšni, za katere pravite, da ste, ker bi lahko samo vaš zasebni ključ izvlekel ID seje iz sporočila, ki ga je poslal računalniku.

Prepričajte se, da lahko dostopate do oddaljenega računalnika

Prepričajte se, da se lahko oddaljeno povežete z oddaljenim računalnikom in se prijavite v njega. To dokazuje, da imata vaše uporabniško ime in geslo na oddaljenem računalniku nastavljen veljaven račun in da so vaše poverilnice pravilne.

Ne poskušajte storiti ničesar s ključi SSH, dokler ne preverite, ali lahko uporabite SSH z gesli za povezavo s ciljnim računalnikom.

V tem primeru je oseba z uporabniškim računom z imenom dave prijavljena v računalnik z imenom howtogeek. Povezali se bodo z drugim računalnikom, imenovanim Sulaco.

Vpišejo naslednji ukaz:

ssh dave @ sulaco
ssh dave @ sulaco v terminalskem oknu

Vprašajo jih za geslo, vnesejo ga in so povezani s Sulaco. Njihova ukazna vrstica se spremeni, da to potrdi.

uporabnik Dave povezan s sulaco z uporabo ssh in gesla

To je vse, kar potrebujemo. Tako lahko uporabnik Dave prekine povezavo s Sulaco z ukazom za izhod:

izhod
uporabnik Dave izključen s sulaco

Prejemajo sporočilo o prekinitvi povezave in njihovo ukazno vrstico se vrne na Dave @ howtogeek.

POVEZANE: Kako se povezati s strežnikom SSH iz Windows, macOS ali Linuxa

Ustvarjanje parov ključev SSH

Ta navodila so bila preizkušena na distribucijah Linuxa Ubuntu, Fedora in Manjaro. V vseh primerih je bil postopek enak, zato nobene nove programske opreme ni bilo treba namestiti na noben testni stroj.

Če želite ustvariti SSH ključe, vnesite naslednji ukaz:

ssh-keygen
ssh-keygen v terminalskem oknu

Postopek generacije se začne. Vprašali se boste, kje želite shraniti svoje SSH ključe. Pritisnite tipko Enter, da sprejmete privzeto lokacijo. Dovoljenja v mapi bodo varovana samo za vašo uporabo.

Potrditev lokacije za shranjevanje ključa ssh v oknu terminala

Zdaj boste vprašani za geslo. Toplo vam svetujemo, da tukaj vnesete geslo. In zapomni si, kaj je! Lahko pritisnete Enter, da ne boste imeli gesla, vendar to ni dobra ideja. Geslo, sestavljeno iz treh ali štirih nepovezanih besed, nalepljenih skupaj, bo postalo zelo robustno geslo.

Poziv za geslo v terminalskem oknu

Od vas se bo zahtevalo, da še enkrat vnesete isto geslo in preverite, ali ste vnesli tisto, za kar ste mislili, da ste ga vnesli.

SSH ključi se ustvarijo in shranijo za vas.

Končana generacija tipk in naključna umetnost prikazana v terminalskem oknu

"Naključni", ki je prikazan, lahko prezrete. Nekateri oddaljeni računalniki vam lahko pri vsaki povezavi pokažejo naključno umetnost. Ideja je, da boste prepoznali, ali se naključna umetnost spremeni, in bodite sumljivi do povezave, ker pomeni, da so SSH ključi za ta strežnik spremenjeni.

Namestitev javnega ključa

Vaš javni ključ moramo namestiti na oddaljeni računalnik Sulaco, tako da ve, da javni ključ pripada vam.

To naredimo z ukazom ssh-copy-id. Ta ukaz naredi povezavo z oddaljenim računalnikom, kot je običajni ukaz ssh, vendar namesto, da bi se vam omogočil prijavo, prenese javni ključ SSH.

ssh-copy-id dave @ sulaco
ssh-copy-id dave @ sulaco

Čeprav se ne odjavljate v oddaljeni računalnik, morate vseeno overiti z geslom. Oddaljeni računalnik mora določiti, kateremu uporabniškemu računu pripada nov SSH ključ.

Upoštevajte, da je geslo, ki ga morate tukaj navesti, geslo za uporabniški račun, v katerega se prijavite. To ni geslo, ki ste ga pravkar ustvarili.

ssh-copy-id s pozivom za geslo v oknu terminala

Ko je geslo preverjeno, ssh-copy-id vaš javni ključ prenese na oddaljeni računalnik.

Vrnili se boste v ukazni poziv vašega računalnika. Nimate povezave z oddaljenim računalnikom.

pulzni ključ uspešno prenesen v terminalskem oknu

Povezava s pomočjo SSH tipk

Sledimo predlogu in se poskusimo povezati z oddaljenim računalnikom.

ssh dave @ sulaco
ssh dave @ sulaco v terminalskem oknu

Ker bo postopek povezave zahteval dostop do vašega zasebnega ključa in ker ste zaščitili svoje SSH ključe za geslo, boste morali vnesti geslo, da bo povezava lahko nadaljevala.

pogovorno okno zahteve za geslo

Vnesite geslo in kliknite gumb Odkleni.

Ko vnesete svojo geslo v terminalsko sejo, vam je ne bo treba več vnesti, dokler imate odprto okno terminala. Lahko povežete in prekinete povezavo s toliko oddaljenih sej, ne da bi znova vnesli geslo.

Lahko potrdite potrditveno polje za možnost »Samodejno odkleni to tipko, kadar sem prijavljen«, vendar bo to zmanjšalo vašo varnost. Če pustite računalnik brez nadzora, se lahko vsak poveže z oddaljenimi računalniki, ki imajo vaš javni ključ.

Ko vnesete geslo, ste povezani z oddaljenim računalnikom.

priključite oddaljeni računalnik v oknu terminala

Če želite postopek še enkrat preveriti do konca, prekinite povezavo z ukazom za izhod in se z istega okna terminala znova povežite z oddaljenim računalnikom.

ssh dave @ sulaco
ssh ključ povezava in prekinitev povezave v oknu terminala

Z oddaljenim računalnikom boste povezani brez gesla ali gesla.

Brez gesla, vendar izboljšana varnost

Strokovnjaki za kibernetsko varnost govorijo o stvareh, imenovanem trenje varnosti. To je manjša bolečina, ki jo morate trpeti, da pridobite dodatno varnost. Ponavadi je potreben kakšen dodaten korak ali dva, da se sprejme varnejša metoda dela. In večini ljudi ni všeč. Pravzaprav imajo raje nižjo varnost in pomanjkanje trenja. To je človeška narava.

S SSH ključi dobite večjo varnost in povečanje udobja. To je dober win-win.