Partager via


Guide pour déployer FTP et publier avec VWD

de Walter Oliver

Le service FTP pour IIS est un composant clé de la plateforme web Windows. Il fournit une solution robuste et sécurisée pour FTP dans un environnement Windows. Les administrateurs d’un environnement d’hébergement partagé peuvent utiliser FTP pour IIS pour permettre à leurs clients de charger et de synchroniser leur contenu. L’article Nouveautés de Microsoft et FTP présente les nouvelles fonctionnalités FTP. Voici les points principaux :

  • Intégration à IIS :

    • Nouveau magasin de configuration basé sur le format *.config XML de .NET
    • Nouvel outil d’administration
  • Sécurité et prise en charge des nouvelles normes Internet :

    • FTP sur SSL
    • Comptes non-Windows pour l’authentification
    • UTF8 et IPv6
  • Améliorations apportées à l’hébergement partagé :

    • Hébergement du contenu FTP et web à partir du même site en ajoutant une liaison FTP à un site web existant
    • Prise en charge des noms d’hôtes virtuels, permettant d’héberger plusieurs sites FTP sur la même adresse IP
    • Amélioration de l’isolation d’utilisateur par le biais des répertoires virtuels par utilisateur
  • Amélioration des fonctionnalités de journalisation et de prise en charge :

    • La journalisation FTP améliorée inclut tout le trafic lié au FTP, le suivi unique pour les sessions FTP, les sous-états FTP et les champs de détails supplémentaires dans les journaux FTP
    • Réponses d’erreur détaillées lors de la connexion locale à un serveur FTP
    • Informations détaillées lors de l’utilisation du suivi d’événements pour Windows (ETW), qui fournit des informations supplémentaires de résolution des problèmes

La vidéo suivante fournit une vue d’ensemble et des démonstrations de plusieurs fonctionnalités dans FTP 7.0.

Déploiement de FTP

FTP est l’un des serveurs frontaux dans la configuration d’hébergement partagé.

Diagram of F T P service deployment involving the interactions between the front end and back end servers.

Cette image met en évidence plusieurs caractéristiques importantes du déploiement FTP dans l’environnement d’hébergement partagé :

  1. Le service FTP peut partager le même ordinateur que celui utilisé pour les services d’administration à distance (gestion web – WMSVC) et MS Deploy.
  2. L’ordinateur FTP fait partie de la configuration partagée utilisée par les serveurs de la batterie de serveurs web, ce qui signifie que les composants installés sur cet ordinateur doivent également se trouver sur les serveurs de la batterie de serveurs web. Toutefois, étant donné que la batterie de serveurs web ne sera pas utilisée pour traiter les demandes FTP, les services FTP, de gestion web (WMSVC) et MS Deploy peuvent être arrêtés.
  3. L’ordinateur FTP n’est pas destiné à héberger des applications web.
  4. Le routeur de pare-feu accessible sur Internet effectue le réacheminement de port du trafic FTP vers le serveur FTP.

Configuration du déploiement

Le serveur FTP pour IIS a plusieurs fonctionnalités qui le rendent idéal pour les scénarios d’hébergement partagé. Les instructions ci-dessous tirent parti de la nouvelle fonctionnalité d’isolation d’utilisateur FTP. Cette fonctionnalité permet :

  • Aux administrateurs de limiter l’accès utilisateur uniquement au répertoire physique ou virtuel défini pour l’utilisateur. Cela correspond à l’implémentation d’un site FTP unique ; ce site contiendra un répertoire physique ou virtuel spécifique pour chaque nom d’utilisateur.
  • Aux administrateurs d’activer SSL et d’utiliser un certificat unique pour toutes les connexions lorsqu’elles sont explicitement requises par les utilisateurs.
  • Aux utilisateurs de consulter le site FTP comme s’il était uniquement à eux. Lorsqu’ils se connectent au serveur FTP, ils sont limités à leur répertoire spécifique et ne pourront pas monter dans l’arborescence de répertoires.

