Sosigurati Shell ili SSH je poznati mrežni protokol otvorenog koda. Protokol se koristi za daljinsku prijavu na druge strojeve. Stoga bi bilo lako izvršiti hrpu naredbi i glatko pokrenuti bilo koju aplikaciju na udaljenom uređaju, bez potrebe da budete blizu udaljenog stroja. Uz to, SSH protokol je vrlo pouzdan i siguran. Korisnici uvijek ovise o SSH protokolu za kopiranje datoteka između dva različita uređaja.
Općenito, da biste uspostavili SSH vezu s udaljenim strojem, morate unijeti korisničko ime i lozinku za udaljeni stroj. Ali što ako vam treba sigurnija metoda od upotrebe korisničkog imena i lozinke u svakoj prijavi? To se može učiniti pomoću SSH ključa generiranog od klijentskog stroja, a zatim kopiranog na udaljeni stroj. Uz dodatne male konfiguracije, moći ćete se sigurno prijaviti na udaljeni stroj bez upotrebe korisničkog imena i lozinke svaki put. Korištenje SSH ključa umjesto upotrebe korisničkog imena i lozinke u svakoj prijavi mnogo je sigurnije; samo se stroj koji ima ispravnu SSH ključ može brzo prijaviti.
Danas ćemo vam pokazati kako uspostaviti SSH vezu bez potrebe za unosom lozinke za udaljeni stroj. Uobičajeno, upotreba prijave bez lozinke može se koristiti za brzi prijenos datoteka između različitih strojeva. Ali prije nego započnemo naš tutorial, pogledajmo naše okruženje.
Priprema okoliša
Bilo bi najbolje da imate dva stroja, klijenta i udaljene strojeve. Gotovo sav posao obavit će se s klijentskog stroja koji će se koristiti za povezivanje s udaljenim uređajem. Oba su uređaja Ubuntu sa sljedećim IP-ovima
- The klijent stroj ima IP 192.168.1.20 s korisničkim imenom tuts.
- The daljinski stroj ima IP 192.168.1.30 s korisničkim imenom hendadela.
Još jedna stvar prije pokretanja, provjerite jesu li oba stroja ažurirana pomoću sljedećih naredbi:
sudo apt ažuriranje sudo apt nadogradnja
Počnimo naš vodič.
Postavljanje SSH prijave bez lozinke
Korak 1. Na klijentskom stroju provjerite postoji li generiran SSH ključ prije upotrebe sljedeće naredbe.
ls -al ~ /.ssh / id_ *.pub
Kao što možete primijetiti, ako prethodno niste generirali SSH ključ, dobit ćete poruku "Nema takve datoteke ili direktorija". U suprotnom ćete brzo dobiti dostupne ključeve ako postoje.
Korak 2. Budući da prethodno niste generirali SSH ključeve, vrijeme je da generirate novi SSH ključ pomoću sljedeće naredbe:
ssh-keygen -t rsa -b 4096
Uobičajeno je da prethodna naredba generira nova dva SSH ključa u dvije različite datoteke. Obje su datoteke pohranjene u skriveni direktorij pod nazivom “.ssh ”pod trenutnim korisničkim početnim direktorijom. Možete pronaći privatni ključ pohranjen u datoteci s imenom id_dsa i još jedan javni ključ u datoteci s imenom id_dsa.pub. Osim toga, od vas će se tražiti da dodate lozinku koja se koristi za zaštitu generiranih ključeva, a možete je koristiti tijekom povezivanja putem SSH-a. Ali možete pritisnuti "UnesiGumb "da ga ne koristite.
3. korak. Sada možete navesti sadržaj .ssh direktorij kako biste bili sigurni da su stvorene obje tipke.
ls -l / home / tuts /.ssh /
4. korak. Također, možete provjeriti sadrži li datoteka ključ pomoću sljedeće naredbe:
ssh-keygen -lv
Korak 5. Za pregled sadržaja datoteke javnog ključa.
mačka .ssh / id_rsa.pub
Korak 6. Sada s udaljenog računala provjerite je li instaliran SSH. Ako nije instaliran, možete upotrijebiti sljedeću naredbu.
sudo apt instalirati ssh
Korak 7. Natrag na klijentski stroj, povežite se s udaljenim računalom i izradite novi direktorij s imenom .ssh.
sudo ssh remote_machine_username @ remote_machine_IP mkdir -p .ssh
Obavezno zamijenite remote_machine_username pravim korisničkim imenom, a remote_machine_IP udaljenim IP-om.
Korak 8. Dalje, kopirajmo s klijentskog stroja javni SSH ključ koji je prethodno generiran na udaljeni stroj. Pomoglo bi ako zalijepite javni ključ u datoteku s imenom “Odobreni_ključevi”. Preporučuje se da ne mijenjate naziv datoteke, jer kada ćete uspostaviti SSH vezu, prva datoteka koju će operativni sustav provjeriti je “Odobreni_ključevi” datoteka. Ako sustav nije pronašao datoteku, od vas će se zatražiti da unesete korisničko ime i lozinku kako biste se mogli prijaviti na udaljeni stroj.
sudo mačka .ssh / id_rsa.pub | ssh remote_machine_username @ remote_machine_IP 'mačka >> .ssh / odobreni_ključevi '
Korak 9. S udaljenog računala osigurajte da je javni ključ uspješno kopiran s imenom named_keys.
ls .ssh / mačka .ssh / odobreni_ključevi
Korak 10. Sada s klijentskog računala, pokušajmo uspostaviti SSH vezu bez korisničkog imena i lozinke.
ssh remote_machine_username @ remote_machine_IP
Kao što primijetite, od vas neće biti zatraženo da unesete korisničko ime ili lozinku.
Onemogući provjeru autentičnosti lozinke
Da biste onemogućili provjeru autentičnosti lozinke pomoću javnog ključa, prvo morate urediti SSH konfiguracijsku datoteku s udaljenog stroja i onemogućiti opciju provjere lozinke. U nastavku su navedeni koraci za to.
Korak 1. Na udaljenom stroju otvorite ssh konfiguracijsku datoteku pomoću omiljenog uređivača.
vi / etc / ssh / sshd_config
Korak 2. Pomaknite se do kraja SSH konfiguracijske datoteke i dodajte sljedećih nekoliko redaka da biste onemogućili provjeru autentičnosti lozinke:
RSAAuthentication da PubkeyAuthentication da PasswordAuthentication ne UsePAM ne ChallengeResponseAuthentication ne
3. korak. Spremite i zatvorite datoteku.
4. korak. Na kraju, ponovo pokrenite SSH uslugu i pokušajte ponovo uspostaviti novu vezu s klijentskog računala na udaljeni stroj.
To je to! Upravo ste naučili kako uspostaviti SSH vezu bez lozinke. Nadam se da ste uživali.