Publicitate
SSH este o modalitate excelentă de a obține acces de la distanță la computer. Similar cu FTP, vă puteți conecta SSH FTP Ce este SSH și cum este diferit de FTP [Tehnologia explicată] Citeste mai mult pentru a obține acces securizat la un server de fișiere cu preferatul dvs Client FTP Stăpânește transferurile de fișiere FTP pe toate site-urile tale cu FileZillaUn număr mare de clienți FTP din vechime au avut probleme când a fost vorba de transferuri mari de fișiere. Aplicațiile au experimentat timeout-urile obișnuite la care v-ați aștepta atunci când computerul stă acolo timp de 15 până la... Citeste mai mult , accesarea rapidă a fișierelor de la distanță sau chiar montarea unui disc de rețea pe computer. Dar există mai mult în SSH decât accesul la fișiere de la distanță. Conectarea prin SSH în Terminal (sau folosind Chit pe Windows) vă oferă acces la distanță shell (la urma urmei, SSH este prescurtarea de la Secure SHell). Acesta este modul în care îmi gestionez serverul media de la distanță.
Cand tu deschide porturile Ce este Port Forwarding și cum mă poate ajuta? [MakeUseOf explică]Plângi puțin înăuntru când cineva îți spune că există o problemă de redirecționare a porturilor și de aceea noua ta aplicație strălucitoare nu va funcționa? Xbox-ul dvs. nu vă va lăsa să jucați jocuri, descărcările de torrent refuză... Citeste mai mult pe routerul dvs. (portul 22 mai exact) nu puteți accesa serverul SSH doar din rețeaua locală, ci și de oriunde în lume.
Cu toate acestea, nu doriți să riscați să utilizați o parolă slabă pentru autentificare. Dacă cineva obține acces la computerul dvs. prin SSH, obține acces complet la shell. Pentru a fi clar, nu ne dorim asta. Din fericire, este foarte ușor să configurați serverul SSH global într-o manieră foarte sigură, utilizând autentificarea bazată pe chei și dezactivând complet autentificarea cu parolă pe serverul dvs.
Asta este pentru mine?
Este tentant să devină relaxat cu securitatea personală. Dacă utilizați serverul pentru mijloace private, ați putea crede că oamenii pur și simplu nu știu despre serverul dvs. și, prin urmare, nu vor încerca să-l pirateze - securitate prin obscuritate. Asta ar fi o foarte presupunere greșită. Deoarece (majoritatea) traficului SSH este transmis pe portul 22, atacatorii verifică în mod obișnuit vizibilitatea portului 22 pe adrese IP aleatorii, urmată de un atac cu forță brută. Acesta este unul dintre modurile în care botnet-urile sunt create pentru utilizare Atacurile DDOS Ce este un atac DDoS? [MakeUseOf explică]Termenul DDoS trece ori de câte ori activismul cibernetic își ridică capul în masă. Acest tip de atacuri fac titluri internaționale din mai multe motive. Problemele care declanșează aceste atacuri DDoS sunt adesea controversate sau extrem de... Citeste mai mult .
Pentru a scurta povestea: dacă vă difuzați serverul SSH pe internet (adică portul de redirecționare 22), atunci da, acesta este pentru dvs.
Ideea conectărilor SSH bazate pe chei
Conectările SSH bazate pe chei se bazează pe ideea de criptografia cu cheie publică. Ne-ar duce prea departe pentru a explica complexitățile, dar vom încerca să pictăm o imagine simplă a ceea ce se întâmplă în culise.
În procesul de mai jos, computerul dvs. client generează două chei: o cheie publică și o cheie privată. Ideea generală este că puteți cripta datele cu cheia publică, dar doar le decriptați cu cheia privată. Vom pune cheia publică pe server și îi vom cere să cripteze toate comunicările de ieșire cu acesta. Acest lucru vă asigură că numai acei clienți cu cheia privată pot decripta și citi datele.
1. Instalați OpenSSH
În primul rând, vom configura un server SSH folosind OpenSSH. Dacă aveți deja un server SSH care rulează și doriți doar să știți cum să configurați autentificarea bazată pe chei, puteți sări peste acest pas. Utilizați managerul de pachete preferat pentru a instala aplicația server OpenSSH. Cel mai simplu mod ar putea fi încă să rulați apt-get comanda din terminal.
sudo apt-get install openssh-server
Introduceți parola, confirmați și așteptați un minut până la finalizarea instalării. Felicitări, acum aveți un server SSH. (A fost ușor!)