Étapes

  1. Sélectionnez l’ordinateur FTP et installez le nouveau service FTP pour IIS. Suivez les instructions figurant dans Installation et résolution des problèmes FTP.

  2. Créez un dossier racine à utiliser pour votre site FTP, par exemple : %*SystemDrive*%\inetpub\ftproot.

  3. En cas d’exigences de haute disponibilité FTP et/ou d’équilibrage de charge, Microsoft fournit des solutions telles que l’équilibrage de la charge réseau ou les clusters de basculement, et le tourniquet (round robin) DNS peut être suffisant.

  4. Créez un site qui autorise les connexions SSL et l’authentification de base. Suivez les étapes décrites dans la section Créer un site avec SSL.

  5. Activez la fonctionnalité d’isolation d’utilisateur. Suivez les étapes de la section Configurer l’isolation utilisateur pour tous les répertoires.

  6. Configurez les paramètres de pare-feu FTP comme décrit dans la section correspondante ci-dessous.

  7. Arrêtez le service d’activation des processus Windows (WAS) :

    • À l’invite de commandes, tapez services.msc. Cela affiche la console Services.
      Screenshot of the Services console with Windows Process Activation Service selected.
    • Double-cliquez sur Service d’activation des processus Windows.
      Screenshot of the Windows Process Activation Service Properties with Startup type set to Disabled.
    • Dans la boîte de dialogue Propriétés du service d’activation des processus Windows, veillez à ce que le type de démarrage de ce service soit défini sur Désactivé. Cliquez sur Arrêter, puis sur OK.

Créer un site avec SSL

Dans cette section, vous allez créer un nouveau site FTP pouvant être ouvert à l’aide de l’un de vos comptes d’utilisateur.

  1. Accédez au Gestionnaire IIS. Dans le volet Connexions, cliquez sur le nœud Sites dans l’arborescence.

  2. Cliquez avec le bouton droit sur le nœud Sites dans l’arborescence, puis cliquez sur Ajouter un site FTP ou sur Ajouter un site FTP dans le volet Actions.
    Screenshot of an emphasized Add F T P Site option after right-clicking Sites in the Connections pane.

  3. Lorsque l’Assistant Ajouter un site FTP s’affiche :

    • Entrez « Mon nouveau site FTP » dans la zone de texte Nom du site FTP, puis accédez au dossier racine que vous avez créé pour votre site FTP (par exemple : %*SystemDrive*%\inetpub\ftproot).

      Remarque

      Si vous choisissez de saisir le chemin d’accès à votre dossier de contenu, vous pouvez utiliser des variables d’environnement dans vos chemins d’accès.

    • Sélectionnez Suivant.
      Screenshot of the Add F T P Site dialog with the specified Site Information.

  4. Dans la page suivante de l’Assistant :

    • Choisissez une adresse IP pour votre site FTP dans la zone de texte Adresse IP ou choisissez d’accepter la sélection par défaut de « Tous non attribués ». Cet exemple utilise l’adresse IP de bouclage local « 127.0.0.1 ».
    • Entrez le port TCP/IP du site FTP dans la zone de texte Port. Cet exemple utilise le port par défaut « 21 ».
    • Veillez à ce que la zone de texte Hôte virtuel soit vide. N’utilisez pas de nom d’hôte.
    • Veillez à ce que la liste déroulante Certificats soit définie sur le certificat approprié que vous envisagez d’utiliser. Cet exemple utilise un certificat auto-signé appelé « Mon certificat FTP ». Pour obtenir des instructions, consultez Création d’un certificat SSL auto-signé.
    • Veillez à ce que l’option Autoriser SSL soit sélectionnée.
    • Sélectionnez Suivant.
      Screenshot of the Add F T P Site dialog with the specified Binding and S S L Settings.
  5. Dans la page suivante de l’Assistant :

    • Sélectionnez De base pour les paramètres Authentification.

    • Pour les paramètres Autorisation :

      • Choisissez « Tous les utilisateurs » dans la liste déroulante Autoriser l’accès à.
      • Sélectionnez Lecture et Écriture pour l’option Autorisations.
    • Une fois ces éléments terminés, cliquez sur Terminer.
      Screenshot of the Add F T P Site dialog with the specified Authentication and Authorization Information.

