C’est quoi un serveur FTP ? 59

 

C’est quoi un serveur FTP ?

Quel est le rôle d’un serveur FTP ?

 

serveur FTP

by Stuart Miles, http://www.freedigitalphotos.net/

Au sommaire

 

 

Comme vous le savez peut être, l’informatique est faite à base de fichiers. Eh oui,derrière chacune des tâches que vous effectuez, se cachent des fichiers. Ces fichiers peuvent avoir différents types : Exécutables, données, fichiers compressés, pages html, …

Regardons quelques unes de ces tâches :

  • Lorsque vous surfez, vous allez lire des fichiers affichables dans un navigateur web  (html, php, …)
  • Lorsque vous lancez un logiciel, votre ordinateur va lire un fichier exécutable.
  • Si vous regardez des photos, il s’agit de fichiers images.
  • Quand vous envoyez une pièce jointe à quelqu’un il s’agit d’un fichier
  • Cela parait évident lorsque vous utilisez des documents bureautiques (traitement de texte, tableur, …)
  • et enfin, tous les composants de l’OS de votre ordinateur sont des fichiers

Après cette petite introduction, intéressons-nous au protocole FTP.

 

Définition de FTP

FTP veut dire « File Transfert Protocol » ou Protocole de transfert de Fichier.

C’est donc un langage qui va permettre l’échange de fichiers entre 2 ordinateurs, et plus exactement entre un serveur et un client.
On parle alors de :

  • serveur FTP
  • client FTP

 

Je vais commencer par vous expliquer le fonctionnement d’un serveur FTP et d’un client FTP, puis plus loin nous regarderons dans quels cas, cela est intéressant.

 

Détail de fonctionnement du FTP

Comme je vous le disais au dessus, il y a 2 intervenants dans un échange FTP : le serveur et le client.

serveur FTP

by Hywards, Stock Image

1) le serveur FTP

Le serveur FTP est un logiciel qui va répondre aux demandes des clients. Lorsque le serveur reçoit une demande, il vérifie les droits et si le client à les droits suffisants, il répond à cette demande sinon la demande est rejetée.

Le serveur FTP passe son temps à attendre. Si les demandes ne sont pas nombreuses, les ressources utilisées par le serveur FTP sont quasi-nulles.

Quelques logiciels serveur FTP :

2) le client FTP

C’est lui qui va être à l’initiative de toutes les transactions.

Il se connecte au serveur FTP, effectue les commandes (récupération ou dépôt de fichiers) puis se déconnecte. Toutes les commandes envoyées et toutes les réponses seront en mode texte. (cela veut dire qu’un humain peut facilement saisir les commandes et lire les réponses).
Le protocole FTP n’est pas sécurisé : les mots de passe sont envoyés sans cryptage entre le client FTP et le serveur FTP. (Le protocole FTPS avec S pour « secure » permet de crypter les données).

Quelques logiciels client FTP :

Pour en savoir plus, vous trouverez ici un article expliquant comment utiliser Filezilla ?

A quoi ça sert FTP ?

Autrefois, il était incontournable d’utiliser FTP pour télécharger des fichiers. Maintenant, avec des connexions plus performantes, la plupart des téléchargement s’effectuent avec le navigateur web, en cliquant sur les liens proposés et les téléchargements démarrent directement. Pourtant dans certains cas encore, il est nécessaire d’utiliser FTP pour télécharger des fichiers.

Autant il est facile de télécharger des fichiers en surfant sur Internet, autant il serait difficile de mettre en ligne des fichiers sans le protocole FTP.

En effet, avec ce protocole, on va pouvoir se connecter aux différents serveurs et pouvoir y copier des fichiers (dans un sens ou dans un autre). Il est ainsi possible de sauvegarder ou d’envoyer des fichiers sur des serveurs distants sans passer par le web (je vous rappelle que web et internet, ce n’est pas pareil : Comment ça marche Internet : Internet et web : c’est pareil ? )

