Procédure : configurer un ordinateur multirésident pour l'accès à SQL Server

Lorsqu'un serveur doit fournir une connexion à plusieurs réseaux ou sous-réseaux, le scénario classique consiste à utiliser un ordinateur multirésident. Bien souvent, cet ordinateur se trouve dans un réseau de périmètre (également appelé sous-réseau filtré). Cette rubrique explique comment configurer SQL Server et le Pare-feu Windows avec fonctions avancées de sécurité pour fournir des connexions réseau à une instance de SQL Server dans un environnement multirésident.

[!REMARQUE]

Un ordinateur multirésident a plusieurs cartes réseau ou a été configuré afin d'utiliser plusieurs adresses IP pour une carte réseau unique. Un ordinateur à deux interfaces réseau a deux cartes réseau ou a été configuré afin d'utiliser deux adresses IP pour une carte réseau unique.

Avant d'aller plus loin dans cette rubrique, vous devez vous familiariser avec les informations fournies dans la rubrique Configuration du Pare-feu Windows pour autoriser l'accès à SQL Server. Cette rubrique contient des informations de base sur le fonctionnement des composants SQL Server avec le pare-feu.

Hypothèses pour cet exemple :

  • L'ordinateur qui exécute SQL Server exécute le système d'exploitation Windows Server 2008 ou Windows Vista. Si vous exécutez Windows Server 2003 ou Windows XP, consultez la section Considérations relatives à l'exécution de Windows Server 2003 ou Windows XP plus loin dans cette rubrique.

  • Il y a deux cartes réseau installées dans l'ordinateur. Une ou plusieurs des cartes réseau peuvent être sans fil. Vous pouvez simuler l'existence de deux cartes réseau en utilisant l'adresse IP d'une carte réseau et l'adresse IP de bouclage (127.0.0.1) en tant que deuxième carte réseau.

  • Pour des raisons de simplicité, cet exemple utilise des adresses IPv4. Les mêmes procédures peuvent être effectuées à l'aide d'adresses IPv6.

    [!REMARQUE]

    Les adresses IPv4 sont une série de quatre nombres appelés octets. Chaque nombre est inférieur à 255 et est séparé des autres nombres par un point, par exemple 127.0.0.1. Les adresses IPv6 sont une série de huit nombres hexadécimaux séparés par des signes deux-points, par exemple fe80:4898:23:3:49a6:f5c1:2452:b994.

  • Les règles de pare-feu peuvent autoriser l'accès via un port spécifique, par exemple le port 1433. Toutefois, les règles de pare-feu peuvent également autoriser l'accès au programme du moteur de base de données SQL Server (sqlservr.exe). Aucune méthode n'est meilleure que l'autre. Dans la mesure où un serveur situé dans un réseau de périmètre est plus vulnérable aux attaques que des serveurs situés sur un intranet, cette rubrique suppose que vous souhaitez disposer d'un contrôle plus précis et que vous voulez sélectionner individuellement les ports que vous ouvrez. C'est la raison pour laquelle cette rubrique part de l'hypothèse que vous configurez SQL Server de sorte qu'il soit à l'écoute sur un port fixe. Pour plus d'informations sur les ports utilisés par SQL Server, consultez Configuration du Pare-feu Windows pour autoriser l'accès à SQL Server.

  • Cet exemple configure l'accès au moteur de base de données à l'aide du port TCP 1433. Les autres ports qui correspondent à l'utilisation de composants SQL Server différents peuvent être configurés à l'aide des mêmes étapes générales.

Les étapes générales de cet exemple sont les suivantes :

  • Déterminez les adresses IP de l'ordinateur.

  • Configurez SQL Server de sorte qu'il soit à l'écoute sur un port TCP spécifique.

  • Configurez le Pare-feu Windows avec fonctions avancées de sécurité.

Procédures facultatives

Si vous connaissez déjà les adresses IP disponibles pour votre ordinateur et utilisées par SQL Server, vous pouvez ignorer ces procédures.

Pour déterminer les adresses IP disponibles sur l'ordinateur

  1. Sur l'ordinateur sur lequel SQL Server est installé, cliquez sur Démarrer, sur Exécuter, tapez cmd, puis cliquez sur OK.

  2. Dans la fenêtre d'invite de commandes, tapez ipconfig, puis appuyez sur ENTRÉE pour lister les adresses IP disponibles sur cet ordinateur.

    [!REMARQUE]

    La commande ipconfig liste parfois de nombreuses connexions possibles, notamment les connexions déconnectées. La commande ipconfig peut lister à la fois les adresses IPv4 et IPv6.

  3. Notez les adresses IPv4 et IPv6 qui sont utilisées. Les autres informations de la liste, telles que les adresses temporaires, les masques de sous-réseau et les passerelles par défaut sont des informations importantes pour la configuration d'un réseau TCP/IP. Toutefois, ces informations ne sont pas utilisées dans cet exemple.

