• 10 heures
  • Moyenne

Ce cours est visible gratuitement en ligne.

course.header.alt.is_video

course.header.alt.is_certifying

J'ai tout compris !

Mis à jour le 12/11/2024

Transférez des fichiers par le réseau

Par définition, un serveur Linux ne sera pas installé en mode graphique. C'est normal, c'est un serveur. La couche graphique est inutile : elle représente des failles potentielles de sécurité supplémentaires, et prendra des ressources matérielles pour rien.

Le seul outil de communication constant et fiable avec le serveur reste donc le terminal. Cependant, certaines tâches sont moins intuitives avec un terminal que lorsque vous disposez d'une belle interface graphique. Elles sont peut être moins intuitives, mais elles restent possibles.

Dans ce chapitre, je vous propose d'étudier spécifiquement les tâches de téléchargement et de transfert de fichiers à partir d'un terminal. Nous verrons dans un premier temps les deux logiciels les plus utilisés pour télécharger des fichiers en HTTP sur le réseau, à savoir wget et curl. 

Nous verrons ensuite comment transférer des fichiers d'un serveur à l'autre de manière sécurisée en utilisant le protocole SSH

Enfin, nous verrons comment se connecter et transférer des fichiers à partir d'un client FTP/SFTP.

Téléchargez sur internet avec  wget  et  curl 

Les deux logiciels les plus utilisés sous Linux pour télécharger des fichiers depuis un terminal sont wget et curl. Ces logiciels offrent des fonctionnalités assez similaires et font partie du trousseau des indispensables d'un administrateur Linux.

Il est possible de l'installer depuis les sources, ou alors d'utiliser le package mis à disposition par les distributions. Son utilisation est assez simple et intuitive, pour télécharger un fichier, en passant l'URL complète du fichier en paramètre

Dans le périmètre des fonctionnalités de base, il est comparable à wget, à une différence non négligeable : il ne propose pas de téléchargement récursif. C'est la raison principale pour laquelle je choisis directement le premier plutôt que le second. 

Après cette petite présentation rapide, je vous montre comment :

  1. installer ces deux outils,

  2. les utiliser pour effectuer des opérations de téléchargement de fichiers via différents protocoles.

Transférez des fichiers par SSH

Les utilitaires curl et wget vont surtout être utilisés pour les téléchargement de fichiers hébergés sur Internet ou via des services HTTP ou FTP. Mais il est également possible de transférer des fichiers d'un serveur ne disposant que du service SSH.

Pour cela, nous allons utiliser un autre logiciel de la brique OpenSSH :scp.

Voyons maintenant comment :

  1. transférer de manière sécurisée des fichiers via le protocole SSH et la commande scp ;

  2. indiquer vos paramètres de connexion au service SSH distant…

  3. …le tout sans saisie de mot de passe en utilisant vos propres clés SSH. En effet, en dehors du fait d’être encore plus sécurisée, cette démarche est également très pratique pour automatiser les transferts ! C’est parti :

Transférez des fichiers par FTP/FTPS/SFTP

Dernier cas de figure : vous disposez de manière tout à fait logique d'une interface graphique sur votre poste de travail. Vous pouvez alors profiter des logiciels clients graphiques permettant de transférer des fichiers.

Le principe est simple :

  • Définition d'un nouveau protocole de communication s'appuyant sur SSH spécialisé dans la gestion des fichiers,

  • Utilisation d'un programme comme client SFTP.

Alors, idem que pour scp, SFTP reposant sur SSH va utiliser les principes de cryptographie asymétrique. Il suffit d'utiliser un logiciel compatible pour bénéficier de ses fonctionnalités.

Par exemple, FileZilla est, à l'origine, un logiciel client pour FTP très connu, gratuit et proposé sous licence GNU, compatible avec SFTP.

Voyons comment :

  1. installer le logiciel FileZilla,

  2. et l’utiliser pour effectuer des transferts de fichier via FTP, SFTP :

En résumé

  • Les commandes wget et curl permettent de télécharger des fichiers depuis un terminal via HTTP

  • La commande scp permet de transférer des fichiers de manière sécurisée via le protocole SSH

  • Il est possible de faire du “FTP par SSH” avec un client graphique tel que FileZilla

Votre serveur Linux propose désormais pas mal de services réseaux. Il est peut-être temps de surveiller un peu son activité. Cela tombe bien, c’est justement le sujet de la prochaine partie, on se retrouve là bas ?

Exemple de certificat de réussite
Exemple de certificat de réussite