Aller au menu - Aller au contenu

Icône Créer un serveur FTP sous Windows

Avatar
Mise à jour : 10/12/2008
Difficulté : Facile Facile Creative Commons BY-NC
908 visites depuis 7 jours, classé 139/786
Bienvenue dans mon tuto. Je serai votre guide tout au long de cette nouvelle aventure : je peux vous garantir qu'après avoir lu et compris ce tuto, vous serez en mesure de créer votre propre serveur FTP sous Windows ;)
Préparez-vous à la torture, on commence !

Si un mot n'est pas clair, revoyez la sous-partie Vocabulaire.


Ne vous fiez pas à l'apparence du tuto, j'ai fait mon maximum pour tout expliquer, un serveur FTP est très complexe. Ici, je vais vous parler de tout mais en gros, je ne vais pas m'étendre ; je vous conseille de lire ce tuto petit à petit pour garder les idées claires (mais n'ayez pas peur, vous pourrez maîtriser le FTP une fois le principe compris).

FTP, c'est puissant

Mais c'est quoi, FTP ?

Oui, je sais, encore un mot très bizarre ! je vous explique.
FTP est l'abréviation de File Transfer Protocol (Protocole de Transfert de Données) ; ce protocole est fait pour le transfert de données entre un client et un serveur.
C'est qui ces deux-là, client et serveur ?

Une Illustration vaudra mieux pour vous mettre sur la bonne fréquence ;) :

Image utilisateur


Dans cette image (ou ce schéma), supposons que vous êtes le client ; vous, par rapport au serveur, quand vous envoyez des données, on dit que vous êtes en train d'uploader ; quand vous recevez des données, on dit que vous êtes en train de downloader.
Par rapport à un serveur, c'est la même chose quand il vous envoie des données, il uploade quand il reçoit des données, il downloade (si vous n'avez pas compris, relisez ce paragraphe, c'est fondamental).
Si vous voulez en savoir plus au sujet des serveurs et des clients, j'ai créé une sous-partie appelée Vocabulaire. ;)

Il est impossible de transférer des données depuis un serveur vers un autre serveur ?

C'est possible, mais je ne vais pas en parler dans ce tuto.

Ici, nous avons parlé des transferts entre le client et le serveur. La sous-partie suivante va parler de ce qui se passe entre eux.

Fonctionnement

Et comment ça marche ?

Commençons par le zér0 :) .

  • Connexion au serveur via l'adresse ;
  • le serveur demande le login et le mot de passe du client ;
  • après avoir entré vos coordonnées, le serveur les vérifie ;
  • si votre login et votre mot de passe sont valides, il accepte la connexion ;
  • vous pouvez transférer des fichiers.

Je n'ai pas voulu trop détailler, ce n'est pas la peine, ça ne ferait que vous embrouiller ;) .

Comme vous le savez, notre serveur est sur Internet mais s'il n'est pas sur le port par défaut, vous ne pourrez pas y accéder.

Quoi ? Mais j'ai écrit la bonne adresse, pourquoi je ne peux pas accéder au serveur ?

Eh oui, c'est la dure loi de l'informatique :p (non, je rigole), vous ne pouvez pas accéder au serveur parce que vous n'avez pas écrit quel port utiliser ; un serveur est par défaut sur le port 21, mais s'il est par exemple sur le port 55, qu'allez-vous faire ? Votre navigateur ne va pas savoir où il est, lui.

Et c'est quoi, un port ?

Supposons que vous allez chez un ami, qui vous a donné l'adresse de sa maison "Rue de la liberté" mais vous n'en connaissez pas le numéro : quelle maison choisir ? C'est impossible de savoir o_O (ici, nous supposons que la rue est l'adresse, et le numéro de la maison est le port).
Choisissons l'inverse : vous allez chez votre ami, il vous donne le numéro de sa maison, "244", mais pas la rue ; vous pourrez trouver des maisons qui ont le numéro "244", mais quelle est la bonne (ici, nous supposons que la rue est le port et le numéro de la maison est l'adresse) ?

Eh bien avec Internet, c'est le même principe :D : des milliers d'adresses peuvent être sur différents ports mais une seule correspond à votre besoin.

Que faire ?

Facile, on écrit l'adresse, deux points et le numéro du port.
Exemple : ftp://www.siteftp.com:55/.
Et voilà, le tour est joué :D .

Actuce



On peut taper une adresse FTP, le port du serveur, le login et le mot de passe, tout ça sans passer par des dialogues, mais seulement en écrivant l'adresse du serveur ;) .
Pour ce faire, on écrit le nom d'utilisateur, puis ":" le mot de passe suivi de "@" l'adresse du serveur et enfin ":" du port.

