Vous êtes sur la page 1sur 12

File Transfer

Protocole :
Le but du mini-projet est d’effectuer la configuration du
serveur FTP, afin de permettre le transfert de fichier à
partir du poste serveur vers des postes clients.FTP, ou
File Transfer Protocol (protocole de transfert de fichiers),
est un protocole de communication. Dans les réseaux
informatiques et les télécommunications, un protocole
de communication est une spécification de plusieurs
règles pour un type de communication particulier.
Atmani Amal
Benabdallah Mohammed
Koulali Sara
Ecole Nationale des
Sciences Appliquées
d’Oujda

14/05/2009
FTP : File Transfer Protocole

Partie 1 : GENERALITE :
I. FTP : File Transfer Protocole :
FTP est destiné à l'échange informatique de fichiers sur un réseau TCP/IP.
Il permet, depuis un ordinateur, de copier des fichiers vers un autre ordinateur
du réseau, d'administrer un site web, ou encore de supprimer ou de modifier
des fichiers sur cet ordinateur. Ceci s’effectue par Internet ou par le biais d'un
réseau informatique local (intranet)

La variante de FTP protégée par les protocoles SSL (Secure Socket Layer) ou
TLS (Transport Layer Security), SSL étant le prédécesseur de TLS, s'appelle FTPS.
SSL et TLS sont un protocole de sécurisation des échanges sur Internet.

FTP obéit à un modèle client-serveur, c'est-à-dire qu'une des deux


parties, le client, envoie des requêtes auxquelles réagit l'autre, appelé serveur.
En pratique, le serveur est un ordinateur sur lequel fonctionne un logiciel lui-
même appelé serveur FTP, qui rend public une arborescence de fichiers
similaire à un système de fichiers Unix. Pour accéder à un serveur FTP, on
utilise un logiciel client FTP (possédant une interface graphique ou en ligne de
commande).

II. FTP : Modes d’utilisation :


Le protocole, qui appartient à la couche session du modèle OSI et à la
couche application du modèle ARPA, utilise une connexion TCP. Il peut s'utiliser
de deux façons différentes :

• Mode actif: c'est le client FTP qui détermine le port de connexion à


utiliser pour permettre le transfert des données. Ainsi, pour que
l'échange des données puisse se faire, le serveur FTP initialisera la
connexion de son port de données (port 20) vers le port spécifié par
le client. Le client devra alors configurer son pare-feu pour autoriser
les nouvelles connexions entrantes afin que l'échange des données se
fasse. De plus, il peut s'avérer problématique pour les utilisateurs
essayant d'accéder à des serveurs FTP lorsqu'ils sont derrière une
passerelle NAT. Étant donnée la façon dont fonctionne le NAT, le
serveur FTP lance la connexion de données en se connectant à
l'adresse externe de la passerelle NAT sur le port choisi. Certaines

Atmani Amal, Benabdallah Mohammed, Koulali Sara

2
FTP : File Transfer Protocole

passerelles NAT n'ayant pas de correspondance pour le paquet reçu


dans la table d'état, le paquet sera ignoré et ne sera pas délivré au
client.

• Mode passif : le serveur FTP détermine lui-même le port de


connexion à utiliser pour permettre le transfert des données (data
connexion) et le communique au client. En cas de présence d'un pare-
feu devant le serveur, celui-ci devra être configuré pour autoriser la
connexion de données. L'avantage de ce mode, est que le serveur FTP
n'initialise aucune connexion. Ce mode fonctionne sans problèmes
avec une passerelle NAT. Dans les nouvelles implémentations, le
client initialise et communique directement par le port 21 du serveur;
cela permet de simplifier les configurations des pare-feu serveurs.

III. FTP : Les logiciels :


Le port par défaut et le plus souvent utilisé, lors de la connexion à
un serveur FTP, est le port 21. On trouve de nombreux serveurs FTP pour
Linux/Unix/BSD comme :