Résumé

Vous avez maintenant créé un nouveau site FTP basé sur SSL à l’aide du nouveau service FTP. Passez en revue les opérations effectuées dans cette procédure :

  • Vous avez créé un nouveau site FTP nommé « Mon nouveau site FTP », qui place la racine du contenu du site dans %*SystemDrive*%\inetpub\ftproot.
  • Vous avez lié le site FTP à l’adresse IP de votre ordinateur sur le port 21.
  • Vous avez choisi d’autoriser SSL (Secure Sockets Layer) pour le site FTP et sélectionné votre certificat.
  • Vous avez activé l’authentification de base et créé une règle d’autorisation pour tous les comptes d’utilisateur pour l’accès en lecture et en écriture.

Pour modifier directement les fichiers de configuration XML, consultez Ajout d’une publication FTP basée sur SSL en modifiant les fichiers de configuration IIS.

Configurer l’isolation d’utilisateur pour tous les répertoires

Lors de l’isolation des utilisateurs pour tous les répertoires, toutes les sessions utilisateur FTP sont limitées au répertoire physique ou virtuel portant le même nom que le compte d’utilisateur FTP. En outre, tous les répertoires virtuels globaux créés seront ignorés. Dans cette étape, vous allez configurer l’isolation d’utilisateur pour tous les répertoires.

  1. Créez un dossier dans %*SystemDrive*%\inetpub\ftproot\LocalUser\. Ce dossier contiendra tous les répertoires des comptes d’utilisateur locaux. Vous pouvez créer ce dossier sur votre serveur de partage de fichiers (NAS). Lorsque vous provisionnez des comptes d’utilisateur, vous devez également attribuer un accès en lecture et écriture aux dossiers de contenu des utilisateurs.
  2. Dans le Gestionnaire IIS, cliquez sur le nœud du site FTP que vous venez de créer. Cela affichera les icônes pour toutes les fonctionnalités FTP.
  3. Double-cliquez sur l’icône Isolation d’utilisateur FTP pour ouvrir la fonctionnalité d’isolation d’utilisateur FTP.
    Screenshot of the My New F T P Site Home pane with F T P User Isolation selected.
  4. Lorsque la page de fonctionnalité d’isolation d’utilisateur FTP s’affiche, sélectionnez Répertoire des noms d’utilisateurs (désactiver les répertoires virtuels globaux), puis cliquez sur Appliquer dans le volet Actions.
    Screenshot of the F T P User Isolation pane with restricting users to the User name directory.

Résumé

Passons en revue les opérations que vous avez effectuées dans cette procédure : vous avez configuré l’isolation d’utilisateur FTP à l’aide de l’option Répertoire des noms d’utilisateurs (désactiver les répertoires virtuels globaux). Lorsque vous utilisez ce mode d’isolation d’utilisateur, toutes les sessions utilisateur FTP sont limitées au répertoire virtuel ou physique portant le même nom que le compte d’utilisateur FTP, et tous les répertoires virtuels globaux créés seront ignorés.

Pour créer des répertoires de base pour chaque utilisateur, vous devez d’abord créer un répertoire virtuel ou physique sous le dossier racine de votre serveur FTP, nommé d’après votre domaine ou nommé LocalUser pour les comptes d’utilisateur locaux. Ensuite, vous devez créer un répertoire virtuel ou physique pour chaque compte d’utilisateur qui accédera à votre site FTP. Le tableau suivant répertorie la syntaxe des répertoires de base pour les fournisseurs d’authentification qui accompagnent le service FTP :

Type de compte d’utilisateur Syntaxe du répertoire de base physique
Utilisateurs anonymes %FtpRoot%\LocalUser\Public
Comptes d’utilisateur Windows locaux (nécessite l’authentification de base) %FtpRoot%\LocalUser\%UserName%
Comptes de domaine Windows (nécessite l’authentification de base) %FtpRoot%\%UserDomain%\%UserName%
Comptes d’utilisateur d’authentification personnalisés du Gestionnaire IIS ou d’ASP.NET %FtpRoot%\LocalUser\%UserName%

