Un transfert de données sécurisé avec WinSCP

Nul n’est en lieu sûr en navigant sur le Web. Il arrive régulièrement que des tiers non autorisés parviennent à avoir accès aux données sensibles ou privées des internautes. Un des plus grands risques en dehors de la transmission des données par email repose dans la maintenance de serveurs sur des canaux non cryptés. Les protocoles de transmission populaires comme FTP (File Transfer Protocol) ou encore le moins récent RCP (Remote Copy Protocol) sont régulièrement exposés au problème du vol de données. Cette faille sécuritaire est liée au fait que les données contenues, tout comme les noms d’utilisateurs et les mots de passe sont transmis de manière non cryptée. Une alternative sûre repose dans l’utilisation de protocoles SFTP (SSH File Transfer Protocol) et SCP (Secure Copy). Ceux-ci permettent d’assurer une transmission cryptée et authentifiée entre le serveur et le client sur une base SSH (Secure Shell). Avec WinSCP, un programme client compatible en SSH est disponible pour les utilisateurs de Windows. Mais quels sont les avantages offerts par WinSCP et de quel matériel et prérequis doit-on disposer pour pouvoir en bénéficier ?

Qu’est-ce que WinSCP ?

WinSCP (Windows Secure Copy) est un programme client codé en C++ qui autorise un transfert sécurisé de données entre deux ordinateurs. Ce logiciel gratuit offre de nombreuses possibilités d’authentification et de cryptage. C’est également une alternative populaire à OpenSSH et PuTTY, basée sur le programme de Windows. WinSCP se caractérise notamment par une transmission cryptée par les protocoles SFTP et SCP sur une base SSH. De plus, ce programme est compatible avec une transmission non cryptée via FTP tout comme le standard WebDAV.

Tout comme les autres programmes clients (par exemple FileZilla), WinSCP sert à gérer les données sur les serveurs Web à distance (Remote). En règle générale, une transmission locale entre un ordinateur Windows et le serveur Web est effectuée. Ainsi, il est possible de transférer les données du serveur au client et également de les gérer sur le serveur. WinSCP présente de nombreux avantages sur ce point :

  • Une bonne ergonomie : WinSCP convainc par une interface utilisateur graphique et est disponible en deux versions différentes. Commander propose aux utilisateurs deux types différents d’affichage des dossiers qui sont regroupés en une fenêtre. A gauche, le répertoire de fichiers de l’ordinateur local est affiché. A droite sont affichés les données qui sont contrôlables à distance. En comparaison, l’interface Explorer est moins élaborée et ne propose qu’une seule fenêtre d’affichage des dossiers. Le transfert des données s’effectue par glisser-déposer dans les deux interfaces utilisateur. Dans l’interface d’Explorer, les raccourcis de Windows sont toujours à portée de clics.
  • Editeur de texte intégré : WinSCP permet de travailler les fichiers de texte directement sur l’interface de contrôle à distance sur le serveur. Pour cela, le logiciel met à disposition des utilisateurs un éditeur de texte interne qui est interne au programme. Ainsi, les données HTML, PHP ou CSS peuvent être directement ouvertes et ajustées sur le programme client. Au cours du processus d’écriture, WinSCP assure l’enregistrement d’une copie de sauvegarde temporaire sur la fenêtre d’accès à distance pendant que le document original est remplacé. Néanmoins, l’intégration d’éditeurs externes tels que Notepad++ ou Eclipse est supportée par WinSCP.
  • Synchronisation automatique : WinSCP permet la synchronisation des deux annuaires. Cela facilite la gestion des données pour les administrateurs, étant donné que les données peuvent ainsi être comparées automatiquement sur le serveur Web avec les données locales de l’ordinateur. Si WinSCP effectue une demande de mise à jour l’annuaire d’accès à distance, le programme surveille les données dans l’annuaire local et télécharge les données modifiées automatiquement. WinSCP supprime également sur commande l’ancienne version du serveur.
  • Utilisation gratuite : WinSCP est sous la licence GNU (General Public License). C’est un logiciel gratuit qui peut être utilisé, modifié et diffusé librement. Le code source du programme pour SSH et SCP est basé sur celui du programme client PuTTY, et le code source pour FTP sur celui de FileZilla.

Transmission des données cryptées via SSH

Les utilisateurs de WinSCP apprécient avant tout ce logiciel client parce il leur permet de transmettre des données de manière sécurisée sur un réseau qui ne l’est pas toujours. De plus, le client SSH intégré permet d’effectuer une connexion réseau cryptée entre un PC local et un appareil à distance (en général un serveur Web). Les transmissions de données SFTP, au même titre que SCP, proposent un protocole réseau SSH et utilisent donc un cryptage des données ainsi que des processus d’authentification. Les principales différences résident dans le spectre des fonctions.

  • Secure Copy (SCP) : la transmission des données cryptées via SCP se base sur SSH-1 et sert avant tout à transférer des données d’un ordinateur à un autre. SCP perd en popularité depuis la sortie de SSH-2 et des standards de transfert des données SFTP qui sont bien plus flexibles. SCP a pour avantage de bénéficier d’un algorithme de transfert plus efficace, permettant une transmission des données plus rapide.
  • SSH File Transfer Protocol (SFTP) : le protocole de transfert des données est arrivé simultanément sur le marché avec SSH-2. Au même titre que SCP, SFTP se démarque par une authentification par le serveur et le client, tout comme par une transmission des données cryptée. Le spectre des fonctions SFTP est néanmoins plus vaste que celui de SCP. A la place d’effectuer simplement des transferts de données, SFTP permet d’avoir accès à des données à distance, de les gérer et de les retravailler.

Prérequis nécessaires à l’utilisation de WinSCP

WinSCP fonctionne sur chaque ordinateur distribué par Windows. Pour pouvoir effectuer une connexion avec un serveur Web, il est nécessaire d’avoir un identifiant ainsi que les mots de passe requis. L’accès crypté via SFTP ou SCP requièrent de plus un serveur SSH. Généralement, les serveurs SSH sont déjà installés sur les ordinateurs distribués par Linux. Pour s’identifier sur le serveur Web, un mot de passe et une paire de clés cryptographiques SSH doivent être utilisés. Les packs d’hébergement disponibles sur le marché permettent généralement un accès via SSH.

Authentification par clé publique

Pour une authentification par clé publique, une paire de clés cryptographiques composée de clés privées et publiques est requise ainsi qu’une application PuTTYgen intégrée à WinSCP. Tandis que la clé publique (Public Key) est enregistrée sur le serveur SSH, la clé privée (Private Key) reste sur le serveur local. Ainsi, WinSCP peut émettre des signatures et des authentifications qui sont vérifiées par le serveur Web avec l’aide de la clé publique. Pour ne pas que la clé privée finisse entre de mauvaises mains, ce serveur local est bien souvent encrypté et sauvegardé avec un mot de passe au choix.

Une authentification simplifiée grâce à Pageant

L’authentification par clé publique peut être simplifiée grâce à Pageant, qui est l’agent d’authentification de PuTTY. Avec cette aide à l’authentification, le mot de passe pour la clé privée doit être saisi en ouvrant une session Windows. Pageant met à disposition la clé en non crypté à disposition pour d’autres authentifications. Si l’utilisateur quitte sa session, Pageant est automatiquement arrêté, sans que la clé privée non cryptée ne soit sauvegardée sur le disque dur.

Découvrez les premiers pas avec WinSCP dans notre article suivant.