• ProFTPd,
• Pure-FTPd,
• VsFTPd.

Sous Windows, on trouve :

• FileZilla Server,
• Pure-FTPd,

D’un autre côté, Il existe de nombreux clients en ligne de commande,


comme ftp, Wget, CURL en téléchargement ou Wput pour déposer des fichiers.

La plupart des logiciels possèdent désormais une interface graphique


permettant de mettre en place un serveur FTP ou de se connecter à celui-ci
pour y copier des données (client FTP). Certains logiciels tels que CuteFTP
(Windows) sont payants ; d'autres, tels que FileZilla (multiplate-forme),
KamzyFTP (Windows), Cyberduck (MacOSX) ou gftp (Linux) sont gratuits et
libres. On peut également citer FTP explorer (Shareware pour Windows), aussi
pratique à utiliser que l'explorateur de fichiers, ou encore FireFTP, extension

Atmani Amal, Benabdallah Mohammed, Koulali Sara

3
FTP : File Transfer Protocole

pour Firefox. Pour des utilisations plus poussées (commandes spéciales etc.) un
logiciel tel que FlashFXP (payant) peut être intéressant.

IV. FTP : Diagramme des flux :

V. FTP : Principe
incipe de base :
Le client ouvre une session FTP sur un serveur. Un serveur FTP requiert
une identification du client. Il existe souvent un compte "anonyme", qui donne
accès en lecture seule dans la partie publique du serveur, mais il existe
également des parties privées où les clients disposant d'un compte peuvent
accéder en écriture sur certains répertoires de l'arborescence.

Entre serveur et utilisateur FTP


Atmani Amal, Benabdallah Mohammed, Koulali Sara

4
FTP : File Transfer Protocole

Le client FTP, par l'intermédiaire de l'interface utilisateur, va cacher les


diverses commandes du protocole FTP par des manipulations plus conviviales,
en proposant à l'utilisateur une vision des choses similaire à un gestionnaire de
fichiers. Avec des clicks et des "glisser/déposer" l'utilisateur exploitera FTP sans
en connaître la multitude de commandes. Mais sachez qu'avec beaucoup de
courage et de connaissance du protocole, vous pourriez utiliser Telnet pour
faire du FTP.

Atmani Amal, Benabdallah Mohammed, Koulali Sara

5
FTP : File Transfer Protocole

Partie 2 : PRATIQUE :
Le serveur FTP qu’on a choisi d’utiliser est : VsFTPd.

VsFTPd, ou Very secure FTPd est un serveur FTP conçu avec la


problématique d'une sécurité maximale. Contrairement aux autres serveurs
FTP (ProFTPd, PureFTPd, etc.), aucune faille de sécurité n'a jamais été décelée
dans VsFTPd. Ce serveur est notamment utilisé à grande échelle par des
entreprises telles que Red-Hat.

I. FTP : Installation :
L’installation du paquet VsFTPd se fait en appliquant la commande

apt-get install vsftpd

II. FTP: Configuration:


Pour configurer le serveur FTP on édite le fichier : /etc/vsftpd.conf. Ce
fichier contient les instructions qui permettent le bon fonctionnement du
serveur.

Pour permettre aux utilisateurs locaux (ceux qui ont un compte sur la
machine) de se connecter au serveur et d'écrire, on utilise :

local_enable=YES
write_enable=YES

Pour permettre la configuration du chmod par défaut que prendront les


fichiers et les dossiers, on utilise :

local_umask=077

Il est possible de personnaliser le texte de connexion au serveur en


initialisant la variable : ftpd_banner

Et pour empêcher la connexion d’utilisateur anonyme au serveur, on


initialise la variable anonymous_enable à NO.

Atmani Amal, Benabdallah Mohammed, Koulali Sara

6
FTP : File Transfer Protocole

Ceci parmi d’autres.

III. FTP : Utilisateur :


