SI5 - Windows 2003 : Configurer un serveur FTP

TP 10 - mardi 10 avril et jeudi 12 avril 2012

Objectifs

  • Découvrir comment configurer un serveur FTP sous Windows 2003 server
  • Utiliser mode actif ou mode passif ?
  • Transfert de fichiers de type ASCII ou binaire

Éléments de configuration prérequis

  • nous utiliserons le serveur srv2003PN et un client XP installés lors des TP précédents
  • l'adresse IP du serveur est 192.168.0.1.
  • les 2 machines sont en réseau local interne, le serveur fournissant une IP au client de manière dynamique. Une seconde carte en NAT et qui obtient une IP via DHCP permet un accès à Internet.

Sous Windows 2003, le service FTP dépend de Microsoft Internet Information Services (IIS). IIS doit donc être installé sur l'ordinateur; le service FTP n'est pas installé par défaut lors de l'installation des services IIS. Pour installer ce service FTP, procédez comme suit :

  • Cliquez sur Démarrer, pointez sur Panneau de configuration, puis cliquez sur Ajout/Suppression de programmes.
  • Cliquez sur Ajouter/Supprimer des composants Windows.
  • Dans la liste Composants, cliquez sur Services Internet (IIS) (mais n'activez ni ne désactivez pas cette case), puis cliquez sur Détails.
  • Cliquez pour l'activer sur la case suivante : Service FTP (File Transfer Protocol), puis cliquez sur OK.
  • Cliquez sur Suivant.
  • Lorsqu'un message vous y invite, insérez le CD-ROM Windows Server 2003 dans le lecteur de CD-ROM de l'ordinateur ou indiquez le chemin d'accès aux fichiers, puis validez jusqu'au lancement de l'installation.
  • Cliquez sur Terminer.

Le service FTP est désormais installé. Vous devez configurer le service FTP pour pouvoir l'utiliser.

Il est possible de configurer un site FTP pour autoriser l'accès anonyme aux ressources FTP. Si vous sélectionnez l'authentification FTP anonyme pour une ressource, toutes les requêtes concernant cette ressource sont acceptées sans demander de nom d'utilisateur ni de mot de passe. Cela est possible parce que IIS a crée automatiquement un compte d'utilisateur Windows appelé IUSR_SRV2003PN (où SRV2003PN est le nom de la machine !).

Pour configurer le site FTP pour que seules les connexions anonymes soient autorisées, procédez comme suit :

  • Démarrez le gestionnaire de services IIS.
  • Développez SRV2003PN.
  • Développez Sites FTP
  • Cliquez avec le bouton droit sur Site FTP par défaut, puis cliquez sur Propriétés.
  • Cliquez sur l'onglet Comptes de sécurité.
  • cliquez pour activer la case Autoriser les connexions anonymes, puis activez la case à cocher N'autoriser que les connexions anonymes : les utilisateurs n'auront pas dans ce cas à indiquer un nom d'utilisateur et un mot de passe à l'ouverture d'une session.
  • Cliquez sur Appliquer puis OK.
  • Quittez le Gestionnaire des services IIS.

Le serveur FTP est désormais configuré pour accepter les demandes FTP entrantes.

  • Copiez dans le répertoire de base du site FTP les fichiers que vous souhaitez rendre accessibles (par exemple les différents fichiers contenus dans le répertoire c:\inetpub\wwwroot).

Rappel : Le répertoire de base du site FTP est C:\inetpub\ftproot.

  • Sur le client XP, lancez le navigateur internet Firefox,
  • Indiquez l'adresse URL FTP://srv2003PN puis validez,
  • le contenu du répertoire de base apparaît, confirmant le bon fonctionnement du service FTP. Bravo !

Nous venons de vérifier le fonctionnement du site FTP par défaut créé à l'installation du service FTP; nous allons maintenant en créer un autre pour permettre à Christophe Durand, utilisateur du groupe Comptables avec le compte CDurand, de faire des mises à jour du site Intranet qui leur est réservé …

  • Démarrez le gestionnaire de services IIS,
  • Développez SRV2003PN,
  • Développez Sites FTP,
  • Cliquez avec le bouton droit sur Sites FTP, puis choisissez Nouveau/Site FTP … pour activer l'assistant.
  • Entrez une description (par exemple : FTP Comptables), puis suivant
  • Validez l'IP 192.168.0.1 et spécifiez le port 2121, puis cliquez sur suivant,

L'isolation

L'isolation d'utilisateur FTP constitue une solution pour les fournisseurs de services Internet et les fournisseurs de services applicatifs qui doivent offrir à leurs clients des répertoires FTP individuels pour le téléchargement de fichiers et de contenu Web. Elle limite l'accès des utilisateurs à leurs propres répertoires uniquement, de façon à empêcher ceux-ci d'afficher ou d'écraser le contenu Web d'autres utilisateurs. Le répertoire de premier niveau d'un utilisateur apparaît en tant que racine du service FTP, c'est pourquoi il est impossible pour celui-ci de monter plus haut dans l'arborescence. L'utilisateur a toujours la possibilité de créer, modifier ou supprimer des fichiers et des dossiers dans son propre site.

L'isolation d'utilisateur FTP est une propriété du site, pas du serveur. Elle peut être activée ou désactivée pour chaque site FTP.

IIS offre trois possibilités pour gérer l'affectation du répertoire de base implicite lors de l'ouverture d'une session FTP par un utilisateur. Dans les trois cas, l'utilisateur ne pourra parcourir que ce répertoire, ses sous-répertoires réels et virtuels. Il ne pourra pas remonter dans l'arborescence physique.

  1. Répertoire de base: La racine du site.
  2. Répertoire de base: Un répertoire particulier sous la racine du site.
  3. Répertoire de base: Le répertoire de base tel que configuré dans Active Directory.

Nous choisirons ici la première option:

  • Cochez la case correspondante et cliquez sur suivant
  • Cliquez sur parcourir pour indiquer le chemin du répertoire de base (E:\Données Comptables\web)
  • Cochez l'autorisation écriture puis suivant et enfin Terminer

Nous allons interdire l'accès anonyme sur ce site FTP:

  • Faites un clic droit sur FTP Comptables, et choisissez propriétés
  • Dans l'onglet Comptes de sécurité, désactivez l'option Autoriser l'accès anonyme et confirmez votre choix.
  • Dans l'onglet Messages, tapez ============ FTP EUROMEDIA ============ dans la zone Bannière et Bienvenue sur le site des Comptables ! dans la zone Bienvenue puis cliquez sur Appliquer et OK

Votre site est maintenant créé et démarré mais il faut s'assurer que le compte CDurand est autorisé à modifier le contenu du répertoire de base.

  • Cliquez avec le bouton droit sur FTP Comptables, puis choisissez Autorisations pour accèder aux autorisations NTFS sur le répertoire de base du site FTP
  • Ajoutez le compte CDurand et activez la case à cocher Modification

Attention : le mot de passe de ce compte est Pass2003. En cas de doute vous pouvez le réinitialiser en lançant Démarrer/Outils d'administration/Utilisateurs et ordinateurs Active Directory puis en faisant un clic droit sur l’icône de Christophe Durand (développer Euromedia.local/France/Siege Euromédia France/Comptabilité) choisir l'option Réinitialiser le mot de passe. De même, il peut être utile de vérifier que le compte peut être activé dans l'immédiat en consultant la plage horaires d'accès… dans l'onglet Compte des Propriétés

  • ouvrez le menu démarrer/Exécuter… (ou les touches [Windows] + [R]) et tapez cmd.
  • entrez dans le module FTP en tapant simplement la commande ftp puis validez
  • pour vous connecter au serveur FTP, taper la commande open hote [port] (où vous remplacerez `hote` par l'adresse de votre serveur FTP distant; le port est un argument facultatif mais ici nous n'utilisons pas le port par défaut)
FTP>open srv2003PN 2121

Après l'affichage de la bannière, le serveur FTP vous demande votre nom d'utilisateur du site FTP (CDurand), puis le mot de passe associé (Pass2003).

En cas d'erreur, le serveur ne vous laissera pas faire grand-chose tant qu'il ne vous aura pas identifié comme un réel utilisateur : tapez la commande user pour relancer le processus d'identification à nouveau

A partir d'ici, vous êtes identifié. Le serveur indique quels droits vous avez et que le répertoire courant est /. Ce répertoire est la racine de votre compte.

Remarque : sous Linux comme sous Windows, le compte anonymous peut généralement être validé par n'importe quelle chaine de caractères formée comme une adresse mail, c'est à dire incluant le caractère @ mais notre serveur n'accepte pas les invités anonymes !.

La navigation

La commande pwd (Print Working Directory) vous indique dans quel dossier vous vous trouvez. Pratique, si vous avez perdu votre chemin … Pour la navigation proprement dite au sein du site FTP, deux commandes vous seront utiles : dir (DIRectory) et ls (List Segments)

  • entrez successivement ces deux commandes et observez la différence

Nous allons maintenant créer un répertoire nommé tests dans le répertoire de base du site FTP …

  • mkdir (MaKe DIRectory) autorise la création d'un sous-répertoire dans le répertoire courant (si vous avez des droits en écriture sur le serveur !)
  • cd (Change Directory) vous permet de vous déplacer dans l'arborescence du site

Il est possible de renommer un fichier ou un répertoire à l'aide de la commande rename, de supprimer des données à l'aide des commandes delete fichier ou rmdir dossier (ReMove DIRectory).

Dans le module FTP, on peut donc se balader sur le serveur FTP distant et effectuer toutes sortes d'actions. Durant vos transactions FTP, vous serez sûrement amenés à devoir exécuter certaines de ces mêmes actions localement sur votre disque dur … Pour cela, on dispose de la commande lcd et du point d'exclamation (!), indiquant au module que vous exécutez l'action localement.

La commande lcd [dossier] permet de changer le répertoire local dans lequel vous travaillez.

Pour lister le dossier local courant, tapez !dir

L'envoi et la réception

La réception

  • get fichier est la commande pour récupérer un fichier unique
  • mget fichier_1 [fichier_2] [fichier_3]… [fichier_n] (Multi GET) est utilisée en cas de fichiers multiples à transférer.

Par défaut, le type de fichier utilisé est ASCII. La commande binary permet de changer le type pour transférer des fichiers qui ne sont pas des fichiers “texte” sans les corrompre. On peut revenir au type ASCII avec la commande ascii.

Attention : Les fichiers transférés avec les commandes get ou mget sont réceptionnés dans le dossier local courant.

L'envoi

Comme pour la réception, l'envoi bénéficie de deux fonctions : put et mput (Multi PUT).

Leurs syntaxes respectives sont put fichier et mput fichier_1 [fichier_2] [fichier_3] … [fichier_n].

Déconnexion et aide

Pour afficher de l'aide sur les commandes ftp utilisable, tapez ? ou help help commande (où commande sera remplacé par une commande FTP) affiche un descriptif de ladite commande.

Fermeture de la connexion

Il est toujours préférable de fermer la connexion en douceur …

  • tapez close

Quitter le module FTP

  • Pour quitter le module FTP et revenir à l'invite de commande système, tapez quit

Sur le poste client XP, lancez une fenêtre ligne de commande puis :

  • Connectez vous de façon anonyme au site FTP par défaut SRV2003PN
  • Visualisez quel est le nom du répertoire local
  • Créez un répertoire test dans ce répertoire local
  • Changez le répertoire local pour entrer dans ce répertoire test
  • Visualisez les divers documents présents dans le répertoire de base du site FTP par défaut
  • Importez tous ces documents dans le répertoire local (test)
  • Fermez la connexion avec le serveur FTP
  • Ouvrez une nouvelle connexion avec le compte de Christophe Durand en utilisant le port 2121 pour accéder à l'intranet des comptables
  • Vérifiez que le mode de transfert actif est A (Ascii)
  • Passez en mode binaire
  • Transférez les fichiers locaux vers le site FTP, dans le répertoire test
  • Vérifiez le résultat