Puteți fie să utilizați aplicația așa cum este, fie să editați /etc/ssh/sshd_config
pentru a-l configura. Rulați man sshd_config
comanda în Terminal pentru a obține mai multe informații. O altă resursă excelentă pentru a afla mai multe despre OpenSSH este pagina de ajutor Ubuntu relevantă.
2. Generați chei
Vom genera un set de chei. Rulați următoarele comenzi (adaptate de la OpenSSH/Taste Pagina de ajutor Ubuntu).
mkdir ~/.ssh
chmod 700 ~/.ssh
ssh-keygen -t rsa
Prima comandă creează un director ascuns „.ssh” în folderul de acasă, a doua comandă modifică permisiunile de acces ale folderului, în timp ce a treia comandă generează de fapt un set de RSA chei. Vi se va cere mai întâi o locație pentru a salva cheile (lăsați necompletat și apăsați Enter pentru a salva în locația implicită) și în al doilea rând pentru o frază de acces.

Această expresie de acces criptează în continuare cheia privată care este stocată pe computerul dvs., oferindu-vă, în esență, mai mult timp pentru a securiza serverul SSH dacă cheia privată este vreodată furată. Asigurați-vă că alegeți o expresie de acces pe care o puteți aminti, deoarece va trebui să o introduceți atunci când încercați să utilizați cheia.
3. Transferați cheia publică
Apoi, va trebui să transferați cheia publică pe care ați generat-o în pasul anterior pe computerul serverului SSH. Dacă mașina dvs. client rulează și Linux, acest lucru poate fi realizat foarte ușor prin rularea comenzii de mai jos (înlocuind
ssh-copy-id @
Dacă clientul dvs. nu acceptă comanda ssh-copy-id, puteți utiliza comanda de mai jos. Este puțin mai complicat, dar în esență obține aceleași rezultate.
cat ~/.ssh/id_rsa.pub | ssh @ „mkdir ~/.ssh; cat >> ~/.ssh/authorized_keys"
Vi se va cere să introduceți parola de utilizator pentru serverul SSH. Dacă comenzile se execută fără erori, cheia dumneavoastră publică va fi copiată pe server.
4. Dezactivați autentificarea prin parolă
Observați că sistemul dvs. încă nu este mai sigur decât după pasul unu. Deși cel puțin un client este configurat să utilizeze autentificarea bazată pe chei, acest lucru lasă loc pentru alți clienți să se conecteze cu o parolă. Pentru a finaliza, vom dezactiva complet autentificarea parolei. După acest pas, numai computerele care au trecut prin procesul de mai sus se pot conecta la serverul SSH.
Pentru a dezactiva autentificarea prin parolă, editați /etc/ssh/sshd_config
fișier în editorul tău preferat. Una dintre cele mai simple moduri de a edita un fișier restricționat este, din nou, utilizarea Terminalului. (Sunt parțial față de nano, dar puteți folosi orice vă simțiți mai confortabil.)
sudo nano /etc/ssh/sshd_config
Aproximativ 40 de linii din partea de jos a fișierului, veți găsi
#PasswordAuthentication da
Eliminați semnul numeric (#) și modificați setarea la „nu”, ca mai jos.
PasswordAuthentication nr
Fișierul final ar trebui să arate cam așa:

Salvați fișierul apăsând CTRL+X. Confirmați editarea și numele fișierului și aproape ați terminat. Doar reporniți serverul SSH pentru a-l rula cu aceste noi setări.
sudo restart ssh
Veți observa, de asemenea, că clientul dvs. nu va mai cere expresia de acces pentru a vă decripta cheia dacă autentificarea prin parolă este dezactivată pe server. Acum că aveți un server SSH securizat, cum intenționați să-l utilizați? Ca server de fișiere securizat, un shell la distanță sau pentru a redirecționa alte servicii prin SSH? Anunțați-ne în secțiunea de comentarii de mai jos!
Credit imagine: Shutterstock
Sunt scriitor și student la informatică din Belgia. Puteți oricând să-mi faceți o favoare cu o idee bună de articol, recomandare de carte sau idee de rețetă.