Qu’est-ce que le protocole SFTP (Secure File Transfer Protocol) ?
Qu’est-ce que le protocole de transfert de fichiers sécurisé ?
Le protocole SFTP (Secure File Transfer Protocol) est un protocole réseau standard pour le transfert sécurisé de fichiers entre les systèmes connectés. Un protocole réseau est un ensemble de règles établies qui agissent comme un langage commun quels que soient le matériel ou les logiciels spécifiques utilisés par les périphériques du réseau. Le SFTP ajoute l’authentification et le chiffrement au transfert de fichiers, permettant ainsi aux entreprises de partager des fichiers en toute sécurité et de respecter les exigences de conformité réglementaires relatives aux données sensibles des fichiers.
Pourquoi le protocole de transfert de fichiers sécurisé est-il important ?
La sécurité et la confidentialité des données sont des exigences de base pour le transfert de fichiers sur n’importe quel réseau, que ce soit au sein d’un réseau local (LAN) d’entreprise ou via Internet. Le protocole de transfert de fichiers sécurisé est utilisé conjointement avec d’autres protocoles de sécurité réseau courants, tels que HTTPS (Hypertext Transfer Protocol Secure), pour garantir la sécurité des données de fichiers au niveau du réseau.
Le SFTP a été développé pour remplacer le protocole FTP (File Transfer Protocol), une méthode traditionnelle de transfert de fichiers. Il est utilisé pour transférer des fichiers sensibles dans de nombreuses applications parmi les plus utilisées au monde, telles que Git, VSCode, Ansible, WordPress et AWS Transfer Family.
Que signifie le S dans SFTP ?
SFTP est également connu sous le nom de protocole de transfert de fichiers SSH, en raison de son utilisation du protocole de connexion Secure Shell (SSH). S peut signifier à la fois Secure et Secure Shell.
SSH
Le protocole SSH est un protocole de connexion cryptographique basé sur l’authentification pour les communications réseau. SSH gère le transport sécurisé des données, l’authentification et les connexions via le protocole TCP (Transmission Control Protocol). Le TCP est l’un des principaux protocoles de transport Internet.
Le protocole SSH garantit qu’aucun écouteur entre deux parties sur un réseau ne peut déchiffrer de communication confidentielle partagée une fois la session établie. Par exemple, un écouteur sur un réseau ne serait pas en mesure de consulter les mots de passe ou les données d’identification personnelle (PII) envoyés via une connexion chiffrée Secure Shell.
SSH donne au client (utilisateur) l’autorisation d’exécuter des commandes de base sur un serveur distant ; toutefois, SSH ne permet pas de transférer et de manipuler des fichiers. Pour sécuriser le transfert de données des fichiers et les opérations de manipulation de fichiers, SSH nécessite une approche en couches, en combinaison avec SFTP.
Comment fonctionne le protocole de transfert de fichiers sécurisé ?
Le SFTP permet aux utilisateurs d’envoyer, de recevoir et de manipuler des fichiers et des dossiers du serveur, réduisant ainsi le risque de fuite d’informations en raison d’une connexion compromise. Le protocole SFTP chiffre tous les contenus et commandes des fichiers, les rendant indéchiffrables en transit, afin de garantir la conformité des transferts de fichiers.
Architecture client-serveur
Le protocole SFTP utilise le modèle d’architecture client-serveur SSH pour la communication. Ce modèle d’architecture permet au serveur de contrôler les connexions, les ressources et la sécurité, même si le client lance une session.
Infrastructure à clés publiques et privées
Le SFTP utilise des clés SSH publiques et privées pour authentifier les sessions entre les clients et les serveurs. L’utilisation d’une infrastructure à clés SSH garantit une charge de gestion de la sécurité minimale, qui ne concerne que le client SFTP et le serveur SFTP.
Port 22 par défaut
Le SFTP utilise le port 22 par défaut pour une livraison fiable des données avec des connexions SSH via TCP. Cependant, il est possible de nommer un port différent dans SFTP, dans le cas de connexions existantes sur le port 22.
Reprise des transferts interrompus
Le protocole SFTP permet aux utilisateurs de reprendre les transferts de fichiers précédemment interrompus en raison de sessions interrompues. La reprise des transferts de fichiers améliore la productivité, même en cas de connexions instables.
Quelles sont les commandes SFTP les plus courantes ?
Les utilisateurs peuvent exécuter des commandes SFTP via l’interface de ligne de commande (CLI) ou en suivant des flux de travail cliquables dans une application dotée du SFTP intégré. Les utilisateurs de Windows, Mac et Linux ont tous accès à la ligne de commande SFTP via une application shell. Voici quelques commandes SFTP utiles utilisant le shell bash.
Lancement et fermeture d’une session SFTP
sftp user@hostname par exemple sftp dan@example.com
Ouvre une nouvelle connexion SFTP sur le serveur example.com. L’invite de commande du shell deviendra sftp> pour indiquer que la session a commencé. Vous pouvez inclure différentes options dans cette commande, telles que :
- -P [numéro] pour spécifier un numéro de port ;
- -i [fichier] pour inclure un fichier de clé privée, et
- -r pour activer le transfert récursif de répertoires.
sftp exit ferme une session SFTP.
Transfert de fichiers
get server_path_and_filename local_path copie le fichier donné du serveur vers le répertoire spécifié.
par exemple, get /projects/marketing/proposal.txt /newopportunities
put local_path_and_filename server_path transfère un fichier local vers le répertoire du serveur donné.
par exemple put /finances/invoices/march.txt /projects/marketing/payments
De même, les commandes reget et reput reprennent les transferts interrompus.
Gestion de fichiers à distance
- chown user path change la propriété du fichier ou du dossier situé sur le chemin donné sur le serveur à l’utilisateur spécifié.
- chmod number path modifie les autorisations du fichier ou du dossier au chemin indiqué sur le serveur.
- ls affiche la liste des fichiers et des dossiers du répertoire actuel du serveur.
- cd path navigue vers le répertoire indiqué sur le serveur.
- mkdir dir_name crée un nouveau dossier sur le serveur.
- rmdir dir_name supprime un dossier donné sur le serveur.
- rename old_file_name new_file_name renomme un fichier donné sur le serveur.
- pwd affiche le répertoire actuel sur le serveur.
- lpwd affiche le répertoire local actuel.
Comment le SFTP se compare-t-il aux autres protocoles de transfert de fichiers ?
Le SFTP fait partie d’une gamme de protocoles de transfert de fichiers standard.
SFTP et FTPS
Le FTP Secure (FTPS) utilise les protocoles TLS (Transport Layer Security) et SSL (Secure Socket Layer) en plus du protocole de transfert de fichiers pour effectuer des transferts de fichiers sécurisés. L’authentification par FTPS repose sur les pratiques de gestion des certificats SSL. Le FTPS est considéré comme principalement obsolète.
Le protocole FTPS repose sur le protocole FTP, tandis que le protocole SFTP a été introduit pour remplacer le protocole FTP par une architecture plus sécurisée. Le SFTP est beaucoup plus utilisé que le FTPS aujourd’hui, en raison de sa simplicité, de sa sécurité et de sa prise en charge du cloud.
SFTP et TFTP
Le protocole TFTP (Trivial File Transfer Protocol) est un protocole léger pour le transfert de fichiers qui utilise une architecture client-serveur. Le TFTP ne contient aucune mesure de sécurité intégrée et doit donc être associé à des protocoles de sécurité ou à des protections pour les transferts de fichiers dans les environnements habituels.
Alors que le SFTP est utilisé dans une grande variété d’applications, le TFTP n’est généralement utilisé que directement sur un réseau local sécurisé lors de la configuration ou du démarrage de nouveaux matériels, microprogrammes et systèmes d’exploitation.
Quelles sont les meilleures pratiques en matière d’utilisation du protocole SFTP ?
Utilisez les meilleures pratiques pour la gestion des clés publiques-privées, notamment la rotation des clés et le stockage sécurisé sur le serveur SFTP. Assurez-vous que votre serveur SFTP est toujours à jour grâce aux mises à jour de sécurité et aux correctifs, et qu’il utilise un chiffrement robuste tel que l’AES. Enregistrez les transferts de fichiers réussis et les tentatives d’accès infructueuses pour détecter les anomalies et y réagir.
N’oubliez pas que le SFTP n’est qu’un élément de la sécurité du réseau. Les pare-feu, les systèmes de détection d’intrusion et les autres mesures de sécurité doivent être adaptés à votre architecture réseau spécifique.
Comment AWS peut-elle répondre à vos besoins en matière de stockage de fichiers ?
Amazon propose une gamme de solutions de stockage et de transfert de fichiers sécurisés.
Amazon S3 est une solution de stockage d’objets conçue pour stocker et récupérer n’importe quelle quantité de données, n’importe où. Vous pouvez l’utiliser pour stocker et récupérer n’importe quelle quantité de données, y compris des fichiers, à tout moment et en tout lieu, y compris pour les transferts de fichiers automatisés.
Amazon Elastic File System (EFS) fournit un stockage de fichiers cloud entièrement élastique et sans serveur qui vous permet de créer des systèmes de fichiers accessibles aux instances Amazon Elastic Compute Cloud (EC2) et à d’autres services cloud AWS. Ces systèmes prennent en charge une sémantique d’accès complète de système de fichiers (par exemple : forte cohérence des données et verrouillage des fichiers). Vous pouvez partager des données de fichiers sans provisionner ou gérer la capacité et les performances de stockage.
AWS Transfer Family propose une prise en charge entièrement gérée pour le transfert de fichiers via SFTP, AS2, FTPS, FTP et navigateurs Web, directement vers et depuis Amazon S3 ou Amazon EFS. Vous pouvez effectuer la migration, automatiser et surveiller de manière fluide vos flux de transfert de fichiers en conservant les configurations côté client existantes pour l’authentification, l’accès et les pare-feu. Ainsi, rien ne change pour vos clients, partenaires et équipes internes, ni pour leurs applications.
Démarrez avec le stockage de fichiers sur AWS en créant un compte gratuit dès aujourd’hui.