Remarque

Dans le tableau ci-dessus, %FtpRoot% est le répertoire racine de votre site FTP ; par exemple, C:\Inetpub\Ftproot.

Les répertoires virtuels globaux sont ignorés ; les répertoires virtuels configurés au niveau racine de votre site FTP sont inaccessibles aux utilisateurs FTP. Tous les répertoires virtuels doivent être définis explicitement sous le chemin d’accès du répertoire de base physique ou virtuel d’un utilisateur.

Configurer les paramètres du pare-feu FTP

Configurer la plage de ports passifs pour le service FTP

Dans cette section, vous allez configurer la plage de ports au niveau du serveur pour les connexions passives au service FTP. Utiliser les étapes suivantes :

  1. Accédez au Gestionnaire IIS. Dans le volet Connexions, cliquez sur le nœud au niveau du serveur dans l’arborescence.
    Screenshot of MY SERVER selected in the Connections pane with the MY SERVER Home pane displayed.

  2. Double-cliquez sur l’icône Prise en charge du pare-feu FTP dans la liste des fonctionnalités.
    Screenshot of F T P Firewall Support selected in the MY SERVER Home pane.

  3. Entrez une plage de valeurs pour Plage de ports du canal de données.
    Screenshot of the Data Channel Port Range set to a value of 49152 dash 65535 in the F T P Firewall Support pane.

  4. Une fois que vous avez entré la plage de ports pour votre service FTP, cliquez sur Appliquer dans le volet Actions pour enregistrer vos paramètres de configuration.

    Remarque

    • La plage valide des ports est comprise entre 1025 et 65535. (Les ports 1 à 1024 sont réservés pour une utilisation par les services système.)

    • Vous pouvez entrer une plage de ports spéciale de « 0-0 » pour configurer le serveur FTP afin d’utiliser la plage de ports dynamiques TCP/IP de Windows.

    • Pour plus d’informations, consulter les articles suivants de la Base de connaissances Microsoft :

    • Cette plage de ports doit être ajoutée aux paramètres autorisés pour votre serveur de pare-feu.

  5. Entrez l’adresse IPv4 de l’adresse externe de votre serveur de pare-feu pour le paramètre Adresse IP externe du pare-feu.
    Screenshot of the External I P Address of Firewall set to a value of 131 dot 107 dot 0 dot 100.

  6. Une fois que vous avez entré l’adresse IPv4 externe de votre serveur de pare-feu, cliquez sur Appliquer dans le volet Actions pour enregistrer vos paramètres de configuration.

Résumé

Passez en revue les opérations effectuées dans cette procédure :

  1. Vous avez configuré la plage de ports passifs pour votre service FTP.
  2. Vous avez configuré l’adresse IPv4 externe pour un site FTP spécifique.

Pour obtenir des informations sur la configuration du pare-feu Windows Server 2008, consultez (Facultatif) Étape 3 : Configurer les paramètres du Pare-feu Windows. Consultez également Informations supplémentaires sur l’utilisation des pare-feu.

Exemples de noms de serveur FTP

FTP est un service couramment inclus lorsque les hébergeurs provisionnent des comptes pour leurs clients. Les instructions fournies ci-dessus activent le service FTP pour IIS pour les clients, mais le nom du serveur FTP, s’il est simplement basé sur le nom de l’entreprise d’hébergement, peut ressembler à ceci :

ftp.hostingcompany.com Un tel nom peut être suffisamment clair pour tous les utilisateurs ; lorsque les clients l’utilisent pour se connecter à leur répertoire FTP, ils accèdent à leur répertoire et peuvent voir uniquement leurs dossiers. Toutefois, le nom du serveur FTP peut ne pas être aussi attrayant pour les clients qu’un nom de serveur FTP basé sur leur domaine réservé, tel que :

  • ftp.customerdomain.com
  • customerdomain.com

