Protocolul SSH

Această pagină este despre protocolul SSH. Pentru compania din spatele acestuia, consultați SSH Communications Security. Pentru utilizarea comenzii Linux ssh, consultați Utilizarea comenzii ssh. Pentru clienți SSH, servere și informații tehnice, consultați pagina principală SSH (Secure Shell).

Protocolul SSH (denumit și Secure Shell) este o metodă de conectare securizată de la distanță de la un calculator la altul. Acesta oferă mai multe opțiuni alternative pentru o autentificare puternică și protejează securitatea și integritatea comunicațiilor cu o criptare puternică. Este o alternativă sigură la protocoalele de autentificare neprotejate (cum ar fi telnet, rlogin) și la metodele nesigure de transfer de fișiere (cum ar fi FTP).

Utilizări tipice ale protocolului SSH

Protocolul este utilizat în rețelele corporative pentru:

  • asigurarea accesului securizat pentru utilizatori și procese automatizate

  • transferuri de fișiere interactive și automatizate

  • emiterea de comenzi de la distanță

  • gestionarea infrastructurii de rețea și a altor componente de sistem critice pentru misiune.

Cum funcționează protocolul SSH

Protocolul funcționează în modelul client-server, ceea ce înseamnă că conexiunea este stabilită de clientul SSH care se conectează la serverul SSH. Clientul SSH conduce procesul de stabilire a conexiunii și utilizează criptografia cu cheie publică pentru a verifica identitatea serverului SSH. După faza de configurare, protocolul SSH utilizează algoritmi puternici de criptare simetrică și hashing pentru a asigura confidențialitatea și integritatea datelor care sunt schimbate între client și server.

Figura de mai jos prezintă un flux simplificat de configurare a unei conexiuni shell securizate.

Autentificare puternică cu chei SSH

Există mai multe opțiuni care pot fi utilizate pentru autentificarea utilizatorului. Cele mai comune sunt parolele și autentificarea cu cheie publică.

Metoda de autentificare cu cheie publică este utilizată în principal pentru automatizare și uneori de către administratorii de sistem pentru autentificare unică. S-a dovedit a fi mult mai larg utilizată decât am anticipat vreodată. Ideea este de a avea o pereche de chei criptografice – cheie publică și cheie privată – și de a configura cheia publică pe un server pentru a autoriza accesul și a acorda accesul la server oricărei persoane care are o copie a cheii private. Cheile utilizate pentru autentificare se numesc chei SSH. Autentificarea cu cheie publică este, de asemenea, utilizată cu carduri inteligente, cum ar fi cardurile CAC și PIV utilizate de guvernul SUA.

Autentificarea bazată pe chei este utilizată în principal pentru a permite o automatizare sigură. Transferurile automate de fișiere shell securizate sunt utilizate pentru a integra fără probleme aplicații și, de asemenea, pentru gestionarea automatizată a configurației sistemelor &.

Am constatat că organizațiile mari au mult mai multe chei SSH decât își imaginează, iar gestionarea cheilor SSH a devenit foarte importantă. Cheile SSH acordă acces așa cum o fac numele de utilizator și parolele. Ele necesită un proces similar de provizionare și încetare.

În unele cazuri am găsit mai multe milioane de chei SSH care autorizează accesul în serverele de producție din mediile clienților, 90% dintre chei fiind de fapt neutilizate și reprezentând accesuri care au fost provizionate, dar care nu au fost niciodată încetate. Asigurarea unor politici, procese și audituri adecvate și pentru utilizarea SSH este esențială pentru o gestionare adecvată a identității și a accesului. Proiectele tradiționale de gestionare a identității au trecut cu vederea până la 90% din toate acreditările, ignorând cheile SSH. Oferim servicii și instrumente pentru implementarea gestionării cheilor SSH.

SSH oferă criptare puternică și protecție a integrității

După ce a fost stabilită o conexiune între clientul și serverul SSH, datele care sunt transmise sunt criptate în conformitate cu parametrii negociați în configurare. În timpul negocierii, clientul și serverul convin asupra algoritmului de criptare simetrică care va fi utilizat și generează cheia de criptare care va fi folosită. Traficul dintre părțile care comunică este protejat cu ajutorul unor algoritmi de criptare puternici standard în domeniu (cum ar fi AES (Advanced Encryption Standard)), iar protocolul SSH include, de asemenea, un mecanism care asigură integritatea datelor transmise prin utilizarea unor algoritmi de hash standard (cum ar fi SHA-2 (Standard Hashing Algorithm)).

Standardul IETF SSH și documentația tehnică detaliată

Protocolul de bază

Când protocolul SSH a devenit popular, Tatu Ylonen l-a dus la IETF pentru standardizare. Acum este un standard de internet care este descris în următoarele documente:

RFC 4251 – Arhitectura protocolului Secure Shell (SSH)RFC 4253 – Protocolul stratului de transport Secure Shell (SSH)RFC 4252 – Protocolul de autentificare Secure Shell (SSH)RFC 4254 – Protocolul de conectare Secure Shell (SSH)

Protocolul de transfer de fișiere SFTP

Protocolul de transfer de fișiere SFTP (SSH File Transfer Protocol) este probabil cel mai utilizat protocol de transfer securizat de fișiere în prezent. Acesta rulează prin SSH și este documentat în prezent în draft-ietf-secsh-filexfer-02

Formatul de fișier cu cheie publică

Formatul de fișier cu cheie publică nu este un standard formal (este un document informativ), dar multe implementări acceptă acest format.RFC 4716 – The Secure Shell (SSH) Public Key File Format

Cum se citează SSH

Pentru a cita SSH într-o lucrare de cercetare, vă rugăm să folosiți următoarele:

Tatu Ylonen: SSH - Secure Login Connections over the Internet.Proceedings of the 6th USENIX Security Symposium, pp. 37-42,USENIX, 1996.