Konfigurišite SSH u Ubuntu

Tehnologija SSH (Secure Shell) omogućava sigurnu daljinsku kontrolu računara putem sigurne veze. SSH šifrira sve prenesene datoteke, uključujući lozinke, i također prenosi apsolutno bilo koji mrežni protokol. Da bi alat ispravno radio, neophodno je ne samo da ga instalirate, već i da ga konfigurišete. Željeli bismo razgovarati o proizvodu glavne konfiguracije u ovom članku, uzimajući kao primjer najnoviju verziju operativnog sistema Ubuntu na kojem će se poslužitelj nalaziti.

Konfigurišite SSH u Ubuntu

Ako niste završili instalaciju na serverskom i klijentskom računaru, to biste trebali uraditi u početku, jer je cijela procedura prilično jednostavna i ne traje puno vremena. Za detaljne smjernice o ovoj temi pogledajte naš drugi članak na sljedećem linku. Takođe prikazuje proceduru za uređivanje konfiguracionog fajla i testiranje SSH-a, tako da ćemo danas razmišljati o drugim zadacima.

Pročitajte više: Instaliranje SSH-servera u Ubuntu

Kreiranje RSA ključnog para

Novo instalirani SSH nema specificirane ključeve za povezivanje s poslužitelja na klijenta i obrnuto. Svi ovi parametri moraju biti postavljeni ručno odmah nakon dodavanja svih komponenti protokola. Ključni par radi pomoću RSA algoritma (skraćeno od imena programera Rivesta, Shamira i Adlemana). Zahvaljujući ovom kriptosistemu, specijalni ključevi se šifriraju pomoću posebnih algoritama. Da biste kreirali par javnih ključeva, potrebno je samo da unesete odgovarajuće komande u konzolu i pratite uputstva koja se pojavljuju.

  1. Idi na posao "Terminal" bilo koji zgodan metod, na primer, otvaranjem kroz meni ili kombinaciju tastera Ctrl + Alt + T.
  2. Unesite naredbussh-keygeni zatim pritisnite tipku Enter.
  3. Od vas će biti zatraženo da kreirate datoteku u kojoj će ključevi biti spremljeni. Ako želite da ih zadržite na podrazumevanoj lokaciji, samo kliknite na Enter.
  4. Javni ključ može biti zaštićen kodnom frazom. Ako želite koristiti ovu opciju, u prikazanoj liniji upišite lozinku. Uneseni znakovi neće biti prikazani. Nova linija će morati da je ponovi.
  5. Dalje ćete videti obaveštenje da je ključ sačuvan i da ćete se moći upoznati sa njegovom nasumičnom grafičkom slikom.

Sada je stvoren par ključeva - tajnih i otvorenih, koji će se koristiti za dalju vezu između računara. Potrebno je samo postaviti ključ na server tako da je SSH provjera autentičnosti uspješna.

Kopiranje javnog ključa na server

Postoje tri načina za kopiranje ključeva. Svaka od njih će biti optimalna u različitim situacijama gdje, na primjer, jedan od metoda ne radi ili nije pogodan za određenog korisnika. Predlažemo da razmotrimo sve tri opcije, počevši od najjednostavnijih i najdjelotvornijih.

Opcija 1: ssh-copy-id naredba

Timssh-copy-idugrađeni u operativni sistem, tako da za njegovu implementaciju nije potrebno instalirati dodatne komponente. Pratite jednostavnu sintaksu za kopiranje ključa. U "Terminal" mora biti unesenossh-copy-id korisničko ime @ remote_hostgdje username @ remote_host - ime udaljenog računara.

Kada se prvi put povežete, primit ćete tekst obavijesti:

Autentičnost hosta '203.0.113.1 (203.0.113.1)' ne može biti uspostavljena.
Otisak otiska ključa ECDSA je fd: fd: d4: f9: 77: fe: 73: 84: e1: 55: 00: ad: d6: 6d: 22: fe.
Jeste li sigurni da želite nastaviti povezivanje (da / ne)? da

Morate navesti opciju da za nastavak veze. Nakon toga, uslužni program će samostalno tražiti ključ u obliku datoteke.id_rsa.pubkoji je stvoren ranije. Nakon uspješne detekcije, prikazuje se sljedeći rezultat:

/ usr / bin / ssh-copy-id: INFO: Već sam instalirao
/ usr / bin / ssh-copy-id: INFO: 1 ključ (i) ostaju da se instaliraju
[email protected] lozinka:

Odredite lozinku od udaljenog hosta tako da je uslužni program može unijeti. Alat će kopirati podatke iz datoteke javnog ključa. ~ / .ssh / id_rsa.pubi onda će se poruka pojaviti na ekranu:

Broj dodanih ključeva: 1

Sada pokušajte da se prijavite na mašinu sa: "ssh '[email protected]'"
provjeri.

Pojava takvog teksta znači da je ključ uspješno prebačen na udaljeni računar, a sada neće biti problema sa vezom.

Opcija 2: Kopirajte javni ključ preko SSH-a

