À quoi sert SSH ?
L'accès distant à un serveur de manière sécurisée est la fonction principale du protocole SSH, mais il est également intéressant de voir qu'il présente d'autres fonctionnalités qui sont aujourd'hui très utilisées.
Sommaire
Administration distante et sécurisée
Nous avons vu ce qu'était SSH, un protocole, mais aussi une suite d'application permettant l'accès à distance à des machines Linux par des clients. Les clients utilisent donc un logiciel sur leurs ordinateurs qui va initialiser une connexion vers un serveur Linux, le plus souvent distant, pour aller y saisir des commandes. On obtient alors un shell distant sur un serveur.
Transfert de fichier sécurisé
SSH permet également le transfert de fichier entre des machines de manière sécurisée. À l'instar du protocole Telnet dont nous avons parlé plus haut, le protocole FTP permettant le transfert de fichier entre deux machines, n'est pas sécurisé. Il laisse en effet passer les informations de connexion, mais également les fichiers transférés, en clair sur le réseau. On est alors capable de récupérer, en plus des identifiants, le contenu des fichiers. Le protocole SSH permet de sécuriser les transferts de fichier, notamment via la commande SCP, le SFTP ou encore le SSHFS :
- SCP : Secure Copy
- SFTP : SSH File Transfert Protocol
- SSHFS : SSH File System
Un peu plus loin dans le cours, nous verrons en détail l'utilisation et le fonctionnement de ces différentes méthodes de transfert de fichier via SSH, un peu de patience ! 🙂
X11 Forwarding
Une autre utilisation qui peut être faite du protocole SSH est le X Forwarding. Sous Linux, "X" est souvent employé pour parler du mode graphique ou GUI. Le protocole SSH permet en effet d'effectuer un transfert graphique du serveur vers le client. Autrement dit, on pourra lancer une application graphique sur le serveur, par exemple une visionneuse d'image, et la fenêtre et son contenu apparaîtra sur le poste du client, le tout étant transféré via SSH entre le serveur et le client.
On pourra même, grâce au X11 Forwarding, installer et exécuter sur un serveur, dépourvu d'interface graphique, des applications graphiques qui seront utilisées par un client SSH. Nous verrons plus tard dans le cours la configuration et les utilisations possibles du X11 Forwarding.
Tunneling et encapsulation de protocole
Le protocole SSH peut permettre l'encapsulation de n'importe quel protocole. Ainsi, un protocole non chiffré comme l'HTTP peut être encapsulé (comprendre "emballé", comme un objet dans un colis) dans un le protocole SSH pour passer un pare-feu ou un proxy par exemple. Il sera ensuite désencapsulé à la destination ("déballé"). On peut également entendre la description de "Proxy SSH" lorsque l'on parle de ce procédé de tunneling SSH.
Le fait que SSH dispose de plusieurs fonctionnalités lui permet d'être un outil très utile et très efficace lorsque l'on sait le maîtriser correctement. Il permet de se passer d'outils et de protocoles moins fiables et moins sécurisés tel que Telnet ou FTP.
Nous avons vu ce qu'était SSH et comment il pouvait être utilisé. Nous avons vu assez de théorie maintenant. Il est temps de passer à l'action, je vous donne donc rendez-vous dans le prochain chapitre dans lequel nous allons installer et utiliser notre premier serveur SSH !