Citation : Barre d'adresse
ftp://nom_d'utilisateur:mot_de_passe@adresse_du_serveur:port


Ici, nous avons parlé de tout ce qui se passe chez le client et le serveur.

Une autre info : si vous voulez connaître en détail ce que fait le client, voici un tuto qui vous explique tout de façon précise (il faut dire que moi, je vous parle de tout, mais avec une vision générale, je ne dois pas m'étendre trop ;) ...). Par ici.

Transfert

Une fois connecté, notre client va transférer des fichiers (ou des données), mais ce n'est pas aussi facile que vous le croyez.

Le mode actif



Avec ce mode, le client choisit le port à utiliser. Il change la configuration de son pare-feu pour qu'il autorise les connexions entrantes. Mais ce type de connexion n'est pas très sécurisé ; aussi, des données risqueront de se perdre avec ce type de transfert si vous êtes derrière une passerelle NAT.

Le mode passif



Dans ce mode, le serveur détermine lui-même son port de connexion pour le transfert de données ; le serveur est globalement derrière un pare-feu et le pare-feu est configuré pour autoriser les connexions sur le port défini par le serveur.

Le mode SSL/TLS



Ce mode de transfert est crypté, les données transférées entre votre ordinateur et le serveur sont donc chiffrées ; par conséquent, personne ne peut savoir ce que vous transférez. Mais on ne va pas l'utiliser (vous n'avez pas d'informations confidentielles de l'armée à transférer ? :p ).

Autre chose : dans ces trois modes, quand le client est connecté sur le serveur FTP, il est limité par un temps appelé TIMEOUT (temps d'expiration) : si pendant cette période le client n'est pas actif, il est automatiquement déconnecté du serveur.


Et nous, on va utiliser quel mode ?

Le mode passif bien sûr, parce que :

  • vous devez avoir avez un pare-feu ;
  • ce mode nous garantit un transfert plus fiable ;
  • vous allez définir vous-mêmes le port de connexion (c'est qui le maître, ici ? ;) ) ;
  • ce mode est davantage sécurisé que pour le client.

Ici, nous avons parlé de tout type de transfert entre le serveur et le client.

Nos outils

Avec quoi va-t-on créer notre serveur ?

Nous avons besoin :
  • d'une connexion internet (c'est évident). Vous pouvez aussi le faire sous une connexion locale ;) ;
  • d'un programme serveur :
  • de vous :p .

C'est quoi ce truc, "un programme serveur" ?

Certes, il ne va pas transformer votre ordinateur en machine à café, ni en grille-pain :lol: .
C'est un programme qui va vous faciliter la tâche, c'est lui qui va s'occuper de la gestion de vos clients, de leur accès...

Mais comment faire pour en trouver ?

Notre programme s'appelle "TYPSoft FTP serveur" : vous n'aurez pas à chercher, voici les liens :

http://files.typsoft.com/ftpserv.exe (751 Ko avec programme d'installation) ;
http://files.typsoft.com/ftpsrv110.zip (473 Ko sans programme d'installation, personnellement j'ai pris celui-là).

Configuration

Vous êtes armés, prêts à l'assaut :pirate: ...
Si vous ouvrez votre programme pour la première fois, Windows va vous demander si vous voulez bloquer ce programme comme suit :

Image utilisateur


Cliquez sur Débloquer.

Oh non ! J'ai cliqué sur autre chose :'( , je fais quoi ?

N'ayez pas peur, voici la solution.
Cliquez sur démarrer => Panneau de configuration => Connexions réseau et Internet et choisissez Pare-feu Windows.
Une fenêtre s'affiche, vous choisissez l'onglet Exceptions et vous cochez TYPSoft FTP Server puis sur OK.
Zut, je ne l'ai pas trouvé, je fais quoi ?

Facile, cliquez sur le bouton Ajouter un programme ; dans la boîte de dialogue, cliquez sur le bouton Parcourir et choisissez votre programme "ftpserv". Si vous avez choisi le programme d'installation, le programme sera présent dans la liste sans que vous ne la parcouriez. Je vous l'illustre en images :

Image utilisateur
Cliquez pour agrandir


Comme vous pouvez le voir, cliquez sur l'onglet "Exceptions" puis sur le bouton "Ajouter un programme" ; si vous ne trouvez pas le programme dans la liste qui s'affiche, cherchez-le manuellement ;) .

Notre programme



