Na kratko je SSH ali 'varna lupina' šifrirani protokol, s katerim se lahko na strežnik povežete na daljavo in imate dostop do informacij, povezanih z njim. Zagotavlja veliko varnejši način prijave, da zagotovi varen način prijave brez ogrožanja varnosti.
1. korak: Ustvarite par ključev
Začeli bomo z ustvarjanjem para ključev v odjemalskem sistemu, najprej s korenskim dostopom po vrsti:
$ ssh-keygen
To sproži najnovejši ssh-keygen in privzeto ustvari 3072-bitni par ključev RSA. Oznako -b 4086 lahko dodate, da ustvarite večji ključ. Pritisnite Enter in vanjo bo shranjen par ključev .ssh / podimenik. Če ste gost na strežniku, na katerem je že nameščen ključ, vas bo vprašal, ali ga želite prepisati ali ne. V tem primeru vnesite »y« in potrdite da.
Nato vas bo vprašal, ali želite dodati geslo. Lahko se odjavite, vendar vam priporočamo, da ga dodate. Ojača varnostni protokol tako, da nepooblaščenemu uporabniku postreže z dodatno plastjo zaščite, ki jo obide.
2. korak: Kopirajte javni ključ na strežnik
Nato moramo javni ključ prenesti na vaš strežnik ubuntu.
Pripomoček ssh-copy-id lahko uporabite z naslednjim ukazom:
$ ssh-copy-id uporabniško ime @ server_host
To bi moralo narediti trik v samo nekaj sekundah. Če je bil ključ uspešno kopiran, pojdite na tretji korak.
Včasih se zgodi, da metoda ssh-copy-id ne uspe ali pa preprosto ni na voljo. V tem primeru ga boste morali kopirati prek SSH na osnovi gesla. To lahko storite z ukazom cat in dodajte vsebino >>, ki jo želite dodati vsebini, namesto da bi jo prepisali.
$ mačka ~ /.ssh / id_rsa.pub | ssh remote_username @ server_ip_address"mkdir -p ~ /.ssh && mačka >> ~ /.ssh / pooblaščene_ključke "
Če se prvič povežete z novim gostiteljem, vam bo sistem prikazal nekaj takega:
Preprosto vnesite da in pritisnite tipko Enter. Nato vnesite geslo za račun uporabniškega dostopa in javni ključ bo kopiran na vaš strežnik Ubuntu.
Če vam SSH-dostop na podlagi gesla zaradi nekega razloga ni dovoljen, lahko vedno ročno kopirate javni ključ. Dodajte ~ /.ssh / pooblaščeni_keys do id_rsa.pub na oddaljenem računalniku. Nato se prijavite v svoj račun oddaljenega strežnika in preverite, ali obstaja imenik ~ SSH. V nasprotnem primeru vnesite:
$ mkdir -p ~ /.ssh
Zdaj morate le dodati ključ:
$ echo public_key_string >> ~ /.ssh / pooblaščene_ključke$ chmod -R go = ~ /.ssh
Prepričajte se tudi, da uporabljate ~ SSH / UPORABNIK imenik in NE korenski imenik:
$ chown -R younis: younis ~ /.ssh
3. korak: preverite pristnost ključev SSH
Naslednji korak je preverjanje pristnosti ključev SSH na strežniku Ubuntu. Najprej se prijavite v oddaljeni gostitelj:
$ ssh uporabniško ime @ remote_host
Pozvani boste, da vnesete ključ za geslo, ki ste ga dodali v 2. koraku. Vtipkajte in nadaljujte. Preverjanje pristnosti bo trajalo nekaj časa in ko bo končano, boste preusmerjeni v novo interaktivno lupino na strežniku Ubuntu
4. korak: Onemogočite preverjanje pristnosti gesla
Z overjenimi ključi SSH ne potrebujete več sistema za preverjanje pristnosti gesla.
Če je v vašem strežniku omogočeno preverjanje pristnosti gesla, bo še vedno nagnjen k nepooblaščenemu dostopu uporabnikov z napadi surove sile. Zato bi bilo bolje, če onemogočite kakršno koli preverjanje pristnosti na podlagi gesla.
Najprej preverite, ali je overjanje s ključem SSH pripravljeno za koren račun na tem strežniku. Če je, ga spremenite v račun privilegiranega uporabniškega dostopa sudo na tem strežniku, tako da vam je v primeru izrednih dogodkov ali kadar se sistem sooča s sumljivimi dejavnostmi na voljo skrbniški dostop.
Po dodelitvi skrbniških pravic za vaš račun za oddaljeni dostop se v oddaljeni strežnik prijavite s ključi SSH s korenskimi ali sudo privilegiji. Nato uporabite naslednji ukaz za dostop do konfiguracijske datoteke demona SSH:
$ sudo gedit / etc / ssh / sshd_config
Ko je datoteka zdaj odprta, poiščite imenik »PasswordAuthentication« in vnesite naslednje, da onemogočite preverjanje pristnosti gesel in SSH prijave na osnovi gesla.
$ / etc / ssh / sshd_config..
GesloAuthentication št
..
Če želite videti te spremembe v veljavi, boste morali znova zagnati storitev sshd z naslednjim ukazom:
$ sudo systemctl znova zaženite ssh
Iz varnostnih razlogov odprite novo okno terminala in preverite, ali storitev SSH deluje pravilno, preden zaprete trenutno sejo.
S preverjenimi ključi SSH bi lahko videli, da vse deluje normalno. Zaprete lahko vse trenutne seje strežnika.
Zaključek
Zdaj, ko imate vzpostavljen sistem za preverjanje pristnosti na osnovi ključa SSH, ne potrebujete več sistema za preverjanje pristnosti ranljivega gesla, saj se lahko preprosto prijavite brez gesla. Upam, da se vam je ta vadnica zdela koristna.