Quand le client envoie un fichier vers le serveur : on parle de « upload », quand le client télécharge un fichier : on parle de « download ». (on retrouve cette notion d’upload et de download, lorsque vous faites de débit en ligne : il vous est affiché le débit de votre connexion Internet dans les 2 sens, et comme vous le savez peut être, ce débit n’est pas égal dans les sens).

Prenons le site culture-informatique.net, je me sers du protocole FTP pour :

  • sauvegarder l’ensemble du site vers mon ordinateur (pas seulement les pages que vous pouvez voir, mais tous les fichiers qui composent le site : pages, images, bases de données)
  • copier des fichiers vers le site :
    • les fichiers à télécharger par exemple;
    • les fichiers que je dois modifier à la main : feuille de style, fichiers de paramètres, …
Voici ce que je vois lorsque je suis connecté au site « Culture-Informatique.net » en FTP.
serveur FTP
On peut constater que j’ai accès à l’ensemble des fichiers composant le site :
  • ici est affiché, le détail du répertoire distant nommé: « download »

Dans ce répertoire, avec le serveur FTP, je vais pouvoir copier des fichiers, les supprimer, ou les effacer.

A partir du Web et de votre navigateur, tout ce que vous pourrez faire, c’est de les télécharger et en aucun cas vous ne pourrez les modifier.

Une utilisation possible : l’échange de fichiers

Vous pouvez également vous servir des services FTP pour échanger des fichiers avec des personnes ou des entreprises.

En effet, la taille des mails étant limité (bien souvent inférieure à 20Mo), il est compliqué d’envoyer des gros fichiers vers quelqu’un d’autre.
Alors pourquoi ne pas utiliser les services FTP pour échanger :

  • il suffit de déposer un fichier sur un serveur FTP
  • et donner un identifiant et un mot de passe à la personne devant récupérer les fichiers.

Si vous ne disposez pas d’un serveur FTP, vous pouvez utiliser le « service d’envoi de gros fichiers »  de free que vous trouverez à l’adresse suivante : http://dl.free.fr/upload.html.

 

 

A vous de jouer

Je vous propose d’essayer de regarder comment cela fonctionne.
Pour cela, téléchargez un client FTP. (comme par exemple : FileZilla que vous trouverez ici : FileZilla_3.9.0.6_win32-setup.exe : Les téléchargements proposés sur ce site sont garantis sans virus et autres saloperies)

Installez-le. Puis dans la partie connexion rapide, tapez les paramètres suivants :

serveur FTP

puis faites connexion rapide : vous serez connecté sur un serveur FTP de free.fr

Sur ce serveur, vous allez pouvoir naviguer dans les répertoires, et télécharger des fichiers.
Attention, avec le compte « anonymous » vous n’avez aucun droit en écriture. Donc vous n’avez ni les droits pour copier des fichiers de votre ordinateur vers le serveur,et ni de supprimer des fichiers.
(pour votre information, le compte « anonymous » est utilisable sur un bon nombre de serveur FTP)

 

Un peu de technique

Pour être un peu plus complet sur le protocole FTP, il faut que je revienne sur 2 points que j’ai juste abordé au-dessus sans entrer dans le détail.

Je vous ai dit  que le client se connectait au serveur, envoyait ou recevait des fichiers. Comme vous le savez sans doute, pour que tout cela fonctionne, il faut utiliser un port. (C’est quoi service, port, protocole ?). Et bien pour le protocole FTP on va utiliser 2 ports : un port pour les commandes, un port pour le transport des fichiers.

  • le port 21 : pour envoyer les commandes et recevoir les réponses du serveur
  • le port 20 : pour envoyer ou recevoir les fichiers.

Mode actif / passif

Je viens juste de vous dire que les ports utilisés pour le FTP sont le 21 et le 20, mais c’est partiellement vrai.

Dans quelques cas particuliers, le port 20 ne peut pas être utilisé, il faut donc utiliser des ports hauts (de 1024 à 65635).

En effet, lorsque le client se trouve derrière un équipement type firewall, et que celui-ci fait du NAT (je vous expliquerai un jour ce que c’est que cette bête), les données ne peuvent plus transiter par le port 20. Le serveur va alors indiquer au client le port à utiliser (ce port sera compris entre 1024 et 65635), et le client viendra récupérer les données avec le port donné par le serveur.

