Présentation
Les protocoles de transfert de fichiers permettent aux utilisateurs de transférer des données entre des systèmes distants via Internet. SFTP est l'un de ces protocoles, offrant aux utilisateurs un moyen sécurisé d'envoyer et de recevoir des fichiers et des dossiers.
Dans ce didacticiel, nous verrons ce qu'est SFTP, comment il fonctionne, quand l'utiliser et quels avantages il offre par rapport aux autres protocoles de transfert de fichiers.
Définition SFTP
SFTP (protocole de transfert de fichiers sécurisé) est un protocole de transfert de fichiers qui utilise le cryptage SSH pour transférer des fichiers entre systèmes en toute sécurité. Il fait partie intégrante de la version 2.0 de SSH.
SFTP permet aux utilisateurs de choisir le niveau d'authentification qu'ils souhaitent utiliser lors du transfert de fichiers. Les utilisateurs peuvent transférer des fichiers à l'aide de SFTP sans authentification supplémentaire, en utilisant une combinaison d'ID utilisateur et de mot de passe, ou en utilisant une paire de clés SSH.
SFTP contre. FTPS
SFTP a été développé comme une alternative plus sécurisée au FTP (File Transfer Protocol) . Même s'ils partagent certaines similitudes, SFTP est un sous-système de SSH et distinct de FTP.
FTPS (FTP sécurisé) est une extension de FTP qui améliore la sécurité du transfert de fichiers en ajoutant la prise en charge des protocoles cryptographiques. Les versions antérieures de FTPS utilisaient le cryptage SSL, mais ont depuis évolué pour utiliser TLS.
Bien que SFTP et FTPS offrent tous deux un moyen sécurisé de transférer des fichiers via Internet, ils utilisent les ports d'une manière très différente. SFTP utilise un seul port pour établir une connexion entre un client et un serveur SFTP. En revanche, FTPS ouvre un nouveau port pour chaque demande de transfert de fichier, ce qui peut entraîner des problèmes avec les pare-feu.
La plupart des pare-feu détectent lorsque les utilisateurs ouvrent un nouveau port pour le transfert de données. Cependant, étant donné que FTPS utilise le cryptage SSL/TLS, le pare-feu ne détecte pas à quoi sert le nouveau port, ce qui entraîne l'échec de la connexion. Alors que les utilisateurs peuvent résoudre ce problème en ouvrant manuellement une plage limitée de ports, SFTP offre une solution intégrée au protocole lui-même.
À quoi sert SFTP ?
SFTP est utilisé chaque fois qu'il est nécessaire de transférer des fichiers entre systèmes tout en maintenant un haut niveau de sécurité.
Les utilisations potentielles de SFTP incluent :
- Transfert de données sécurisé : SFTP permet aux utilisateurs de transférer des fichiers critiques et des données sensibles sans risquer d'exposer les données à des tiers non autorisés. Le transfert de données sécurisé est particulièrement important dans les scénarios de travail à distance.
- Maintien de la conformité : SFTP permet aux utilisateurs de se conformer plus facilement aux réglementations de sécurité telles que PCI-DSS, HIPPA, GDPR et CCPA. Les données en transit sont cryptées avec SSH, garantissant la conformité des données.
- Assurer l'accessibilité des données : Les serveurs SFTP peuvent se connecter à des clients, des applications et d'autres serveurs, ce qui vous permet de configurer un réseau de transfert de données adapté à vos besoins.
- Mise à l'échelle du transfert de données : Des solutions telles que le cloud SFTP permettent aux utilisateurs d'augmenter leurs capacités de transfert de données à mesure que leur entreprise se développe.
Avantages de l'utilisation de SFTP
L'utilisation de SFTP pour transférer des fichiers offre de nombreux avantages.
Sécurité des données
Contrairement à certains autres protocoles de transfert de fichiers, SFTP a été conçu à partir de zéro avec la sécurité à l'esprit. Il assure le transfert sécurisé des données en utilisant plusieurs mesures de sécurité :
- Transfert à un seul port : SFTP utilise un port séparé pour transférer les données (par défaut, il s'agit du port 22). En réduisant le nombre de ports, SFTP limite le nombre de points vulnérables aux écoutes clandestines et empêche les attaques de type "man-in-the-middle".
- Cryptage des données : SFTP crypte chaque fichier pendant le transfert de données. Le chiffrement des données rend pratiquement impossible pour quiconque ne disposant pas de la bonne clé SSH de déchiffrer le fichier.
- Authentification : Les clients recevant des fichiers via SFTP doivent s'authentifier avant de pouvoir déchiffrer et accéder aux données. SFTP offre les mêmes méthodes d'authentification que SSH, y compris une combinaison d'ID utilisateur et de mot de passe et des paires de clés publiques.
- Vérifications de l'intégrité des données : Lors de chaque transfert de fichier, SFTP effectue une vérification de l'intégrité et de l'authenticité des données. Cela garantit que les données n'ont pas été modifiées pendant le transfert.
Atteindre la conformité
Des réglementations telles que PCI-DSS, HIPPA, GDPR, CCPA, SOX ou GLBA établissent une norme pour le transfert de fichiers sécurisé. Le non-respect de ces normes peut entraîner des sanctions substantielles.
Bon nombre de ces réglementations spécifient la nécessité d'un chiffrement lors du transfert de fichiers sensibles. SFTP facilite la mise en conformité en incluant le chiffrement comme mesure de sécurité par défaut lors du transfert de données.
Fonctionnalités avancées
SFTP offre également des fonctionnalités avancées telles que la pause et la reprise du transfert de fichiers. Il permet aux utilisateurs d'effectuer à distance des tâches administratives de base, telles que la création, le changement de nom et la suppression de fichiers et de répertoires.
SFTP peut également transférer les métadonnées des fichiers par défaut, contrairement à de nombreux autres protocoles de transfert de fichiers. Ceux-ci incluent la taille du fichier, la date et l'heure et les autorisations de fichier.
Efficacité et accessibilité
Les protocoles de transfert de fichiers, y compris SFTP, facilitent le transfert de fichiers volumineux ou l'exécution d'un transfert de fichiers en masse (transfert de plusieurs fichiers à la fois). SFTP est une solution plus efficace que les e-mails ou le stockage de données dans le cloud pour les entreprises ayant des besoins élevés en matière de trafic de données.
Les utilisateurs peuvent également automatiser les transferts de fichiers SFTP en configurant des déclencheurs. Ces déclencheurs peuvent transférer des fichiers à une heure prédéterminée ou lors de certains événements. Cela augmente l'efficacité et réduit les risques d'erreur humaine.
SFTP prend en charge l'utilisateur vers le serveur et serveur à serveur configurations. Les données stockées sur les serveurs SFTP sont disponibles à tout moment, tant pour les utilisateurs que pour les autres serveurs.
SFTP pour ETL et ETL inversé
ETL (Extract, Transform, and Load) est une méthode d'intégration de données couramment utilisée. L'ETL inversé fait la même chose, sauf qu'il inverse l'ordre des opérations.
L'ETL inversé s'appuie fortement sur le transfert de fichiers entre les systèmes. SFTP permet de transférer efficacement et en toute sécurité des données entre fournisseurs, clients et autres tiers, ce qui facilite grandement le processus ETL inversé.
Comment fonctionne SFTP ?
Un transfert de fichier SFTP commence par une demande de transfert d'un système client. SFTP utilise le port 22 pour ouvrir une connexion sécurisée entre le client et le serveur SFTP.
Le serveur lit ensuite la demande de transfert et crypte le fichier approprié à l'aide de SSH. SFTP envoie le fichier au client, qui utilise l'authentification SSH pour déchiffrer et accéder au fichier.
Comment utiliser SFTP ?
L'utilisation de SFTP nécessite la configuration d'une connexion entre le système client et le serveur SFTP à l'aide de SSH. Une option couramment utilisée consiste à connecter les deux systèmes à l'aide d'une clé publique SSH.
Étant donné que SFTP fait partie intégrante de SSH, aucune installation supplémentaire n'est nécessaire. Pour commencer à utiliser l'interface SFTP pour transférer des fichiers, connectez-vous au serveur distant en fournissant un nom d'utilisateur et un nom d'hôte ou une adresse IP :
sftp [username]@[remote hostname or IP address]
Dans l'exemple ci-dessous, nous accédons au 192.168.100.5 Adresse IP utilisant le phoenixnap nom d'utilisateur :
sftp [email protected]
L'interface SFTP, indiquée par sftp>
, vous permet de demander des transferts de fichiers et d'exécuter des commandes SFTP.
Une fois que vous avez fini d'utiliser SFTP, mettez fin à la connexion en cours avec :
exit