Pour déterminer les adresses IP et les ports utilisés par SQL Server

  1. Cliquez sur Démarrer, pointez sur Tous les programmes, sur Microsoft SQL Server 2008, sur Outils de configuration, puis cliquez sur Gestionnaire de configuration SQL Server.

  2. Dans le Gestionnaire de configuration SQL Server, dans le volet de la console, développez Configuration du réseau SQL Server, développez Protocoles pour <nom de l'instance>, puis double-cliquez sur TCP/IP.

  3. Dans la boîte de dialogue Propriétés TCP/IP, sous l'onglet Adresses IP, plusieurs adresses IP apparaissent au format IP1, IP2, jusqu'à IPAll. Une de ces adresses correspond à l'adresse IP de la carte de bouclage, 127.0.0.1. D'autres adresses IP apparaissent pour chaque adresse IP configurée sur l'ordinateur.

  4. Pour toutes les adresses IP, si la boîte de dialogue Ports TCP dynamiques contient 0, cela indique que le moteur de base de données est à l'écoute sur les ports dynamiques. Cet exemple utilise des ports fixes au lieu de ports dynamiques, lesquels peuvent changer lors d'un redémarrage. Par conséquent, si la boîte de dialogue Ports TCP dynamiques contient 0, supprimez le 0.

  5. Notez le port TCP indiqué pour chaque adresse IP à configurer. Pour cet exemple, supposez que les deux adresses IP sont à l'écoute sur le port par défaut, 1433.

  6. Si vous ne souhaitez pas que SQL Server utilise certains des ports disponibles, sous l'onglet Protocole, remplacez la valeur du paramètre Écouter tout par Non ; sous l'onglet Adresses IP, remplacez ensuite la valeur Actif par Non pour les adresses IP que vous ne souhaitez pas utiliser.

Configuration du Pare-feu Windows avec fonctions avancées de sécurité

Après avoir identifié les adresses IP utilisées par l'ordinateur et les ports utilisés par SQL Server, vous pouvez créer des règles de pare-feu, puis configurer ces règles pour des adresses IP spécifiques.

Pour créer une règle de pare-feu

  1. Sur l'ordinateur où SQL Server est installé, ouvrez une session en tant qu'administrateur.

  2. Cliquez sur Démarrer, sur Exécuter, tapez wf.msc, puis cliquez sur OK.

  3. Dans la boîte de dialogue Contrôle de compte d'utilisateur, cliquez sur Continuer pour utiliser les informations d'identification d'administrateur et ouvrir le composant logiciel enfichable Pare-feu Windows avec fonctions avancées de sécurité.

  4. Dans la page Vue d'ensemble, assurez-vous que le Pare-feu Windows est activé.

  5. Dans le volet gauche, cliquez sur Règles de trafic entrant.

  6. Cliquez avec le bouton droit sur Règles de trafic entrant, puis cliquez sur Nouvelle règle pour ouvrir l'Assistant Nouvelle règle de trafic entrant.

  7. Vous pouvez créer une règle pour le programme SQL Server. Toutefois, dans la mesure où cet exemple utilise un port fixe, sélectionnez Port, puis cliquez sur Suivant.

  8. Dans la page Protocoles et ports, sélectionnez TCP.

  9. Sélectionnez Ports locaux spécifiques. Tapez les numéros de port en les séparant par des virgules, puis cliquez sur Suivant. Dans cet exemple, vous devez configurer le port par défaut ; par conséquent, entrez 1433.

  10. Dans la page Action, passez en revue les options. Dans cet exemple, vous n'utilisez pas le pare-feu pour forcer des connexions sécurisées. Par conséquent, cliquez sur Autoriser la connexion, puis sur Suivant.

    [!REMARQUE]

    Votre environnement peut requérir des connexions sécurisées. Si vous sélectionnez l'une des options de connexions sécurisées, vous devrez peut-être configurer un certificat et l'option Forcer le chiffrement. Pour plus d'informations sur les connexions sécurisées, consultez Chiffrement des connexions à SQL Server et Procédure : activer des connexions chiffrées dans le moteur de base de données (Gestionnaire de configuration SQL Server).

  11. Dans la page Profil, sélectionnez un ou plusieurs profils pour la règle. Si vous n'avez pas l'habitude d'utiliser des profils de pare-feu, cliquez sur le lien En savoir plus sur les profils dans le programme de pare-feu.

    • Si l'ordinateur est un serveur et s'il est disponible uniquement lorsqu'il est connecté à un domaine, sélectionnez Domaine, puis cliquez sur Suivant.

    • Si l'ordinateur est un ordinateur portable, il utilise probablement plusieurs profils lorsqu'il se connecte aux différents réseaux. Pour un ordinateur portable, vous pouvez configurer des fonctionnalités d'accès distinctes selon les différents profils. Par exemple, vous pouvez autoriser l'accès lorsque l'ordinateur utilise le profil Domaine mais refuser l'accès lorsqu'il utilise le profil Public.

  12. Dans la page Nom, indiquez le nom et la description de la règle, puis cliquez sur Terminer.

  13. Répétez cette procédure afin de créer une autre règle pour chaque adresse IP utilisée par SQL Server.

