Partager via


Utilisation du protocole FTP sur SSL dans IIS 7

par Robert McMurray

Compatibilité

Version Notes
IIS 7.5 Le service FTP 7.5 est fourni en tant que fonctionnalité pour IIS 7.5 dans Windows 7 et Windows Server 2008 R2.
IIS 7.0 Les services FTP 7.0 et FTP 7.5 ont été expédiés hors bande pour IIS 7.0, ce qui nécessite le téléchargement et l’installation du service à partir de l’URL suivante : https://www.iis.net/download/FTP.

Introduction

Microsoft a créé un service FTP entièrement réécrit pour Windows Server® 2008. Ce service FTP intègre de nombreuses nouvelles fonctionnalités qui permettent aux auteurs web de publier du contenu mieux qu’auparavant et offre aux administrateurs web davantage d’options de sécurité et de déploiement.

L’une des fonctionnalités est FTP sur SSL (Secure Sockets Layer), ce qui permet de chiffrer les sessions entre un client FTP et un serveur. Ce document vous guide tout au long de la procédure : configuration d’un site FTP ; et configuration de ce site pour utiliser SSL avec la nouvelle interface utilisateur FTP, ce qui vous permet de modifier directement les fichiers de configuration IIS 7.0. Il contient :

Remarque

Cette procédure pas à pas contient une série d’étapes dans lesquelles vous vous connectez à votre site FTP à l’aide du compte administrateur local. Ces étapes doivent uniquement être suivies sur le serveur lui-même à l’aide de l’adresse de bouclage ou sur SSL à partir d’un serveur distant. Si vous préférez utiliser un compte utilisateur distinct au lieu du compte administrateur, vous devez créer les dossiers appropriés et définir les autorisations appropriées pour ce compte utilisateur si nécessaire.

Prérequis

Les éléments suivants doivent être installés pour effectuer les procédures décrites dans cet article :

  1. IIS 7.0 doit être installé sur votre serveur Windows 2008, et le gestionnaire des services d’information internet doit être installé.

  2. Le nouveau service FTP. Vous pouvez télécharger et installer le service FTP à partir du https://www.iis.net/ site web à l’aide de l’un des liens suivants :

    • FTP 7.5 pour IIS 7.0 (x64)
    • FTP 7.5 pour IIS 7.0 (x86)
  3. Vous devez créer un dossier racine pour la publication FTP :

    • Créez un dossier à l’emplacement %SystemDrive%\inetpub\ftproot

    • Définissez les autorisations pour autoriser l’accès au groupe administrateurs :

      • Ouvrez une invite de commandes.
      • Tapez la commande suivante : ICACLS "%SystemDrive%\inetpub\ftproot" /Grant administrators:F /T
      • Fermez l'invite de commande.

Remarque

Les paramètres répertoriés dans cette procédure pas à pas spécifient %SystemDrive%\inetpub\ftproot comme chemin d’accès à votre site FTP. Vous n’êtes pas obligé d’utiliser ce chemin d’accès ; Toutefois, si vous modifiez l’emplacement de votre site, vous devez modifier les chemins d’accès liés au site utilisés tout au long de cette procédure pas à pas.

FACULTATIF : Création d’un certificat SSL auto-signé

Dans cette tâche facultative, vous allez créer un certificat SSL auto-signé que vous allez utiliser pour tester votre site FTP.

Remarque

Si vous configurez un site FTP pour une activité basée sur internet, vous obtiendrez un certificat SSL auprès de l’une des nombreuses autorités de certification, telles que VeriSign, Thawte, DigiCert, etc. Pour plus d’informations, consultez Autorités de certification.

  1. Ouvrez le gestionnaire des services internet (IIS 7.0).
  2. Cliquez sur votre ordinateur dans le nœud supérieur de l’arborescence Connexions, puis double-cliquez sur la fonctionnalité Certificats de serveur.
    Screenshot that shows the MY SERVER Home pane. Sever Certificates is selected.
  3. Dans le volet Actions, cliquez sur Créer un certificat auto-signé.
    Screenshot that shows the Sever Certificates pane.
  4. Entrez « Mon certificat FTP » comme nom du nouveau certificat, puis cliquez sur OK.
    Screenshot that shows the Create Self Signed Certificate dialog box.

Création d’un site FTP compatible SSL à l’aide du Gestionnaire IIS 7.0

Étape 1 : Utiliser l’Assistant de site FTP pour créer un site FTP basé sur SSL

