Što je SSH?
SSH znači Secure Shell. Pomoću SSH-a možete pristupiti udaljenim računalima na siguran način jer je veza šifrirana. Pomoću naredbe ssh iz Linux terminala možemo se povezati s udaljenim Linux poslužiteljima i raditi kao da je to naše računalo. Na kraju ovog vodiča trebali biste u potpunosti razumjeti kako koristiti SSH za povezivanje s udaljenim poslužiteljem u Ubuntu.
Sintaksa
Sintaksa je pravilo o tome kako možete koristiti naredbu ssh. Možete prerasporediti sintaksu, ali se mora slijediti izravan format. Ispod je primjer sintakse za korištenje naredbe ssh:
|
1 |
ssh remote_host |
Naziv domene ili IP adresa s kojom se želite povezati je remote_host kao što je prikazano u gornjoj naredbi. Ova sintaksa pretpostavlja da su vaše korisničko ime na udaljenom sustavu i vašem lokalnom sustavu isti. Međutim, u slučaju da korisnička imena nisu ista, to možete označiti ovom naredbom:
|
1 |
ssh remote_username@remote_host |
Morat ćete potvrditi svoj identitet unosom lozinke odmah nakon povezivanja s poslužiteljem. Upišite naredbu exit za povratak na lokalnu sesiju.
Kako konfigurirati SSH
Glavna konfiguracijska datoteka sshd-a u Ubuntuu nalazi se na /etc/ssh/sshd_config. Ako promijenite konfiguraciju SSH-a, postavke SSHD poslužitelja automatski će se promijeniti. Prije bilo kakve konfiguracije, svakako napravite sigurnosnu kopiju trenutne verzije datoteke pomoću ove naredbe:
|
1 |
sudo cp /etc/ssh/sshd_config{,.bak} |
Upotrijebite uređivač teksta da biste je otvorili:
|
1 |
sudo nano /etc/ssh/sshd_config |
Većinu parametara u ovoj datoteci trebali biste ostaviti nepromijenjenima. Međutim, postoji nekoliko stvari na koje biste trebali obratiti pozornost:
|
1 |
Port 22 |
Deklaracije priključka označavaju priključak na kojem SSHD poslužitelj čeka veze. Zadana vrijednost je 22. Osim ako ne postoje posebni razlozi, ne morate mijenjati ovu postavku:
|
1 2 3 |
HostKey /etc/ssh/ssh_host_rsa_key HostKey /etc/ssh/ssh_host_dsa_key HostKey /etc/ssh/ssh_host_ecdsa_key |
Deklaracija ključa računala označava gdje se nalazi globalni ključ računala:
|
1 2 |
SyslogFacility AUTH LogLevel INFO |
Razina zapisivanja dnevnika koja bi se trebala provoditi označena je s ove dvije stavke. Ako imate problema s korištenjem SSH-a, izvrstan način za prepoznavanje problema je povećanje količine zapisa:
|
1 2 3 |
LoginGraceTime 120 PermitRootLogin yes StrictModes yes |
Ove opcije definiraju neke informacije za prijavu kako bi se spriječila neovlaštena prijava kada su konfiguracijske datoteke nesigurne:
|
1 2 |
X11Forwarding yes X11DisplayOffset 10 |
Ove konfiguracije parametara nazivaju se funkcijama prosljeđivanja X11. Na taj način možete prikazati grafičko sučelje udaljenog sustava na lokalnom sustavu. Morate omogućiti ovu opciju na poslužitelju dok se povezujete s opcijom -X na SSH klijent.
Nakon što napravite promjene, spremite datoteku i zatvorite je pritiskom na CTRL-X i Y, a zatim pritisnite Enter. Ako promijenite postavke u / etc / ssh / sshd_config, morate ponovno pokrenuti sshd poslužitelj kako biste primijenili promjenu:
|
1 |
sudo service ssh restart |
Za systemd sustave kao što su Ubuntu 16.04 ili Debian Jessie koristite ovu naredbu:
|
1 |
sudo systemctl restart ssh |
Temeljito testirajte svoje promjene kako biste bili sigurni da sve radi savršeno. Vjerojatno biste trebali zadržati neke sesije aktivnima ako radite bilo kakve promjene. Na taj način možete vratiti konfiguraciju ako je potrebno.
Kako se prijaviti na SSH pomoću ključeva? Dobro je prijaviti se na udaljeni sustav lozinkom. Međutim, najbolje je postaviti autentifikaciju temeljenu na ključevima.
Što je autentifikacija temeljena na ključevima?
Autentifikacija temeljena na ključevima stvara dva para ključeva koji se nazivaju privatni i javni ključ. Privatni ključ nalazi se na korisnikovom računalu, zaštićen je i čuva se u tajnosti. Javni ključ može se učiniti dostupnim svima ili pohraniti na bilo koji poslužitelj kojem želite pristupiti. Ako se pokušate povezati pomoću para ključeva, poslužitelj koristi javni ključ za generiranje poruke za korisnikovo računalo. Korisnik može pročitati poruku samo pomoću privatnog ključa. Korisnikovo računalo zatim šalje odgovor natrag poslužitelju, a poslužitelj zna da je korisnik autentičan. Nakon postavljanja ključa, cijeli se proces automatski dovršava u pozadini.
Kako stvoriti SSH ključeve
SSH ključeve treba generirati na računalu s kojeg se želite prijaviti. To je obično vaše lokalno računalo. Unesite sljedeće u naredbeni redak:
|
1 |
ssh-keygen -t rsa |
Zatim prihvatite zadane vrijednosti pritiskom na tipku ENTER. To će generirati vaše ključeve na ~/.ssh/id_rsa.pub i ~/.ssh/id_rsa. Zatim upišite naredbu u nastavku za prijelaz u direktorij .ssh:
|
1 |
cd ~/.ssh |
Ovo su dopuštenja datoteka:
|
1 |
ls -l |

