Modul principal de conectare la un server Linux este prin Protocolul SSH. Acest tip de conexiune este sigur, deoarece toate datele transferate prin intermediul acestuia sunt criptate. În ordine la stabiliți conexiunea SSH ar trebui să-l configurați pe serverul la distanță la care doriți să vă conectați și pe client de partea utilizatorului. Există o mulțime de software pentru conexiunea SSH. În ceea ce privește Linux, pachetul OpenSSH este cel mai popular, iar pentru Windows oamenii folosesc mai ales PuTTY.
Să aruncăm o privire mai atentă asupra configurației serverului folosind Ubuntu Server 18.04 ca exemplu, apoi să încercăm să ne conectăm la server din Linux și Windows.
Tot ceea ce facem va fi din contul unui utilizator obișnuit. În acest caz, am creat un utilizator „Mihail", Și"rădăcină” contul este dezactivat implicit.
Configurare partea serverului
Configurați pachetul care rulează această comandă:
sudo apt install openssh-server
După finalizarea instalării, asigurați-vă că serviciul rulează. Utilizați această comandă:
systemctl status sshd
Stare "Activ (alergare)” înseamnă că serviciul este activat și funcționează normal.
Pentru a evita blocarea conexiunilor de intrare de către firewall, asigurați-vă că îl dezactivați, deoarece nu vom configura firewall-ul de rețea în acest articol.
Utilizați această comandă:
sudo ufw disable
În această etapă vă puteți conecta deja la server. Cu setările implicite, serverul permite conectarea la portul standard 22 cu autentificare bazată pe parolă.
Conexiune SSH de la Linux
De regulă, clientul OpenSSH este instalat implicit pe Linux și nu necesită o configurare manuală suplimentară. Conexiunea poate fi stabilită de la terminal cu ajutorul comenzii ssh. Parametrii în acest caz ar fi numele de utilizator și adresa IP a serverului de la distanță. Pe serverul nostru de testare pe care îl folosim ca exemplu, există un singur cont „mihail”, așa că îl vom folosi.
ssh [email protected]
La prima conexiune va trebui să confirmați adăugarea cheii publice a serverului la baza de date, așa că răspundeți „da”. După aceea puteți introduce parola. Dacă conexiunea este realizată cu succes, veți vedea un text de bun venit al liniei de comandă a serverului. Acum toate comenzile vor fi executate chiar pe serverul de la distanță.
SSH din Windows
Deschideți Putty și setați parametrii de conectare. Asigurați-vă că comutatorul „Tipul conexiunii” este îndreptat către SSH. Introdu adresa IP în „Nume gazdă” câmp, valoare implicită 22 în „Port"Și faceți clic pe"Operatii Deschise".
La prima conexiune Putty vă va cere să confirmați că aveți încredere în acest server, așa că faceți clic pe „DaMatei 22:21
După ce introduceți datele de conectare și parola, veți vedea linia de comandă a serverului de la distanță.
Autentificare prin cheie. Creșterea nivelului de securitate
Când un client încearcă să stabilească o conexiune securizată la server prin SSH, înainte de a permite conexiunea, serverul trebuie să autentifice (verifice) clientul. După cum am menționat anterior, autentificarea bazată pe parolă este de obicei utilizată în mod implicit. Nu oferă securitate robustă, deoarece există întotdeauna o modalitate de a o forța brută. În plus, autentificarea cu parolă nu este aplicabilă conexiunilor SSH cu utilizarea de scripturi.
Pentru acest tip de sarcini există o metodă specială de autentificare prin cheie. Ideea este că clientul generează chei private și publice și apoi cheia publică este trimisă la server. După aceea, nu aveți nevoie de parolă pentru a vă conecta la server, deoarece autentificarea se realizează pe baza cheilor clientului public și privat. Pentru a oferi un nivel bun de securitate, accesul la cheia privată ar trebui restricționat. Datorită faptului că cheia privată este stocată pe partea clientului și nu este transferată prin rețea, se crede că această metodă este mai sigură.
Autentificare prin cheie pe Linux
Să generăm chei publice și private pe client cu ajutorul software-ului utilitar ssh-keygen. Instrumentul va sugera schimbarea căii către cheia privată și va introduce o expresie de acces pentru securitate suplimentară. Lăsați toți parametrii în mod implicit apăsând Enter la toate solicitările.
Ca urmare, în directorul principal din folderul .ssh veți găsi două fișiere generate: id_rsa și id_rsa.pub care conțin chei private și publice în consecință.
După aceea, va trebui să trimiteți cheia publică către server. Pentru a face acest lucru, copiați conținutul fișierului „id_rsa.pub" fișier în "~/.ssh/authorized_keys” pe server. Să mergem pe calea cea mai ușoară cu ajutorul ”ssh-copy-id”. Introduceți login și adresa IP a serverului, la fel ca în cazul unei conexiuni obișnuite. După ce introduceți parola, cheia publică a clientului va fi copiată automat pe server. Rulați această comandă:
ssh-copy-id [email protected]
După ce faci toate acestea, serverul nu va mai necesita introducerea parolei.
Autentificare prin cheie pe Windows
Operatii Deschise PUTTYGEN și faceți clic pe "GeneraPentru a genera cheile, trebuie doar să mutați mouse-ul peste ecran și instrumentul va genera aleatoriu cheile.
După ce cheile sunt generate, faceți clic pe „Salvați cheia privată” și salvați-l în fișierul cu cheia privată de pe disc. Puteți seta orice cale doriți, dar un pic mai târziu va trebui să o specificați în Putty. Apoi copiați cheia publică din partea de sus a ferestrei.
Să trimitem cheia publică prin simpla copiere a acesteia pe terminal. Deschide Putty și conectați-vă la server ca de obicei. Acum să creăm „.ssh/authorized_keys” și restricționează accesul celorlalți utilizatori la fișier, astfel încât acesta este disponibil numai pentru creator.
mkdir .ssh
touch .ssh/authorized_keys
chmod 700 .ssh
chmod 600 .ssh/authorized_keys
După crearea fișierului, introduceți cheia publică a clientului în el. În etapa anterioară am copiat cheia publică în clipboard. Pentru a înregistra ceea ce este în clipboard în fișier, utilizați comanda cat și redirecționarea ieșirii.
cat > .ssh/authorized_keys
După ce ați introdus comanda, faceți clic pe butonul dreapta al mouse-ului în fereastra terminalului și lipiți ceea ce este în clipboard. Pentru a confirma introducerea, apăsați „Ctrl + D” scurtătură și deconectați-vă de la server.
Acum să specificăm calea către cheia privată în Putty și să ne conectăm din nou la server.
De acum înainte, pentru a vă conecta la server, va trebui doar să introduceți numele de utilizator. Dacă încercați să vă conectați la server de pe un alt dispozitiv care nu are cheia privată corectă, serverul va solicita parola. După ce autentificarea bazată pe chei este configurată, puteți interzice accesul prin parolă.