Oglas

Kako preveriti pristnost prek SSH s ključi namesto geslaSSH je odličen način za pridobitev oddaljenega dostopa do vašega računalnika. Podobno kot pri FTP se lahko povežete prek SSH FTP Kaj je SSH in kako se razlikuje od FTP [razložena tehnologija] Preberi več da pridobite varen dostop do datotečnega strežnika s svojim priljubljenim FTP odjemalec Obvladajte prenos datotek FTP na vseh vaših spletnih mestih s FileZillaVeliko število starih odjemalcev FTP je imelo kolcanje, ko je šlo za prenos velikih datotek. Aplikacije so imele običajne časovne omejitve, ki bi jih pričakovali, ko računalnik sedi tam 15 do ... Preberi več , hiter dostop do oddaljenih datotek ali celo namestitev omrežnega diska v računalnik. Vendar je SSH več kot oddaljeni dostop do datotek. Prijava prek SSH v terminalu (ali uporaba PuTTY v sistemu Windows) vam omogoča oddaljeni dostop do lupine (navsezadnje je SSH okrajšava za Secure SHell). Tako upravljam svoj medijski strežnik na daljavo.

Ko ti odprite vrata Kaj je posredovanje vrat in kako mi lahko pomaga? [MakeUseOf pojasnjuje]

instagram viewer
Ali v sebi malo jočete, ko vam nekdo pove, da je težava s posredovanjem vrat in zato vaša svetleča nova aplikacija ne bo delovala? Vaš Xbox vam ne dovoli igranja iger, vaši torrent prenosi zavračajo ... Preberi več na vašem usmerjevalniku (natančneje, vrata 22) ne morete dostopati samo do strežnika SSH iz vašega lokalnega omrežja, ampak od koder koli na svetu.

Vendar pa ne želite tvegati z uporabo šibkega gesla za preverjanje pristnosti. Če kdo pridobi dostop do vašega računalnika prek SSH, dobi popoln dostop do lupine. Da bo jasno, tega ne želimo. Na srečo je zelo enostavno nastaviti vaš globalni strežnik SSH na zelo varen način z uporabo preverjanja pristnosti na podlagi ključa in v celoti onemogočiti preverjanje pristnosti z geslom na vašem strežniku.

Je to zame?

Pri osebni varnosti je mamljivo, da postanete ohlapni. Če strežnik uporabljate za zasebna sredstva, boste morda mislili, da ljudje preprosto ne vedo za vaš strežnik in ga zato ne bodo poskušali vdreti – varnost skozi nejasnost. To bi bilo a zelo napačna predpostavka. Ker se (večina) prometa SSH prenaša na vrata 22, napadalci redno preverjajo vidnost vrat 22 na naključnih naslovih IP, čemur sledi napad z grobo silo. To je eden od načinov, kako so botneti izdelani za uporabo DDOS napadi Kaj je DDoS napad? [MakeUseOf pojasnjuje]Izraz DDoS se umakne vsakič, ko se kibernetski aktivizem množično dvigne. Tovrstni napadi prihajajo na mednarodne naslovnice zaradi več razlogov. Težave, ki sprožijo te napade DDoS, so pogosto sporne ali zelo ... Preberi več .

Če na kratko povem: če oddajate svoj strežnik SSH prek interneta (tj. posredovanje vrat 22), potem ja, to je za vas.

Ideja SSH prijav na osnovi ključev

Prijave SSH, ki temeljijo na ključu, temeljijo na ideji kriptografija z javnim ključem. Predaleč bi nas peljalo, če bi razlagali zapletenost, vendar bomo poskušali narisati preprosto sliko dogajanja v zakulisju.

V spodnjem postopku vaš odjemalski računalnik ustvari dva ključa: javni ključ in zasebni ključ. Splošna ideja je, da lahko podatke šifrirate z javnim ključem, vendar jih dešifrirate samo z zasebnim ključem. Javni ključ bomo postavili na strežnik in ga prosili, da šifrira vso odhodno komunikacijo z njim. To zagotavlja, da lahko samo tisti odjemalci z zasebnim ključem dešifrirajo in preberejo podatke.

1. Namestite OpenSSH

Najprej bomo nastavili strežnik SSH z uporabo OpenSSH. Če že imate zagnan strežnik SSH in želite vedeti, kako nastaviti preverjanje pristnosti na podlagi ključa, lahko ta korak preskočite. Uporabite svoj najljubši upravitelj paketov za namestitev strežniške aplikacije OpenSSH. Najpreprostejši način je morda še vedno zagon apt-dobi ukaz iz terminala.

sudo apt-get install openssh-server