Attention : j’ai lu des âneries sur certains sites (je pense que l’un a écrit des âneries et que les autres ont copié) mais ce n’est pas le client qui décide d’utiliser le port 20 : c’est le port standard par défaut!

Ce qu’il faut retenir :

  • les clients modernes (tels que Filezilla) ont un mode « automatique », qui détermine lui-même quel mode utiliser.
  • si votre client n’a pas de mode automatique, et si votre connexion ne fonctionne pas : essayez de  vous connecter en basculant votre connexion dans un mode, puis dans l’autre : vous finirez par trouver le mode qui vous convient.

Mode binaire

Par défaut, les données échangées circulent en mode texte (ASCII).

l’ASCII est une vieille norme de codage encore utilisée pour coder les caractères : en gros chaque caractère à un code, exemple « A » a pour code 65, « B » : 66, etc. 
Retenez que l’ASCII est utilisé pour tout ce qui est fichiers Texte

Donc pour échanger des fichiers texte, pas de problème mais pour échanger des fichiers binaires, il va y avoir un problème car il ne sont pas codés de la même façon. (les fichiers binaires sont des fichiers exécutables, fichiers compressés, …) : il faudra donc passer le mode d’échange de fichier en mode binaire.

Comme pour le mode actif/passif, les clients modernes détectent automatiquement le type de données qui circulent et basculent automatiquement le mode Ascii/binaire en fonction des données. Mais vous pouvez éventuellement forcer ce mode si vous le souhaitez.

 

 

Pour compléter et que vous compreniez mieux, vous pouvez jeter un oeil ici à ces 2 articles complémentaires. Sur le 1er article, je vous montre comment fonctionne les droits attribués aux utilisateurs qui se connectent. Sur le 2ème article, vous pourrez voir comment fonctionne en détail la connexion à un serveur FTP.

– 3 petits exemples pour comprendre …
– utilisation de ftp en mode texte.

Et enfin, suite à un grand nombre de demande, je vous explique ici : comment ça marche Filezilla client ?

 

Comme d’habitude, tous les commentaires sont les bienvenus.

N’hésitez pas à vous inscrire à la lettre d’information pour être informé de la parution de nouveaux articles. (vous trouverez la zone d’inscription à la lettre d’information sur la droite de l’écran).

Vous aimez ? Dites-le ...

