FTP – Principes de base

LEÇON

 

Qu'est-ce que FTP ?

 

FTP est un protocole pour transférer des fichiers entre des machines. Les machines ne sont pas obligée d'être sur le même réseau local. Elles peuvent être géographiquement distantes.

Un dialogue FTP est un dialogue entre un client FTP et un serveur FTP. Souvent ce dialogue passe par Internet.

Les fichiers peuvent être transférés dans les deux sens (client vers serveur ou serveur vers client). La différence entre client et serveur est que le serveur est typiquement toujours en écoute. Et c'est le côté client qui dirige les opérations.

Le serveur peut être configuré avec des règles de sécurité vis-à-vis la possibilité de voir/modifier les fichiers et répertoires sur la machine serveur.

Souvent on fait tourner un serveur FTP sur la machine qui fait également le rôle du serveur web pour pouvoir réceptionner les fichiers d'un site lors d'une mise en production / mise à jour.

Le port FTP par défaut est le 21.

 

Architecture typique

ftp_diagrammeDans ce diagramme, lorsque le développeur veut mettre un site en place sur un serveur distant :

  • Les fichiers pour le site web sont préparés sur la machine locale du développeur
  • Le développeur lance un logiciel client FTP (par exemple Filezilla Client)
  • Il établi une connexion (via URL du serveur, port, identifiant, mot de passe) avec le serveur FTP qui tourne sur la machine où il veut installer son site
  • Il choisit son répertoire de destination (parmi ce qui est proposé par le serveur vis-à-vis les restrictions de sécurité en place)
  • Il "pousse" les fichiers vers le serveur puis ferme la connexion
  • Plus tard, un internaute qui visite le site demande une de ses pages
  • C'est le serveur web (par exemple Apache), ayant accès aux mêmes dossiers, qui sert la page