The SSH (Secure Shell) protocol is used to establish secure access for performing sensitive operations on remote machines and for transferring files across a public network, while guaranteeing data authentication, confidentiality and integrity.
SSH's main objective was to solve the problem of transmitting all information on the network (LAN or Internet) in the clear, opening the door to all kinds of man-in-the-middle attacks.
Since the advent of SSH, its role has evolved to include more than just remote shell connectivity. Version 2 of this protocol, standardized in January 2006, offers security for any application protocol, thanks to its port forwarding and tunneling mechanisms.
In this dossier, we will explain the various security services implemented in SSH, focusing on version 2, standardized in 2006 by the IETF. We will then present SSHv2's sub-protocols, its initialization phase and the various authentication methods it incorporates. We'll also look at the SSH VPN solution, comparing it to IPSec and SSL. We will then discuss the future of the SSH protocol and the new TLS standards that are influencing the future of this protocol and its current use in accessing remote equipment. We'll close with a conclusion.
Acknowledgements :
We would like to thank Prof. Maryline Maknavicius-Laurent and Dr. Ouahiba Fouial for the attention they paid to this dossier, for the time they took to read it, and for their constructive and interesting comments.