Vnesite geslo, potrdite in počakajte minuto, da se konča namestitev. Čestitamo, zdaj imate strežnik SSH. (To je bilo enostavno!)

ubuntu-install-openssh

Aplikacijo lahko uporabite takšno, kot je, ali jo uredite /etc/ssh/sshd_config da ga konfigurirate. Zaženite človek sshd_config ukaz v terminalu za več informacij. Drug odličen vir za več informacij o OpenSSH je ustrezna stran s pomočjo za Ubuntu.

2. Ustvari ključe

Ustvarili bomo nabor ključev. Zaženite naslednje ukaze (prilagojeno iz OpenSSH/ključi stran pomoči za Ubuntu).

mkdir ~/.ssh
chmod 700 ~/.ssh
ssh-keygen -t rsa

Prvi ukaz ustvari skriti imenik '.ssh' v vaši domači mapi, drugi ukaz spremeni dovoljenja za dostop do mape, medtem ko tretji ukaz dejansko ustvari niz RSA ključi. Najprej boste morali vnesti lokacijo za shranjevanje ključev (pustite prazno in pritisnite enter, da shranite na privzeto lokacijo) in drugič za geslo.

rsa-ključ-generacija-mac

To geslo dodatno šifrira zasebni ključ, ki je shranjen v vašem računalniku, kar vam v bistvu daje več časa za zaščito strežnika SSH, če je vaš zasebni ključ kdaj ukraden. Prepričajte se, da ste izbrali geslo, ki si ga lahko zapomnite, saj ga boste morali vnesti, ko boste poskušali uporabiti svoj ključ.

3. Prenesite javni ključ

Nato boste morali javni ključ, ki ste ga ustvarili v prejšnjem koraku, prenesti v računalnik strežnika SSH. Če vaš odjemalski stroj poganja tudi Linux, je to zelo enostavno doseči z izvajanjem spodnjega ukaza (zamenjava in za uporabniško ime in naslov IP na vašem strežniku SSH).

ssh-kopija-id @

Če vaša stranka ne podpira ukaza ssh-copy-id, lahko namesto tega uporabite spodnji ukaz. To je nekoliko bolj zapleteno, vendar v bistvu dosega enake rezultate.

mačka ~/.ssh/id_rsa.pub | ssh @ "mkdir ~/.ssh; mačka >> ~/.ssh/authorized_keys"

Pozvani boste, da vnesete uporabniško geslo za strežnik SSH. Če se ukazi izvajajo brez napak, bo vaš javni ključ kopiran na strežnik.

4. Onemogoči preverjanje pristnosti gesla

Upoštevajte, da vaš sistem še vedno ni bolj varen kot po prvem koraku. Čeprav je vsaj en odjemalec konfiguriran za uporabo preverjanja pristnosti na podlagi ključa, to še vedno pušča prostor drugim odjemalcem, da se povežejo z geslom. Za konec bomo v celoti onemogočili preverjanje pristnosti gesla. Po tem koraku, samo računalniki, ki so šli skozi zgornji postopek, se lahko povežejo z vašim strežnikom SSH.

Če želite onemogočiti preverjanje pristnosti gesla, uredite /etc/ssh/sshd_config datoteko v vašem najljubšem urejevalniku. Eden najpreprostejših načinov za urejanje omejene datoteke je spet uporaba terminala. (Sem naklonjena nano, vendar lahko uporabite, kar vam najbolj ustreza.)

sudo nano /etc/ssh/sshd_config

Približno 40 vrstic od dna datoteke boste našli

#PasswordAuthentication da

Odstranite številčni znak (#) in spremenite nastavitev na »ne«, kot je prikazano spodaj.

PasswordAuthentication št

Končna datoteka bi morala izgledati nekako takole:

sshd_config

Shranite datoteko s pritiskom na CTRL+X. Potrdite urejanje in ime datoteke in skoraj ste končali. Samo znova zaženite strežnik SSH, da ga zaženete s temi novimi nastavitvami.

sudo znova zaženi ssh

Opazili boste tudi, da bo vaša stranka prenehala zahtevati geslo za dešifriranje vašega ključa, če je preverjanje pristnosti gesla na strežniku onemogočeno. Zdaj, ko imate varen strežnik SSH, kako ga nameravate uporabljati? Kot varen datotečni strežnik, oddaljena lupina ali za posredovanje drugih storitev prek SSH? Sporočite nam v spodnjem razdelku za komentarje!

Kredit slike: Shutterstock

Sem pisatelj in študent računalništva iz Belgije. Vedno mi lahko naredite uslugo z idejo za dober članek, priporočilo za knjigo ali idejo za recept.