Secure shell
| 7 - couche application | HTTP, SMTP, FTP, SSH, IRC, SNMP, SIP ... |
| 4 - couche de transport | TCP, UDP, SCTP, RTP, DCCP ... |
| 3 - couche réseau | IPv4, IPv6, ARP, IPX ... |
| 2 - couche de liaison | Ethernet, 802.11 WiFi, Token ring, FDDI, ... |
| 1 - couche physique | RS-232, RS-449, ... |
SSH est l'abréviation de Secure Shell, qui est à la fois un programme informatique et un protocole de communication sécurisé. Le protocole de connexion impose un échange de clé de chiffrement en début de connexion. Par la suite toutes les trames sont chiffrées. Il devient donc impossible d'utiliser un sniffer pour voir ce que fait l'utilisateur. Le protocole SSH a été conçu avec l'objectif de remplacer les différents programmes rlogin,telnet et rsh. Le protocole SSH existe en deux versions majeures : la version 1.0 et la version 2.0. La première version permet de se connecter à distance à un ordinateur afin d'obtenir un shell ou ligne de commande. Cette version souffrait néanmoins de problèmes de sécurité dans la vérification de l'intégrité des données envoyées ou reçues, la rendant vulnérable à des attaques actives. En outre, cette version implémentait un systeme de transmission de fichiers sommaires, et du port tunneling. La version 2 est actuellement encore à l'état de draft, mais est déjà largement utilisée à travers le monde. Cette version est beaucoup plus sûre cryptographiquement, et possède en plus un protocole de transfert de fichiers complet.
Habituellement le protocole SSH utilise le port 22. Il est particulièrement utilisé pour ouvrir un shell (console) sur un ordinateur distant. Peu utilisé sur les stations Windows (avec PuTTY ou cygwin), SSH fait référence pour l'accès distant sur les stations Linux et Unix.
SSH peut également être utilisé pour recopier des ports TCP d'une machine UNIX vers une autre, créant ainsi un tunnel. Cette méthode est couramment utilisée afin de sécuriser une connexion qui ne l'est pas (par exemple le protocole email POP3)
Note : rien n'empêche de faire plusieurs sauts entre consoles SSH, c'est-à-dire ouvrir une console sur un serveur, puis, de là, en ouvrir une autre sur un autre serveur.
| Sommaire |
Historique
La première version de SSH (SSH-1) a été conçue par Tatu Ylönen, à Espoo, en Finlande en 1995. Il a créé le premier programme utilisant ce protocole et a ensuite ouvert une société, SSH Communications Security pour exploiter cette innovation. Cette première version utilisait certains logiciels libres comme la librairie Gnu libgmp, mais au fil du temps ces logiciels ont été remplacés par des logiciels propriétaires. SSH Communications Security a vendu sa license SSH à F-Secure (anciennement connue sous le nom de Data Fellows).
La version suivante a été nommée SSH-2. le groupe de recherche de l'IETF « secsh » a commencé à écrire le standart SSH-2, que l'on retrouve actuellement dans la plupart des implémentations.
Voir aussi
Liens internes
Liens externes
- (fr) Tutoriel SSH
- (fr) Labo-Linux: SHFS : Montage de systèmes de fichiers distants à travers SSH
- (fr) Labo-Linux: Installation pas à pas : documentation détaillée de la mise en place d'un serveur SSH
- (fr) Connexion à distance sécurisée
- Implémentation libre OpenSSH
- libssh : Implémentation libre sous la forme d'une librairie.
- sshwindows : OpenSSH pour Windows
- putty : client telnet/SSH pour Windows