Revenons à nos moutons : oui, c'est bien beau tout ça, mais nous n'avons rien fait pour l'instant pour notre serveur :( .

Configurons notre programme



Noooooooooooon ! Image utilisateur il est en anglais, et pourquoi tu l'as en français, toi ???

Nous allons y remédier.
Cliquez sur le menu Setup puis sur FTP et, dans Language choisissez Français et voilà ; cliquez sur Ok et :magicien: magie, le programme se transforme aussitôt en français.

Le serveur FTP



Cliquez sur le menu Configuration puis sur FTP, vous aurez une fenêtre :

Image utilisateur


  • Ce que j'ai entouré en bleu
Nous avons Port FTP et Maximum de connexions (vous devez savoir vous débrouiller sans moi, je vous ai tout appris).
Secret (cliquez pour afficher)
Bon ça va, voici la solution si vous ne savez pas vous débrouiller (mais arrêtez de taper sur ma tête avec ce truc >_< ,ouille, aïe...).
Port FTP : 21 (par défaut "21", comme je vous l'ai expliqué, mais rien ne vous empêche de le changer).
Maximum de connexions : 0 (par défaut, la valeur est "0", vous pouvez limiter le nombre de clients connectés sur votre serveur).

  • Ce que j'ai entouré en orange
Je vous laisse libres dans vos choix.

  • Ce que j'ai entouré en noir
Ces deux options vous permettent d'écrire un message de bienvenue et de départ aux clients qui se connectent sur votre serveur.
Attention, n'écrivez pas votre message dans cette zone de texte. Vous devez écrire vos messages dans un fichier .txt avec le programme Bloc-notes, puis parcourir votre fichier.

  • Le reste
Ne vous en souciez pas, et laissez-le comme ça ;) .

Les utilisateurs



Cliquez sur le menu Configuration puis sur Utilisateurs, vous aurez une fenêtre :

Image utilisateur


  • Ce que j'ai entouré en vert
Ces boutons vous aident à créer les utilisateurs (ou clients) pour votre serveur. En haut, choisissez le mot de passe et le dossier racine qui va contenir tous les dossiers de votre serveur.
Pour ce qui est des cases à cocher, vous devriez comprendre ;) ; aussi, dans les petites zones de textes, vous pouvez choisir le nombre de connexions simultanées pour votre client... Si vous êtes débutants ou si vous ne savez pas quoi faire, pas la peine d'y toucher ;) .

  • Ce que j'ai entouré en orange
Avec ces boutons, vous pouvez ajouter les dossiers auxquels vos clients pourront accéder.
Attention : les dossiers que vous choisissez doivent être dans le même répertoire que le dossier racine.


  • Ce que j'ai entouré en bleu
Une fois le répertoire choisi, vous définissez ses droits d'accès (je laisse libre cours à votre imagination...).
Secret (cliquez pour afficher)
Oh ça va, ça va, je vais vous le dire, ne vous fâchez pas (arrêtez seulement de me regarder avec cet air maléfique :diable: ...).

Fichiers



Download : le droit de télécharger des fichiers.
Upload : le droit d'envoyer des fichiers.
Renommer fichiers et répertoires : le droit de renommer des fichiers et des répertoires.
Effacer : le droit d'effacer des fichiers.
Accès interdit : il est interdit d'accéder aux fichiers de ce répertoire.

Répertoire



Créer : le droit de créer des dossiers.
Effacer : le droit d'effacer des répertoires.
Sous-répertoires inclus : affiche les sous-répertoires de votre dossier.
Lien virtuel : "Par exemple, on veut avoir 2 dossiers dans le FTP, C:a et C:b ; on les ajoute comme indiqué.

On veut ensuite démarrer à la connection dans C:a, il suffit de régler ça dans le champ Répertoire racine.
À ce point-là, si on essaye de se connecter, on arrivera bien dans C:a.
Pour pouvoir accéder à C:b, on le sélectionne et on coche cette fameuse case Lien virtuel.
Une zone de texte apparaît, on y entre le nom qu'on veut donner au dossier C:b, par exemple images...

Logiquement, lorsqu'on se connectera, on arrivera dans le dossier C:a ; moi, il y aura un sous-dossier (virtuel, donc qui n'existe pas vraiment, c'est un genre de lien) appelé images qui mènera directement dans notre dossier C:b "
(merci à notre ami <lien url="http://www.siteduzero.com/membres-294-23683.html">Thedownloader</lien> qui nous a fourni les explications ;) ).


  • Ce que j'ai entouré en noir