Dans cette première étape, vous créez un site FTP qui ne peut être ouvert qu’à l’aide de votre compte administrateur.

  1. Accédez au Gestionnaire IIS 7.0. 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 cliquez sur Ajouter un site FTP dans le volet Actions.
    Screenshot that shows the context menu for Sites, in the Connections pane.

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

    • Entrez « Mon nouveau site FTP » dans la zone nom du site FTP , puis accédez au dossier %SystemDrive%\inetpub\ftproot que vous avez créé dans la section Conditions préalables.

      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 shows the Site Information page in the Add F T P Site dialog box.

  4. Aller à la page suivante de l'assistant :

    • Choisissez une adresse IP pour votre site FTP dans la liste déroulante Adresse IP, ou choisissez d’accepter la sélection par défaut de « Tous non attribués. » Étant donné que vous allez utiliser le compte administrateur plus loin dans cette procédure pas à pas, veillez à restreindre l’accès au serveur et à entrer l’adresse IP de bouclage locale pour votre ordinateur en tapant « 127.0.0.1 » dans la zone Adresse IP.

    • Vous devez normalement entrer le port TCP/IP du site FTP dans la zone Port. Pour cette procédure pas à pas, choisissez d’accepter le port par défaut 21.

    • Pour cette procédure pas à pas, vous n’utilisez pas de nom d’hôte. Vérifiez donc que la zone Hôte virtuel est vide.

    • Vérifiez que la liste déroulante Certificats est définie sur votre certificat SSL. Par exemple, si vous avez suivi l’étape facultative pour créer un certificat auto-signé, la zone déroulante doit indiquer « Mon certificat FTP ».

    • Vérifiez que l’option Autoriser SSL est sélectionnée.

    • Sélectionnez Suivant.

      Screenshot that shows the Binding and S S L Settings page in the Add F T P Site dialog box. Allow S S L is selected.

  5. Aller à la page suivante de l'assistant :

    • Sélectionnez Basic pour les paramètres d’authentification.

    • Pour les paramètres d’autorisation :

      • Choisissez « Utilisateurs spécifiés » dans la liste déroulante Autoriser l’accès.
      • Tapez « administrateur » pour le nom d’utilisateur.
      • Sélectionnez Lecture et Écriture pour l’option Autorisations.
    • Une fois ces éléments terminés, cliquez sur Terminer.

      Screenshot that shows the Authentication and Authorization Information page in the Add F T P Site dialog box. Basic, Read, and Write are all selected.

Résumé

Vous avez créé un nouveau site FTP basé sur SSL à l’aide du nouveau service FTP.

Pour récapituler les éléments que vous avez terminés à cette étape :

  • Vous avez créé un nouveau site FTP nommé « Mon nouveau site FTP », avec la racine de contenu du site à l’adresse %SystemDrive%\inetpub\ftproot.
  • Vous avez lié le site FTP à l’adresse de bouclage locale de votre ordinateur sur le port 21.
  • Vous avez choisi d’exiger SSL (Secure Sockets Layer) pour le site FTP et sélectionné votre certificat SSL.
  • Vous avez activé l’authentification de base et créé une règle d’autorisation pour le compte @administrateur local pour l’accès en lecture-écriture.

Étape 2 : Configuration des paramètres FTP SSL supplémentaires

La stratégie SSL pour FTP est personnalisable sur une base site par site. Différents paramètres peuvent être spécifiés pour les canaux de contrôle et de données. Dans cette étape, vous configurez des paramètres SSL supplémentaires pour votre site FTP qui garantissent que toutes les informations d’identification de l’utilisateur sont chiffrées, même si toutes les autres activités FTP ne le sont pas.

  1. Accédez au Gestionnaire IIS 7.0. Cliquez sur le nœud du site FTP que vous avez créé à l’étape 1. Les icônes pour toutes les fonctionnalités FTP affichées.
    Screenshot that shows the My New F T P Site Home pane.

  2. Pour configurer les options SSL, double-cliquez sur l’icône Paramètres SSL FTP pour ouvrir la page de fonctionnalité des paramètres SSL.
    Screenshot that shows the My New F T P Site Home pane with F T P S S L Settings selected.

  3. Lorsque la page Paramètres SSL FTP s’affiche, sélectionnez l’option Personnalisée, puis cliquez sur le bouton Avancé.
    Screenshot that shows the F T P S S L Settings pane. Custom is selected.

  4. Lorsque la boîte de dialogue Stratégie SSL avancée s’affiche :

    • Sélectionnez l’option Exiger uniquement pour les informations d’identification pour le canal de contrôle.

      Remarque

      Ce paramètre nécessite que tous les noms d’utilisateur et mot de passe soient chiffrés via SSL, mais le client peut choisir de chiffrer toutes les autres activités de canal de contrôle.

    • Sélectionnez l’option Autoriser pour le canal de données.

      Remarque

      Ce paramètre permet au client de choisir s’il faut chiffrer une activité de canal de données.

    • Une fois ces éléments terminés, cliquez sur OK.
      Screenshot that shows the Advanced S S L Policy dialog box.

  5. Dans la page Paramètres SSL FTP, cliquez sur Appliquer dans le volet Actions pour enregistrer les paramètres SSL.
    Screenshot that shows the F T P S S L Settings pane. Apply and Cancel are listed in the Actions pane.