Si les clients ont leur nom de serveur FTP associé à leur nom de domaine réservé, l’expérience du service FTP sera plus personnalisée et attrayante. Fonctionnellement, elle est identique à l’exemple précédent, mais cette option simplifie l’appellation du domaine pour le client. Pour configurer un nom de serveur FTP personnalisé pour chaque client, vous devez créer des enregistrements DNS appropriés pour le domaine client. Cela nécessite des étapes de provisionnement supplémentaires. Si vous fournissez un nom de serveur FTP personnalisé pour chaque client, vous pouvez également fournir un autre nom de serveur pour empêcher une panne du service FTP lors de la mise à jour des noms de domaine. Un exemple de nom alternatif à fournir avec le nom personnalisé peut ressembler à : ftp.username.hostingcompany.com. Dans un tel cas, les clients recevront deux noms de serveur et pourront se connecter au même répertoire à l’aide de l’un ou de l’autre nom ; par exemple :

  • ftp.customerdomain.com (ou customerdomain.com)
  • ftp.username.hostingcompany.com

Se connecter à partir de Visual Web Developer

Cet article s’est jusqu’à présent concentré sur la façon de déployer FTP dans un environnement d’hébergement partagé. Cette section décrit comment les clients peuvent tirer parti de Visual Web Developer 2008 (VWD) pour publier leurs applications web à l’aide du service FTP fourni par l’hébergeur. L’exemple suivant part du principe que :

  • L’entreprise d’hébergement a provisionné un compte pour un utilisateur nommé « ftpuser1 ».
  • L’entreprise d’hébergement a créé le dossier virtuel correspondant « ftproot\LocalUser*ftpuser1* ».

Pour publier du contenu d’application web avec VWD, ftpuser1 effectue les étapes suivantes :

  1. Ftpuser1 ouvre le site web appelé « WebSite1 » dans Visual Web Developer 2008 (VWD).
    Screenshot of the H T M L code for Default dot a s p x in Visual Web Developer.

  2. Ftpuser1 sélectionne Copier le site web dans le menu du site web.
    Screenshot of opening the Website option in the toolbar and selecting Copy Web Site.

  3. Ftpuser1 clique sur Connecter.
    Screenshot before connecting the Web Site copy to the specified F T P server.

  4. Ftpuser1 entre les valeurs suivantes :

    • Le nom du serveur FTP fourni par l’entreprise d’hébergement. Dans l’exemple ci-dessous, l’adresse IP de bouclage est 127.0.0.1.
    • Port. Dans l’exemple ci-dessous, la valeur par défaut est le port 21.
    • Option Mode passif.
    • Option Authentification de base. Ftpuser1 désélectionne Connexion anonyme.
    • Nom d’utilisateur : ftpuser1.
    • Password.
  5. Ftpuser1 clique ensuite sur Ouvrir.
    Screenshot of the Open Web Site dialog with the specified F T P Site information.

  6. Le dossier de l’utilisateur ftpuser1 s’affiche dans le volet Site web distant. Dans l’exemple suivant, le volet est vide, car ftpuser1 publie le site web pour la première fois.
    Screenshot of an empty Remote Web Site pane after opening the F T P Web Site.

  7. Ftpuser1 publie tous les éléments de contenu dans le volet Site web source en sélectionnant tous les fichiers et dossiers, puis en cliquant sur Synchroniser :

    • Ftpuser1 clique sur le volet de gauche.
    • Ftpuser1 tape Ctrl+A pour sélectionner tous les fichiers.
    • Ftpuser1 clique sur Synchroniser (situé entre les deux volets, troisième bouton à partir du haut).
      Screenshot before synchronizing all selected files in the Source Web Site pane.
  8. Les fichiers et dossiers sont chargés sur le serveur FTP et stockés dans le répertoire virtuel de l’utilisateur : ftpuser1. (L’utilisateur ignore le contenu des autres utilisateurs sur le même serveur en raison de la restriction d’isolation d’utilisateur.)
    Screenshot after synchronization with copies of the synchronized files in the Remote Web site pane.

Conclusion

Ce guide fournit les informations nécessaires pour installer et configurer un service FTP pour IIS dans un environnement d’hébergement partagé. Il montre également comment les clients peuvent tirer parti de Visual Web Developer pour publier leur contenu dans leur répertoire de site FTP.