59 thoughts on “C’est quoi un serveur FTP ?

  1. Répondre Nabilla Nov 23,2014 10 h 21 min

    Très bien expliqué : comme d’habitude

  2. Répondre M.Grey Nov 24,2014 11 h 06 min

    une bonne explication

  3. Répondre Sophie47 Nov 25,2014 23 h 39 min

    enfin un bon article sur le sujet

  4. Répondre Gérald Ducep Nov 26,2014 7 h 53 min

    J’avais entendu parlé du serveur FTP. J’avais en gros une idée de son utilité, mais là c’est bien expliqué

  5. Répondre momo la bavure Nov 27,2014 8 h 35 min

    si j’avai eu un prof comme vous, je pense que j’aurais un peu mieu étudier

  6. Répondre j.h Nov 30,2014 8 h 40 min

    Bien exepliqué. Merci pour cet article.
    si j’ai bien compris, si je veut faire un site internet, je suis obligé d’utilisé FTP ?

    • Répondre Administrateur du site Nov 30,2014 8 h 58 min

      non, car les outils modernes (tels que wordpress) permettrent de poster directement des articles sur Internet et de charger les images. Mais pour mettre en ligne des fichiers plus spécifiques : oui il faudra utiliser un serveur FTP.

  7. Répondre Poter (Harry) Déc 1,2014 20 h 33 min

    Merci pour cette explication très claire

  8. Répondre Antoine.E Déc 2,2014 23 h 10 min

    C’est quoi un serveur ftp

  9. Répondre Aline Ruchaud Déc 4,2014 8 h 15 min

    Bien vu ton explication sur les serveurs ftp

  10. Répondre max Déc 10,2014 7 h 23 min

    est-ce que vous avez une liste de serveur ftp gratuit

  11. Répondre André Déc 14,2014 20 h 58 min

    merci pour ces explications c tres clair

  12. Répondre Mimy Jan 10,2015 12 h 02 min

    Bonjour
    Est ce que l’appellation FTP serveur a un rapport avec les câbles informatiques FTP et UTP ?

    MERCI

    • Répondre Administrateur du site Jan 10,2015 12 h 55 min

      Non rien à voir, il s’agit de catégories de câbles différents (FTP : est un câble blindé, UTP n’est pas blindé).

  13. Répondre Yann deo Avr 1,2015 13 h 11 min

    Salut je viens de decouvrir le site.et dejà 3 sujet de digérer.j’en apprends tellement.sinon..
    a quel niveau se situe ,la difference entre un FTP server online comme celui de free et un serveur cloud de stockage de donnée??pleaasse.
    De plus un sujet sur le cluster et server dapplication serait fort utile.mercciiiiii

    • Répondre Administrateur du site Avr 1,2015 18 h 43 min

      Bonjour Yann,
      la différence est que le serveur FTP de Free, est un serveur FTP : vous ne pouvez y accéder que pour faire du FTP et je ne sais pas s’il fait autre chose.
      Un serveur dans le cloud stockage de données peut être un serveur FTP, mais pourrait très bien autre chose. FTP n’est que la méthode (si je peux m’exprimer ainsi) pour stocker les données.

      Ok, j’ai noté que j’ai 2 articles à faire pour expliquer la notion de cluster et le principe des serveurs d’applications.
      A bientôt

  14. Répondre Freenaute Mai 8,2015 0 h 22 min

    Bonjour, je poste rarement des commentaires mais là j’ai jugé nécessaire de le faire. Je voulais vous féliciter pour cet article, il permet de tout comprendre c’est très bien expliqué ! Bravo à vous 🙂

  15. Répondre benji Juil 10,2015 15 h 00 min

    slt j’aimerais savoir svp l’explication du piratage de serveur avec le cmd il y a plusieurs tutoriel la dessus mais aucun d’eux explique son fonctionnement mercie

    • Répondre Administrateur du site Juil 10,2015 22 h 16 min

      Je suis désolé, mais avec le cmd, je peux essayer de me connecter en telnet pour voir si les ports sont bien ouverts. De là, à pirater un serveur !

  16. Répondre Daniela Août 28,2015 19 h 19 min

    Bonjour,
    J’ai lu l’article, j’ai(un peu)compris, mais je reste à ne pas savoir quoi faire. J’ai justement besoin d’utiliser FileZilla que j’ai chargé, ouvert, et dont on m’a expliqué comment faire pour une tâche spécifique à appliquer ensuite (télécharger vers un blog). Mais… ça commence mal.
    Et je ne comprends pas l’aide en anglais du logiciel.
    Première case : Hôte ?
    On me parle de http:// Bon. Mais qui est-ce dans mon cas ? Vous donnez un exemple avec Free. Mais je n’ai aucun contact avec ce serveur.
    (PC/MozillaF./Ws7) Alors qui puis-je désigner comme « hôte » ?
    Merci

  17. Répondre Daniela Août 28,2015 19 h 57 min

    J’ai bien lu les « 3 petits exemples » (merci, intéressant pour mieux comprendre ftp ) mais sans trouver la réponse à mon interrogation.

    • Répondre Administrateur du site Août 28,2015 22 h 54 min

      Vous êtes plusieurs à me demander comment fonctionne Filezilla.
      Je viens de commencer à faire un petit article pour expliquer tout ça.
      A bientôt.

  18. Répondre Daniela Août 29,2015 8 h 41 min

    Merci,
    A TRES bientôt…

  19. Répondre tonkiss Oct 9,2015 12 h 34 min

    Bonjour
    j’ai lu ton article avec beaucoup de passion car j’étais trop confus dans la tête avec cette histoire de ftp.
    mon désir est de déployer un serveur ftp dans un réseau local peux-tu me donner un coup de pouce?
    encore merci pour ton article.

    • Répondre Administrateur du site Oct 9,2015 21 h 33 min

      Quand j’aurais un peu de temps, je vais faire un petit tuto pour expliquer tout ça.
      Ce n’est pas très compliqué avec Filezilla server.
      A bientôt.

  20. Répondre Medo Fév 16,2016 13 h 37 min

    salut j’aimerais savoir tu as déjà essayé de mettre un serveur ftp et ADDS??
    sur le net le ftp est toujours installé sur ADDS donc je me demande si on peut les installer sur des serveurs indépendant??
    Merci d’avance

    • Répondre Administrateur du site Fév 17,2016 6 h 54 min

      Bonjour,
      bien sûr qu’on peut installer des serveurs FTP sans installer l’AD. On peut utiliser par exemple Filezilla Server qui est un très bon serveur FTP.
      A bientôt

  21. Répondre niaaheenm4 Mar 13,2016 2 h 31 min

    On peut avoir 2 serveurs en même temps? genre FTP et web

    • Répondre Administrateur du site Mar 13,2016 4 h 23 min

      Bonjour,
      oui bien sûr. Et d’ailleurs on retrouve très souvent un service FTP sur un serveur WEB. Le serveur FTP permettant de mettre à jour le serveur WEB.
      Mais cela n’est pas limité à 2 serveurs, on peut retrouver plusieurs serveurs (services : FTP, WEB, base de données, application, …). Du moment que ces serveurs n’utilisent pas le même port et soient compatibles entre eux.
      A bientôt

  22. Répondre Pat Mar 20,2016 9 h 15 min

    Bonjour,super article.
    Quel solution auriez-vous pour transférer et sauvegarder 24h le flux vidéo d’une caméra IP?

    • Répondre Administrateur du site Mar 20,2016 21 h 24 min

      Bonsoir Pat,
      si c’est pour stocker un fichier d’une vidéo finie, alors on peut l’envoyer par FTP.
      A bientôt

  23. Répondre AntoineVeBe Mai 5,2016 17 h 40 min

    Bonjour,

    Pouvez-vous me dire comment sauvegarder l’entièreté de l’un de mes sites grâce à un FTP?

    Merci!

    • Répondre Administrateur du site Mai 7,2016 4 h 44 min

      Bonjour Antoine,
      pour sauvegarder l’ensemble de ton site : il faut que tu te connectes au serveur FTP et que tu copies tous fichiers sur ton ordinateur. (en sélectionnant la racine du site et par un glisser/copier).
      Attention toutefois, s’il s’agit d’un site sous wordpress ou autre CMS, il faudra aussi sauvegarder la base de données et cela ne se fait pas FTP. La sauvegarde se fera via l’interface d’admin du site.
      A bientôt

  24. Répondre Momo Juin 5,2016 21 h 29 min

    Bonjour ,

    JE vous remercie par cette magnifique explication , j’avais vraiment besoin de ça pour comprendre le principe de ftp , ses application et son principe de fonctionnement.

    Si possible , vous pourriez faire aussi un cours , sur WebDAV, BitTorrent ,( des services de transfert de fichiers , ).

    • Répondre Administrateur du site Juin 6,2016 6 h 39 min

      OK, je note ta demande dans un coin et je fais un article dessus dès que j’ai un peu de temps.
      A bientôt

  25. Répondre elzo Juil 1,2016 21 h 24 min

    Peut-on créer un site web sous word presse sans avoir besoin d’un serveur ftp?

    • Répondre Administrateur du site Juil 2,2016 21 h 09 min

      Oui, bien sûr : c’est même le plus simple.
      Par contre, si on veut gérer « à la main » le contenu , alors il faudra utiliser un client FTP.
      A bientôt

  26. Répondre elzo Juil 3,2016 21 h 16 min

    ut Ok je comprends,mais je souhaiterais recevoir des cours à distance pour tout ce qui est création site web les réglages, l’optimisation, le référencement vers les moteurs de recherche. Si c’est possible je peux payer. mais des cours à distances. Je suis du Sénégal Afrique ouest.

    • Répondre Administrateur du site Juil 5,2016 5 h 45 min

      Elzo,
      je pense que tu dois pouvoir trouver de telles formations en ligne. J’ai des notions, mais ce n’est pas ma spécialité.
      A bientôt.

  27. Répondre elzo Juil 5,2016 22 h 16 min

    Merci, je suis entrain de créer mon site web avec wordpress, en cas de besoin permettez-moi de vous conacter?

    • Répondre Administrateur du site Juil 6,2016 21 h 53 min

      Oui, je veux bien t’aider un peu.
      La seule condition, c’est que toutes les questions soient posées dans le forum : comme ça tout le monde pourra utiliser les réponses et éventuellement répondre aux questions.
      A bientôt.

  28. Répondre Jean Marc DY Août 6,2016 19 h 35 min

    Peut on se connecter à un serveur ftp sans avoir une connection internet.. Dans un réseau loca par exemple

  29. Répondre Mbungu Michel Nov 7,2016 21 h 26 min

    bonjour!!!!!
    j’ai compris et j’ai eu à prendre une bonne note mais ma simple question est de savoir est-ce qu’avec le serveur FTP on veut s »envoyer n’importe quel genre de fichier, que ça soit un fichier audio par exemple, video ect…
    en plus une fois le serveur FTP crée, comment peut-on le gerer dans une entreprise merci administrateur du site à vouz de jouer

    • Répondre Administrateur du site Nov 8,2016 4 h 17 min

      Bonjour Michel,
      oui, on peut déposer tout type de fichier sur un serveur FTP.
      Un serveur FTP est très simple à gérer une fois que les utilisateurs et leurs droits sont créés, on vérifie l’espace disque restant et son bon fonctionnement : c’est tout.
      A bientôt

  30. Répondre Michel mbungu Nov 8,2016 21 h 32 min

    bjr on programme un serveur pcq vous avais dit que c’est un logiciel

    • Répondre Administrateur du site Nov 10,2016 3 h 02 min

      Bonjour,
      un serveur est toujours composé d’une partie logicielle qui s’appuie sur une partie physique.
      A bientôt

  31. Répondre Michel mbungu Nov 8,2016 21 h 34 min

    quelle méthode on utilise pour programme c’est-à-dire quel navigation, c du HTML ?

    • Répondre Administrateur du site Nov 10,2016 3 h 03 min

      pour développer un serveur, il existe de nombreux langages de développement, tels que le C, Delphi, …
      Mais pas le HTML qui est une norme pour coder des pages lisible par un navigateur Internet
      A bientôt

  32. Répondre Michel mbungu Nov 8,2016 21 h 52 min

    c quoi le but principal du serveur FTP dans une entreprise ? j vais un peu avoir une explication claire sur ça

  33. Répondre Nicolas Nov 9,2016 15 h 05 min

    Bonjour,

    Déjà je voulais vous remercier pour votre article. Il faut le dire quand c’est bien !
    Je compte me lancer dans la création d’un serveur et d’un client FTP juste pour gagner en connaissance sur ce sujet.
    Et je me demandais si il était possible que l’OS du serveur puisse être différent de l’OS du client.
    Je compte commencer par un serveur dédié virtuel tournant sur FreeBSD et le client un ordinateur(Windows7/ubuntu) ou un smartphone(Android).
    Pour moi je dirais qu’il n’y a pas de lien direct entre les different OS du serveur et des clients donc cela reste possible.
    Merci

    • Répondre Administrateur du site Nov 10,2016 3 h 06 min

      Bonjour Nicolas,
      bien sûr que le serveur et le client peuvent être sur des OS différents. C’est d’ailleurs le rôle de ces protocoles Internet tels que FTP d’être compatibles quelque soit l’OS.
      Et si tu as des problèmes de création de ton serveur, n’hésite pas à poser des questions sur le forum.
      A bientôt

Laisser une réponse