Résumé

Pour récapituler les éléments que vous avez terminés à cette étape :

  • Vous avez configuré la stratégie SSL du canal de contrôle pour exiger que toutes les informations d’identification de l’utilisateur soient chiffrées, et vous avez autorisé les clients FTP à déterminer s’il faut chiffrer toutes les autres activités de canal de contrôle.
  • Vous avez configuré la stratégie SSL du canal de données pour permettre aux clients FTP de déterminer s’il faut chiffrer une activité de canal de données.

Connexion à votre site FTP

À l’étape 1, vous avez créé un site FTP accessible par le compte administrateur. À l’étape 2, vous avez configuré la stratégie SSL du canal de contrôle pour exiger que toutes les informations d’identification de l’utilisateur soient chiffrées tout en permettant aux clients FTP de choisir si tous les autres canaux de contrôle et l’activité du canal de données doivent être chiffrés.

Lors de la connexion au serveur FTP à l’aide d’un client FTP compatible SSL, le serveur FTP prend en charge les options de sécurité explicites suivantes :

  • TLS-C/TLS : utilisez TLS pour la connexion avec les valeurs par défaut RFC2228. Cela signifie qu’il n’existe aucune protection implicite de la connexion de données.
  • TLS-P/SSL : utilisez TLS pour la connexion. Cela signifie que la connexion de données est implicitement protégée.

Ces paramètres peuvent être configurés lors de la spécification des options de connexion SSL dans la plupart des clients FTP tiers.

Ajout de la publication FTP basée sur SSL en modifiant les fichiers de configuration IIS 7.0

Vous pouvez également ajouter une publication FTP basée sur SSL à un site internet existant en modifiant les fichiers de configuration IIS 7.0.

Remarque

La modification de votre fichier applicationHost.config nécessite des autorisations d’administration complètes. Utilisez l’une des deux méthodes suivantes :

  • Connectez-vous à votre ordinateur à l’aide du compte « administrateur » local.

Or

  • Si vous êtes connecté à l’aide d’un compte disposant d’autorisations d’administration qui n’est pas le compte « administrateur » local, ouvrez le bloc-notes à l’aide de l’option « Exécuter en tant qu’administrateur ».

Remarque

L’une des étapes ci-dessus est requise, car le composant de sécurité contrôle de compte d’utilisateur (UAC) dans les systèmes d’exploitation Windows Vista et Windows Server 2008 empêche l’accès à votre fichier applicationHost.config. Pour plus d'informations sur le contrôle de compte d'utilisateur, voir Contrôle de compte d’utilisateur.

Les étapes suivantes vous guident tout au long des paramètres requis pour ajouter la publication FTP pour le site internet par défaut.

Étape 1 : Récupérer le hachage de votre certificat SSL :

  1. Dans la fonctionnalité Certificats de serveur, double-cliquez sur votre certificat SSL. Par exemple, si vous avez suivi l’étape facultative pour créer un certificat auto-signé, vous double-cliquez sur le certificat nommé « Mon certificat FTP ».
  2. Cliquez sur l’onglet Détails .
  3. Faites défiler les champs jusqu’à ce que vous localisiez la valeur de l’empreinte numérique.
  4. Mettez en surbrillance la valeur de l’empreinte numérique, les données s’affichent comme suit :
    « 57 68 6F 61 20 44 75 64 65 2C 20 49 49 53 20 52 6F 63 6B 73 »
  5. Copiez les données hexadécimal de la zone de texte et collez-les dans le presse-papiers. Ensuite, ouvrez le bloc-notes Windows et collez les données dans un document vide.

Remarque

Vous utiliserez ces informations ultérieurement.