Kao što vidite, samo vlasnik može čitati i pisati u datoteku id_rsa. Stoga je morate čuvati na sigurnom. Međutim, možete dijeliti datoteku id_rsa.pub i imati odgovarajuća dopuštenja za ovu aktivnost. Sljedeći korak je prijenos javnog ključa na poslužitelj pomoću ove sintakse:
|
1 |
ssh-copy-id remote_host |
To pokreće SSH sesiju i morate koristiti lozinku za autentifikaciju. Nakon unosa lozinke, vaš će javni ključ biti kopiran u datoteku autoriziranih ključeva poslužitelja kako biste se sljedeći put mogli prijaviti bez lozinke.
Kako onemogućiti autentifikaciju lozinkom
Ako je SSH ključ generiran, možete poboljšati sigurnost poslužitelja onemogućavanjem autentifikacije samo lozinkom. Možete se prijaviti na poslužitelj pomoću privatnog ključa s instaliranim javnim ključem na poslužitelju umjesto korištenja konzole.
Napomena: Provjerite jeste li instalirali javni ključ na poslužitelj prije nego što nastavite s ovim korakom. Ako niste, bit ćete blokirani!
Otvorite konfiguracijsku datoteku sshd pomoću ove naredbe:
|
1 |
sudo nano /etc/ssh/sshd_config |
Pronađite i odkomentirajte redak koji se odnosi na provjeru autentifikacije lozinkom brisanjem znaka # na početku. Zatim možete promijeniti vrijednost u “no”:
|
1 |
PasswordAuthentication no |
PubkeyAuthentication i ChallengeResponseAuthentication postavljeni su prema zadanim postavkama i trebali bi izgledati ovako:
|
1 2 |
PubkeyAuthentication yes ChallengeResponseAuthentication no |
Ne biste trebali mijenjati ove dvije postavke. Nakon toga spremite datoteku i zatvorite je nakon što unesete promjene. Zatim upotrijebite naredbu u nastavku za ponovno pokretanje SSH daemona:
|
1 |
sudo systemctl restart ssh |
Naposljetku, onemogućili ste autentifikaciju lozinkom i vašem se poslužitelju može pristupiti samo pomoću autentifikacije SSH ključem.
Zaključak
U ovom vodiču pokazali smo vam kako koristiti SSH za sigurno povezivanje s udaljenim poslužiteljem u Ubuntuu. Učenje kako koristiti SSH ključno je ako ste sistem administrator, pa nakon što savladate ovaj vodič možete nastaviti s naprednijim funkcionalnostima SSH-a.
Sretno s radom!
Komentari
Još nema komentara. Budite prvi.