Ako ne možete koristiti gore navedeni uslužni program, ali imate lozinku za prijavu na udaljeni SSH poslužitelj, možete ručno učitati korisnički ključ, čime se osigurava daljnja stabilna provjera autentičnosti pri povezivanju. Koristi se za ovu naredbu catkoji će pročitati podatke iz datoteke, a zatim će biti poslani na server. U konzoli morate ući u liniju

cat ~ / .ssh / id_rsa.pub | ssh korisničko ime @ remote_host "mkdir -p ~ / .ssh && touch ~ / .ssh / authorized_keys && chmod -R go = ~ / .ssh && cat >> ~ / .ssh / authorized_keys".

Kada se pojavi poruka

Autentičnost hosta '203.0.113.1 (203.0.113.1)' ne može biti uspostavljena.
Otisak otiska ključa ECDSA je fd: fd: d4: f9: 77: fe: 73: 84: e1: 55: 00: ad: d6: 6d: 22: fe.
Jeste li sigurni da želite nastaviti povezivanje (da / ne)? da

nastavite sa povezivanjem i unesite lozinku za prijavu na server. Nakon toga, javni ključ će se automatski kopirati na kraj konfiguracijske datoteke. authorized_keys.

Opcija 3: Ručno kopiranje javnog ključa

U slučaju nedostatka pristupa udaljenom računaru preko SSH servera, svi gore navedeni koraci se obavljaju ručno. Da biste to uradili, prvo naučite o ključu na serverskom računaru preko komandecat ~ / .ssh / id_rsa.pub.

Ekran će prikazati nešto slično ovome:ssh-rsa + tipka kao skup znakova == demo @ test. Nakon toga idite na rad na udaljenom uređaju, gdje kreirate novi direktorij putemmkdir -p ~ / .ssh. Dodatno kreira datoteku.authorized_keys. Zatim ubacite ključ koji ste ranije naučiliecho + javni ključ >> ~ / .ssh / authorized_keys. Nakon toga, možete pokušati autentifikaciju sa serverom bez upotrebe lozinki.

Provjera autentičnosti na poslužitelju putem generiranog ključa

U prethodnom odeljku saznali ste za tri metode za kopiranje ključa udaljenog računala na poslužitelj. Takve akcije će vam omogućiti da se povežete bez upotrebe lozinke. Ova procedura se izvodi iz komandne linije upisivanjemshh ssh korisničko ime @ remote_hostgdje username @ remote_host - korisničko ime i domaćin željenog računara. Kada se prvi put povežete, bićete obavešteni o nepoznatoj vezi i možete nastaviti sa izborom opcije da.

Veza će se automatski pojaviti ako za vrijeme kreiranja para ključeva nije navedena specifična lozinka. U suprotnom, prvo ga morate unijeti da biste nastavili raditi sa SSH-om.

Onemogući autentifikaciju lozinke

Uspješno podešavanje kopiranja ključa se razmatra u situaciji kada možete ući na server bez korištenja lozinke. Međutim, mogućnost autentifikacije na ovaj način omogućava napadačima da koriste alate za pronalaženje lozinke i probijanje sigurne veze. Da biste se zaštitili od takvih slučajeva, omogućit ćete potpuno onemogućavanje lozinke za prijavu u SSH konfiguracijskoj datoteci. To će zahtijevati:

  1. U "Terminal" otvorite konfiguracijsku datoteku preko urednika pomoću naredbesudo gedit / etc / ssh / sshd_config.
  2. Nađi liniju PasswordAuthentication i uklonite oznaku # na početku da unesete komentar parametra.
  3. Promenite vrednost na ne i sačuvajte trenutnu konfiguraciju.
  4. Zatvorite editor i ponovo pokrenite server.sudo systemctl restart ssh.

Autentifikacija lozinke će biti onemogućena i moći ćete se prijaviti na poslužitelj samo pomoću ključeva posebno kreiranih za to pomoću RSA algoritma.

Postavljanje standardnog zaštitnog zida

U Ubuntuu, podrazumevani zaštitni zid je Firewall (Nezaštićeni Firewall) (UFW). Omogućava vam da dozvolite veze za odabrane usluge. Svaka aplikacija kreira svoj profil u ovom alatu, a UFW ih upravlja tako što dozvoljava ili odbija veze. Konfiguriranje SSH profila dodavanjem na popis obavlja se na sljedeći način:

  1. Otvorite listu profila vatrozida pomoću naredbesudo ufw popis aplikacija.
  2. Unesite lozinku računa da biste prikazali informacije.
  3. Vidjet ćete popis dostupnih aplikacija, OpenSSH bi trebao biti među njima.
  4. Sada biste trebali dozvoliti veze preko SSH-a. Da biste to uradili, dodajte ga na listu dozvoljenih profila pomoćusudo ufw dopušta OpenSSH.
  5. Omogućite zaštitni zid ažuriranjem pravilasudo ufw enable.
  6. Da biste bili sigurni da su veze dozvoljene, trebate pisatisudo ufw status, onda ćete vidjeti status mreže.

Ovim se završavaju naše SSH konfiguracijske upute za Ubuntu. Dalja konfiguracija konfiguracionog fajla i drugih parametara vrši se lično od strane svakog korisnika prema njegovim zahtevima. Možete se upoznati sa radom svih komponenti SSH-a u zvaničnoj dokumentaciji protokola.