Easyhost Easyhost Easyhost Easyhost Easyhost

Ce înseamnă acces SSH?

SSH este cel mai răspândit protocol folosit de proprietarii de site-uri și administratorii de sistem pentru a se conecta remote la servere Linux. Accesul SSH – acronim pentru Secure Shell – implică folosirea unui client de unde se realizează conectarea securizată la server. După conectare, utilizatorul tastează comenzile sale în clientul local și acestea sunt trimise către server unde vor fi executate.

Cum funcționează

Odată conectat SSH și ajuns în sesiunea shell, se introduc comenzi în interfața text, comenzi care sunt ulterior criptate și trimise pentru execuție pe server. Conexiunile de tip SSH necesită:

  • Un program de tip SSH daemon instalat pe server-ul pe care încerci să te conectezi. Acest soft ascultă conexiunile realizate pe un anumit port, autentifică cererile de conectare și generează mediul potrivit dacă utilizatorul s-a conectat cu credențialele corecte.
  • Un program de tip client SSH instalat pe device-ul utilizatorului care vrea să se conecteze la server. Utilizatorul va folosi acest program introducând informații despre host-ul la care încearcă să se conecteze și despre credențialele (username și parole/chei) necesare.

În vederea autentificării, utilizatorul poate apela fie la parole, fie la chei SSH. Deși prima alternativă este deseori preferată de utilizatorii noi datorită simplității, standardele în industrie recomandă folosirea cheilor SSH pentru autentificare. Autentificările SSH prin parolă sunt descurajate deoarece pot fi ușor exploatate de către boți automați sau utilizatori rău-intenționați.

Cheile SSH

Cheile SSH sunt seturi de câte două chei criptografice, o cheie publică și o cheie privată, folosite pentru autentificare. Utilizatorul care dorește logarea SSH trebuie să aibă o astfel de pereche de chei pe calculatorul local de pe care încearcă accesul pe server. Cheia publică a utilizatorului trebuie să existe pe server sau trebuie înregistrată de administratorul serverului într-un fișier ~/.ssh/authorized_keys. Fișierul poate fi găsit în directorul utilizatorului de pe server și  conține lista tuturor cheilor publice autorizate să acceseze acel server, câte una pe linie.

Protocolul de rețea SSH se folosește de chei asimetrice pentru asigurarea confidențialității datelor.

Utilizatorul transmite serverului cheia sa publică pentru verificare dacă aceasta se află printre cele cu permisiuni de acces pe server. După verificare, serverul generează un șir aleator, criptat cu cheia publică primită mai devreme, pe care îl returnează utilizatorului. Singura modalitate în care utilizatorului poate decripta mesajul este prin folosirea cheii private asociate cheii publice trimise pentru autentificare.

Odată primit răspunsul serverului, utilizatorul îl decriptează folosind cheia privată. Șirul aleator transmis de server este ulterior asociat unui ID de sesiune și retrimis serverului în format MD5 hash. Atunci când serverul primește informația MD5 hash, verifică dacă șirul este corect dar și ID-ul de sesiune (stocat în logurile serverului), înțelege că utilizatorulul deține cheia privată și îi permite accesul.

Operațiuni SSH

Accesul pe server fiind obținut, iată câteva din operațiunile care se pot realiza prin SSH:

  • Transferul de fișiere. Protocolul sftp poate fi folosit pentru a explora fișierele de pe sistemul remote sau pentru a urca și descărca fișiere în mod interactiv. Alternativ, protocolul scp poate fi folosit pentru transferuri individuale/one-time și funcționează chiar și cu două hosturi remote.
scp /localdirectory/example1.txt <username>@<remote>:<path>
va copia fișierul example1.txt în fișierul specificat în <path> de pe server.
scp <username>@<remote>:/home/example1.txt ./
va muta fișierul de pe directorul home de pe serverul remote pe device-ul local.
  • Rularea de console remote. În executarea unei linii de comandă, SSH-ul poate să ruleze comanda în locul consolei, folosind switch-ul –t atunci când este nevoie.
ssh user@remote -t irssi
  • Schimbarea permisiunilor. Comanda chmod poate modifica privilegiile de vizualizare și scriere pentru diferiți utilizatori.
chmod u+w example1.txt
adaugă permisiune de scriere (modificare) la fișier pentru utilizatorul u.
chmod g+r example1.txt
adaugă access de citire la fișier pentru grupul de utilizatori.

Tot prin comenzi SSH, utilizatorul poate vizualiza log-uri de erori, poate șterge cache-ul, poate vedea direct fișierele de pe server pentru a se asigura că sunt versiunea corectă precum și multe alte operațiuni cu nivelul de acces al unui administrator de sistem.

 

Puterea SSH stă în simplitatea pe care i-o oferă utilizatorului, disponibilă acum și clienților de găzduire WordPress. Accesând direct terminalul altei mașini, SSH scurtează mult procesul de obținere a controlului mașinii de la distanță.