Après avoir créé une ou plusieurs règles, procédez comme suit afin de configurer l'utilisation d'une règle pour chaque adresse IP de l'ordinateur.

Pour configurer la règle de pare-feu pour des adresses IP spécifiques

  1. Dans la page Règles de trafic entrant du Pare-feu Windows avec fonctions avancées de sécurité, cliquez avec le bouton droit sur la règle que vous venez de créer, puis cliquez sur Propriétés.

  2. Dans la boîte de dialogue Propriétés de règle, sélectionnez l'onglet Étendue.

  3. Dans la zone Adresse IP locale, sélectionnez Ces adresses IP, puis cliquez sur Ajouter.

  4. Dans la boîte de dialogue Adresse IP, sélectionnez Cette adresse IP ou ce sous-réseau, puis tapez l'une des adresses IP que vous souhaitez configurer.

  5. Cliquez sur OK.

  6. Dans la zone Adresse IP distante, sélectionnez Ces adresses IP, puis cliquez sur Ajouter.

  7. Utilisez la boîte de dialogue Adresse IP pour configurer la connectivité de l'adresse IP spécifique de l'ordinateur. Vous pouvez activer les connexions d'adresses IP spécifiques, de plages d'adresses IP, de sous-réseaux entiers ou de certains ordinateurs. Pour configurer correctement cette option, vous devez avoir une bonne compréhension du réseau. Pour plus d'informations sur le réseau, consultez l'administrateur réseau.

  8. Pour fermer la boîte de dialogue Adresse IP, cliquez sur OK ; cliquez ensuite sur OK pour fermer la boîte de dialogue Propriétés de règle.

  9. Pour configurer les autres adresses IP sur un ordinateur multirésident, répétez cette procédure en utilisant une autre adresse IP et une autre règle.

Considérations relatives à l'exécution de Windows Server 2003 ou Windows XP

La configuration d'un ordinateur multirésident qui exécute les systèmes d'exploitation Windows Server 2003 ou Windows XP est semblable à la configuration de Windows Server 2003 et Windows Vista. Toutefois, dans la mesure où le Pare-feu Windows avec fonctions avancées de sécurité n'est pas disponible, vous devez utiliser des ports différents pour chaque adresse IP. Les étapes générales sont les suivantes.

Pour configurer des règles de pare-feu pour des adresses IP spécifiques sur Windows Server 2003 ou Windows XP

  1. Configurez le moteur de base de données de sorte qu'il soit à l'écoute sur plusieurs points de terminaison TDS. Pour plus d'informations, consultez Procédure : configurer le moteur de base de données de manière à écouter sur plusieurs ports TCP.

  2. Utilisez le Gestionnaire de configuration SQL Server pour désactiver l'écoute sur toutes les adresses IP en affectant à l'option Écouter tout la valeur Non.

  3. Configurez SQL Server de sorte qu'il soit à l'écoute sur un autre port TCP pour chaque adresse IP, puis redémarrez SQL Server.

  4. Utilisez le Pare-feu Windows afin de créer une règle de pare-feu pour chaque port, puis utilisez les paramètres d'étendue pour limiter chaque port aux connexions des adresses IP, plages d'adresses IP, sous-réseaux entiers ou ordinateurs nommés souhaités.