Les mêmes options que dans la configuration du serveur mais ici, vous créez un message personnalisé pour chaque utilisateur. ;)
Si vous avez défini un message de bienvenue et de départ dans la configuration du serveur FTP, ce sera un message par défaut (si le client n'a pas de message personnalisé, il verra alors le message par défaut).


Restriction IP



Cliquez sur le menu Configuration puis sur Restriction IP.

Parfois, vous ne voulez pas qu'une certaine personne ou un client accède à votre serveur. Ce programme comporte une option pratique pour éloigner les petits curieux.
Cliquez sur le menu Configuration et sélectionnez Restriction IP.
Dans la zone de texte, écrivez l'adresse IP puis cliquez sur le bouton Ajouter.
Si vous voulez que des adresses précises puissent accéder à votre serveur, cliquez sur l'option Permettre et écrivez les adresses voulues ; puis cliquez sur le bouton Fermer.

Et voilà, le plus dur est fait : votre serveur est configuré et prêt à l'emploi. :D

Le reste des options



Avant de finir, je vais vous expliquer le reste des options pour que tout soit clair ;) .

Menus



  • Fichier
    Effacer l'historique : cette fonction efface tout ce qui est écrit dans le cadre blanc.
    Si vous avez des informations que vous voulez conserver, copiez-les parce qu'elles seront perdues à jamais.

    Quitter : cette fonction vous permet de quitter le programme serveur ; par conséquent, aucun client n'aura accès à votre serveur.


  • Serveur
    Arrêter/Démarrer : ces deux fonctions vous permettent d'arrêter / de démarrer votre serveur sans redémarrer le programme.


  • Configuration
    Utilisateurs : je vous ai expliqué cette fonction un peu plus haut.
    FTP : idem.
    Restriction IP : idem.
    Définition des couleurs : cette fonction vous permet de définir les couleurs de votre programme serveur.
    Sons d'avertissements : cette fonction vous aide à définir des sons d'avertissement pour certains événements.

    Elles ne sont pas très compliquées, hein ? C'est très facile ;) .


Boutons



  • Principale
    Le premier enfoncé vous affiche cette zone de texte blanche.


  • Infos utilisateurs
    En cliquant dessus, la zone de texte va se transformer en un tableau qui vous informe de toutes les activités de vos utilisateurs.


Une dernière chose : pour vous connecter sur votre serveur, faites "ftp://votre_adresse_IP/" comme ceci : "ftp://213.150.183.156/".

C'est presque fini

Ouin amis zér0s ! C'est presque fini, je vous ai transféré presque tout mon savoir-faire (pas par FTP, bien sûr :p ).

Hé ! Tu pars sans nous dire comment connaître notre IP ?


Ah oui ! J'ai failli oublier ^^ , c'est vrai, pourquoi faire un serveur FTP si on ne peux s'y connecter ?
Pour connaître votre adresse IP, la méthode la plus facile est de passer voir ce site ou celui-là ;) .

Attention ! Certaines adresses IP ne peuvent pas être accessibles : si c'est votre cas, contactez votre FAI ;) .

C'est moche ! J'aime pas avoir une adresse IP pour mon serveur ! Je veux une adresse en lettres comme "www.mon_ftp.com" ! En plus, elle change tout le temps !


Désolé, je ne ferai pas de tuto pour la création d'un nom de domaine "DNS" pour votre serveur FTP ; vous pouvez toujours chercher avec Google, ou encore, si vous avez une LiveBOX, voici un tuto qui devrait vous intéresser :) .

Vous pouvez aussi me contacter par MP ou poster un message sur les forums si vous voulez plus d'aide ;) .

Vocabulaire

Voici toutes les définitions des mots barbares de ce cours, il est conseillé de les lire et de les apprendre si vous voulez être dans le coup :p .

Adresse IP : une adresse qui est composée de quatre nombres entre 0 et 255. L'adresse IP vous est attribuée quand vous vous connectez sur le réseau Internet.

Client : un internaute ou une personne qui navigue sur Internet (voire vous).

FTP : File Transfer Protocol (Protocole de Transfert de Fichiers), un protocole fait pour le transfert de données (fichiers), généralement entre un client et un serveur. Ce protocole est plus rapide et plus performant que son cousin :p le HTTP.