Étape 2 : Ajoutez FTP à votre site internet par défaut

  1. À l’aide d’un éditeur de texte tel que le bloc-notes Windows, ouvrez votre fichier applicationHost.config, qui se trouve dans votre %SystemRoot%\System32\inetsrv\config dossier par défaut.

  2. Recherchez la section de votre site internet par défaut. Elle doit ressembler à l’exemple suivant :

    <site name="Default Web Site" id="1">
        <application path="/">
            <virtualDirectory path="/" physicalPath="%SystemDrive%\inetpub\wwwroot" />
        </application>
        <bindings>
            <binding protocol="http" bindingInformation="*:80:" />
        </bindings>
    </site>
    
  3. Créez un élément de liaison dans la collection liaisons. Définissez la valeur de l’attribut de protocole sur le nouvel élément de liaison pour contenir « ftp », puis remplacez la valeur de port de l’attribut bindingInformation par « 21 ». Les paramètres de votre site internet par défaut doivent maintenant ressembler à l’exemple suivant :

    <site name="Default Web Site" id="1">
        <application path="/">
            <virtualDirectory path="/" physicalPath="%SystemDrive%\inetpub\wwwroot" />
        </application>
        <bindings>
            <binding protocol="http" bindingInformation="*:80:" />
            <binding protocol="ftp" bindingInformation="*:21:" />
        </bindings>
    </site>
    
  4. Ajoutez une section <ftpServer> sous la balise de >liaisons< fermante qui contiendra vos paramètres d’authentification et SSL.

    Remarque

    Les paramètres d’authentification des sites FTP sont configurés au niveau du site, contrairement à l’authentification pour les sites internet, qui peuvent être configurés par URL.

    <ftpServer>
        <security>
            <authentication>
                <anonymousAuthentication enabled="false" userName="IUSR" />
                <basicAuthentication enabled="true" />
            </authentication>
            <ssl serverCertHash="" controlChannelPolicy="SslRequire" dataChannelPolicy="SslRequire" />
        </security>
    </ftpServer>
    
  5. Copiez et collez les données d’empreinte du certificat SSL dans l’attribut serverCertHash de l’élément SSL. Supprimez tous les espaces des données d’empreinte numérique.

    Remarque

    Si vous ne convertissez pas les données hexadécimal en majuscules, elles ne s’affichent pas ultérieurement dans le Gestionnaire IIS.

    Vos paramètres de site internet par défaut doivent maintenant contenir quelque chose comme l’exemple suivant :

    <site name="Default Web Site" id="1">
        <application path="/">
            <virtualDirectory path="/" physicalPath="%SystemDrive%\inetpub\wwwroot" />
        </application>
        <bindings>
            <binding protocol="http" bindingInformation="*:80:" />
            <binding protocol="ftp" bindingInformation="*:21:" />
        </bindings>
        <ftpServer>
            <security>
                <authentication>
                    <anonymousAuthentication enabled="false" />
                    <basicAuthentication enabled="true" />
                </authentication>
            </security>
            <ssl serverCertHash="57686F6120447564652C2049495320526F636B73" controlChannelPolicy="SslRequire" dataChannelPolicy="SslRequire" />
        </ftpServer>
    </site>
    
  6. Faites défiler votre fichier applicationHost.config vers le bas et ajoutez une section d’emplacement pour votre site internet par défaut qui contiendra vos paramètres d’autorisation.

    Remarque

    Comme illustré dans cet exemple, les paramètres d’autorisation des sites FTP sont configurés par URL.

    <location path="Default Web Site">
        <system.ftpServer>
            <security>
                <authorization>
                    <add accessType="Allow" users="administrator" permissions="Read, Write" />
                </authorization>
            </security>
        </system.ftpServer>
    </location>
    
  7. Enregistrez votre fichier applicationHost.config.

Vous devez maintenant être en mesure de vous connecter à votre site internet par défaut à l’aide d’un client FTP basé sur SSL.

Résumé

Dans cette tâche, vous avez ajouté la publication FTP basée sur SSL à votre site internet par défaut en modifiant les fichiers de configuration IIS 7.0. Pour récapituler les éléments que vous avez terminés dans cette tâche :

  • Vous avez ajouté une liaison FTP au site internet par défaut.
  • Vous avez activé l’authentification de base FTP et désactivé l’authentification FTP anonyme pour le site internet par défaut.
  • Vous avez configuré le site pour exiger SSL pour toutes les activités de canal de contrôle et de canal de données.
  • Vous avez configuré le compte d’administrateur pour les autorisations en lecture/écriture pour le site internet par défaut.