L’utilisation d’un serveur ftp nécessite bien évidemment l’existence
d’utilisateurs. Ces derniers peuvent être créés par trois méthodes : des
comptes LDAP, en utilisant une base de données ou bien par ligne de
commande.
On a choisi de créer des utilisateurs en utilisant la ligne de commande :
adduser <intitulé_compte>
Tout en spécifiant après le mot d passe du compte.

IV. FTP : Connexion au serveur :


1. Sous Linux :

Un serveur client existe déjà sur la machine. Pour se connecté au


serveur il suffit d’exécuter la commande :
ftp <adresse ip serveur>

Il est possible de se connecter en mode actif, et ce en spécifiant le


port de connexion après l’adresse ip du serveur, ou passif, et ce en laissant le
serveur spécifier le port de connexion. Ensuite, il fait s’identifier pour accéder
au serveur.
Pour visualiser l’ensemble des commandes disponibles, et connaître
l’utilité de chacune, on utilise help.

2. Sous Windows :

Nous avons choisi d’installer « FileZilla_3.2.4.1_win32-


setup.exe » comme client Windows.

Atmani Amal, Benabdallah Mohammed, Koulali Sara

7
FTP : File Transfer Protocole

1-Hôte : Entrez ici l'adresse du serveur ftp à laquelle vous souhaitez vous
connecter. N'entrez le protocole que s'il s'agit d'un serveur SFTP.
2-Identifiant : A entrer si besoin
3-Mot de passe : A entrer si besoin
4-Port : Par défaut, 21 pour FTP et 22 pour SFTP

1-Menu/Barre d'outils/Connexion rapide :

Différentes options proposées par FileZilla. Nous verrons plus en détail


la partie du menu Edition / Configuration.

2-Journal des messages :

Atmani Amal, Benabdallah Mohammed, Koulali Sara

8
FTP : File Transfer Protocole

C'est la liste des échanges entre le serveur FTP et FileZilla.

3-Affichage du site en local :

Vous pouvez ici explorer le contenu de votre site local. Celui-ci se


présente quasiment comme le site distant.

4-Affichage du site distant :

Vous pouvez ici explorer le contenu de votre site distant. Vous pouvez
télécharger les fichiers depuis le site distant.
Un menu contextuel vous permet de télécharger les fichiers depuis le
serveur ou les placer en file d'attente

5-File d'attente :

Liste des fichiers ou dossiers présents dans la file d'attente quand


l'envoi comporte plus d'une entité.

- FileZilla : Configuration :
Il est possible d'optimiser FileZilla en le configurant à ses besoins.
Pour le configurer, allez dans Edition / Configuration. Vous obtenez cet écran :

Atmani Amal, Benabdallah Mohammed, Koulali Sara

9
FTP : File Transfer Protocole

Vous pouvez définir le type de transfert de fichier par défaut (Auto, ASCII
ou Binaire)

Atmani Amal, Benabdallah Mohammed, Koulali Sara

10
FTP : File Transfer Protocole

Le plus simple est de laisser Automatique par défaut. Il passera en ASCII


pour les types de fichiers de la liste du bas. Vous pouvez modifier cette liste.

Atmani Amal, Benabdallah Mohammed, Koulali Sara

11
FTP : File Transfer Protocole

WEBLIOGRAPHIE :

• http://www.google.fr/

• http://fr.wikipedia.org/wiki/File_Transfer_Protocol

• http://www.commentcamarche.net/contents/internet/ftp.php3

• http://doc.ubuntu-fr.org/

• http://www.businessdecision-interactive.com/754-protocole-de-
transfert-de-fichier-ou-ftp.htm

• http://stielec.ac-aix-marseille.fr/cours/caleca/ftp/index.htm

• http://doc.fedora-
fr.org/wiki/Vsftpd_:_Installation_et_configuration#Base_berkeley

• www.developpez.com

Atmani Amal, Benabdallah Mohammed, Koulali Sara

12