HTTP : Hyper Text Transfer Protocol (Protocole d'Hyper Transfert de Texte) Protocole fait pour le transfert de données (texte) sur le réseau Internet.

Internet : un réseau géant qui connecte des ordinateurs entre eux pour échanger des informations.

IP : Internet Protocol.

Serveur : une machine (un ordinateur géant) qui est connecté en permanence (toujours) sur le réseau Internet.

Port : chaque adresse ou serveur est connecté à un port ; pour les serveurs FTP, le port par défaut est 21 ; pour les serveur HTTP, le port par défaut est 80.

Connaître votre adresse IP



Vous vous connectez avec un modem interne, ou bien vous êtes sous un réseau LAN ou autre ? Vous voulez connaître l'adresse IP de votre machine ?
Voici l'astuce :
  • cliquez sur démarrer => Exécuter et écrivez cmd ;
  • une fenêtre noire va s'afficher (terrifiant, non ?) ;
  • écrivez ipconfig, et regardez la première ligne :

Code : Console
Microsoft Windows XP [version x.x.xxxx]

(c) Copyright 1895-2001 Microsoft Corp

C:Documents and settingsvousipconfig

Votre carte modem

Adresse IP...........: xxx.xxx.xxx.xxx (votre adresse IP)_


En guise de mot de fin, je vous informe qu'il y a un tuto qui vous explique comment se connecter sur un serveur FTP sans client graphique avec le programme que nous venons d'utiliser. C'est par ici.
C'est fini : vous avez créé un serveur FTP, ce n'est pas génial ? :D
J'espère que mon tuto vous a plu parce qu'il m'a pris beaucoup de temps.
J'ai fait beaucoup de sous-parties mais elles ne sont pas très longues ; aussi, j'ai fait le maximum pour que le tuto soit très facile.
Si vous avez une question, envoyez-moi un MP...
@++

Je remercie les Validateurs qui ont été sympas pour la validation du tuto mais aussi les zCorrecteurs (grand merci à ptipilou et Ejis), et enfin mon ami Thedownloader qui a testé l'option "Lien virtuel" de notre programme.

Partager

50 commentaires pour "Créer un serveur FTP sous Windows"
Note moyenne : 3.63 / 4 (27 votes)
Pseudo Commentaire
Hors ligne thibaud76200 # Posté le 07/10/2010 à 19:07:13
NYAN
Avatar

Bonjour, j'ai un petit problème dès qu'un utilisateur se connecte :euh: ...

[19:02:33] - [2] Utilisateur ADMIN [127.0.0.1] connecté
[19:02:33] - [2] ADMIN : Répertoire en Cours : C:\serveur\
[19:02:33] - [2] ADMIN : Début du Téléchargement de : C:\serveur\
[19:02:33] - [2] ADMIN : Echec du Téléchargement du Fichier : C:\serveur\ (4 326,20 K/S - 11 210 388 bytes)
[19:02:33] - [2] ADMIN : Répertoire en Cours : C:\serveur\
[19:02:33] - [2] Utilisateur ADMIN [127.0.0.1] déconnecté (00:00:09 Min)

Que faire ? Alors que j'ai rien fait après avoir tapé mon pseudo et mon mot de passe ! :(

EDIT : problème résolu, je suis passé à Filezilla Server :soleil:

Image utilisateur
Mon serveur Minecraft (compatible versions crackées) : 78.126.40.194:25565 (N'EST PAS ALLUME 24H/24)
 
Hors ligne radouan # Posté le 10/12/2010 à 16:49:46

Bonjour,
Merci pour le tuto, sauf que j'ai pas encore arrivé a tout faire!

j'ai configuré tout et le port 21 sur le routeur aussi, apres j'ai contacté un ami pour tester, mais quand il tape l'adresse que j'ai lui donné suivi de ":21" dans son Internet Explorer, apres il tape le nom et le mot de passe, finalement il a un message d'erreur "530 not logged in cannot find derectory" dois je chnager de configuration? ou bien utliser un logiciel pour se connecter à mon serveur autre que Internet explorer ou Mozilla Firfox?

Merci pour votre aide
Hors ligne aaron210 # Posté le 04/09/2011 à 01:13:24
Avatar

Salut, je n'arrive pas à télécharger le logiciel ... quelqu'un pourrait m'aider ?

Merci.

. . .
 
Hors ligne Sonnik # Posté le 08/03/2012 à 16:08:21

Super Tutoriel, clair, précis avec de l'ironie pour ne pas s'endormir à la lecture, bref super :)
Hors ligne RedLuma # Posté le 18/04/2012 à 14:08:36
Plus on est de fou plus on rit
Avatar

Avis : Très bon

On peut supprimer les langues qui ne servent pas, comme ça on économise de la mémoire!

Voir tous les commentaires
Ce tutoriel a été corrigé par les zCorrecteurs.