Comment faire pour configurer RPC de manière à utiliser certains ports et comment sécuriser ces ports avec IPsec

Traductions disponibles Traductions disponibles
Numéro d'article: 908472 - Voir les produits auxquels s'applique cet article
Agrandir tout | Réduire tout

Résumé

Cet article explique la façon de configurer RPC pour utiliser une plage spécifique de ports dynamiques et la façon de sécuriser les ports de cette plage en utilisant une stratégie IPsec (Internet Protocol security). Par défaut, RPC utilise des ports dans la plage de ports éphémères (1024-5000) lorsqu'il affecte des ports aux applications RPC qui doivent écouter à un point de terminaison TCP. Ce comportement peut rendre la restriction d'accès à ces ports difficile pour les administrateurs réseau. Cet article décrit des méthodes permettant de réduire le nombre de ports disponibles pour les applications RPC et la façon de limiter l'accès à ces ports à l'aide d'une stratégie IPsec basée sur le Registre.

Dans la mesure où les étapes citées dans cet article impliquent des modifications à l'échelle de l'ordinateur nécessitant le redémarrage de l'ordinateur, elles doivent dans un premier temps être effectuées hors de l'environnement de production afin d'identifier les problèmes de compatibilité d'applications qu'elles pourraient provoquer.

Plus d'informations

Plusieurs tâches de configuration doivent être effectuées pour déplacer et réduire les ports RPC et en limiter l'accès.

Dans un premier temps, la plage de ports dynamiques RPC doit être limitée à une plage plus petite, mieux gérable, qu'il sera plus facile de bloquer à l'aide d'un pare-feu ou d'une stratégie IPsec. Par défaut, RPC affecte dynamiquement des ports dans la plage comprise entre 1024 et 5000 pour les points de terminaison qui ne spécifient pas de port d'écoute.

Remarque Cet article utilise la plage de ports de 5001 à 5021 pour éviter d'épuiser les ports éphémères et réduire le nombre de ports disponibles aux points de terminaison RPC de 3976 à 20.

Une stratégie IPsec doit ensuite être créée afin de limiter l'accès à cette plage de ports pour refuser l'accès à tous les hôtes présents sur le réseau.

Enfin, il est possible de mettre à jour la stratégie IPsec de manière à accorder à certaines adresses IP ou certains sous-réseaux l'accès aux ports RPC bloqués et à exclure tous les autres.

Pour démarrer la reconfiguration de la plage de ports dynamiques RPC, téléchargez l'outil de configuration RPC (RPCCfg.exe) et copiez-le sur la station de travail ou sur le serveur à reconfigurer. Pour cela, reportez-vous au site Web de Microsoft à l'adresse suivante  :
http://www.microsoft.com/downloads/details.aspx?FamilyID=0f9cde2f-8632-4da8-ae70-645e1ddaf369&DisplayLang=en
Pour effectuer ensuite les tâches de création d'une stratégie IPsec, téléchargez l'outil Stratégie de sécurité des protocoles Internet (Ipsecpol.exe) et copiez-le sur la station de travail ou sur le serveur à reconfigurer. Pour cela, reportez-vous au site Web de Microsoft à l'adresse suivante :
http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=7D40460C-A069-412E-A015-A2AB904B7361
Remarque Pour créer une stratégie IPsec pour Microsoft Windows XP ou une version ultérieure de Windows, utilisez l'outil Ipseccmd.exe, qui fait partie des outils de support de Windows XP. La syntaxe et l'utilisation de IPseccmd.exe sont analogues à ceux de Ipsecpol.exe. Pour plus d'informations sur les outils de support de Windows XP, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la Base de connaissances Microsoft.
838079 Outils de support de Windows XP Service Pack 2

Déplacer et réduire la plage de ports dynamiques RPC à l'aide de l'outil RPCCfg.exe

Pour déplacer et réduire la plage de ports dynamiques RPC à l'aide de l'outil RPCCfg.exe, procédez comme suit :
  1. Copiez RPCCfg.exe sur le serveur à configurer.
  2. À l'invite de commandes, tapez rpccfg.exe -pe 5001-5021 -d 0.
    Remarque L'utilisation de cette plage de ports est recommandée avec les points de terminaison RPC car il est probable que les ports de cette plage ne seront pas affectés à d'autres applications. Par défaut, RPC utilise la plage de ports comprise entre 1024 et 5000 pour affecter des ports aux points de terminaison. Cependant, les ports de cette plage sont également affectés dynamiquement pour être utilisés par le système d'exploitation Windows pour toutes les applications de sockets Windows. Il est ainsi possible qu'ils soient épuisés sur les serveurs à fort taux d'utilisation tels que les serveurs Terminal Server et les serveurs de niveau intermédiaire qui émettent de nombreux appels sortants vers des systèmes distants.

    Par exemple, quand Internet Explorer contacte un serveur Web au port 80, il écoute la réponse du serveur à un port de la plage 1024-5000. Un serveur COM de niveau intermédiaire qui effectue des appels sortants vers des serveurs distants utilise également un port de cette plage pour la réponse entrante à cet appel. Déplacer la plage de ports utilisée par RPC pour ses points de terminaison à la plage 5001 diminue la probabilité d'utilisation de ces ports par d'autres applications.
    Pour plus d'informations sur l'utilisation de ports éphémères dans les systèmes d'exploitation Windows, visitez les sites Web Microsoft aux adresses suivantes  :

Utilisation d'une stratégie IPsec ou d'une stratégie de pare-feu pour bloquer l'accès aux ports vulnérables sur l'hôte concerné

Dans les commandes fournies dans la section suivante, le texte apparaissant entre des signes de pourcentage (%) désigne le texte de commande qui doit être saisi par la personne qui crée la stratégie IPsec. Par exemple, si le texte « %IPSECTOOL% » apparaît, la personne qui crée la stratégie doit le remplacer de la manière suivante :
  • Pour Windows 2000, remplacez « %IPSECTOOL% » par « ipsecpol.exe ».
  • Pour Windows XP ou une version ultérieure de Windows, remplacez « %IPSECTOOL% » par « ipseccmd.exe ».
Pour plus d'informations sur la façon d'utiliser IPsec pour bloquer les ports, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la Base de connaissances Microsoft.
813878 Comment faire pour bloquer des ports et protocoles réseau spécifiques en utilisant IPSec

Bloquer l'accès au mappeur de point de terminaison RPC pour toutes les adresses IP

Pour bloquer l'accès au mappeur de point de terminaison RPC pour toutes les adresses IP, utilisez la syntaxe suivante.

Remarque Sur les systèmes d'exploitation Windows XP et ultérieurs, utilisez Ipseccmd.exe. Pour Windows 2000, utilisez Ipsecpol.exe.
%IPSECTOOL% -w REG -p "Block RPC Ports" -r "Block Inbound TCP 135 Rule" -f *=0:135:TCP -n BLOCK
Remarque Ne tapez pas « %IPSECTOOL% » dans cette commande. « %IPSECTOOL% » représente la partie de la commande devant être personnalisée. Par exemple, sur Windows 2000, tapez la commande suivante à partir d'un répertoire contenant Ipsecpol.exe pour bloquer tous les accès entrants à TCP 135 :
ipsecpol.exe -w REG -p "Block RPC Ports" -r "Block Inbound TCP 135 Rule" -f *=0:135:TCP -n BLOCK
Sur Windows XP et versions ultérieures, tapez la commande suivante à partir d'un répertoire contenant Ipsecpol.exe pour bloquer tous les accès entrants à TCP 135 :
ipseccmd.exe -w REG -p "Block RPC Ports" -r "Block Inbound TCP 135 Rule" -f *=0:135:TCP -n BLOCK

Bloquer l'accès à la page de ports dynamiques RPC pour toutes les adresses IP

Pour bloquer l'accès à la page de ports dynamiques RPC pour toutes les adresses IP, utilisez la syntaxe suivante.

Remarque Sur les systèmes d'exploitation Windows XP et ultérieurs, utilisez Ipseccmd.exe. Pour Windows 2000, utilisez Ipsecpol.exe.
%IPSECTOOL% -w REG -p "Block RPC Ports" -r "Block Inbound TCP %PORT% Rule" -f *=0:%PORT%:TCP -n BLOCK
Remarque Ne tapez pas « %IPSECTOOL% » ou « %PORT% » dans cette commande. « %IPSECTOOL% » et « %PORT% » représentent les parties à personnaliser de la commande. Par exemple, tapez la commande suivante sur des hôtes Windows 2000 pour bloquer tous les accès entrants à TCP 5001 :
ipsecpol.exe -w REG -p "Block RPC Ports" -r "Block Inbound TCP 5001 Rule" -f *=0:5001:TCP -n BLOCK
Pour bloquer tous les accès entrants à TCP 5001, tapez la commande suivante sur les hôtes Windows XP et versions ultérieures :
ipseccmd.exe -w REG -p "Block RPC Ports" -r "Block Inbound TCP 5001 Rule" -f *=0:5001:TCP -n BLOCK
Répétez cette commande pour chaque port RPC à bloquer en modifiant le numéro de port indiqué dans cette commande. Les ports devant être bloqués se trouvent dans la plage 5001-5021.

Remarque N'oubliez pas de modifier le numéro de port dans le nom de la règle (commutateur -r) et dans le filtre (commutateur -f).

Facultatif : Accordez l'accès au mappeur de point de terminaison RPC pour des sous-réseaux spécifiques si nécessaire

Si vous devez accorder à des sous-réseaux spécifiques un accès à des ports RPC restreints, vous devez d'abord autoriser l'accès au mappeur de point de terminaison RPC que vous avez bloqué précédemment. Pour accorder l'accès de sous-réseau spécifique au mappeur de point de terminaison RPC, utilisez la commande suivante :
%IPSECTOOL% -w REG -p "Block RPC Ports" -r "Allow Inbound TCP 135 from %SUBNET% Rule" -f %SUBNET%/%MASK%=0:135:TCP -n PASS
Remarque Dans cette commande, les affirmations suivantes s'appliquent :
  • « %IPSECTOOL% » représente la commande à utiliser. Cette commande est soit « ipsecpol.exe », soit « ipseccmd.exe »,"selon le système d'exploitation que vous configurez.
  • « %SUBNET% » désigne le sous-réseau IP distant auquel vous souhaitez accorder l'accès, par exemple, 10.1.1.0.
  • « %MASK% » représente le masque de sous-réseau à utiliser, par exemple, 255.255.255.0.

    Par exemple, la commande suivante permet à tous les hôtes du sous-réseau 10.1.1.0/255.255.255.0 de se connecter au port TCP 135. Tous les autres hôtes verront leur connexion refusée par la règle de blocage par défaut créée précédemment pour ce port.
    %IPSECTOOL% -w REG -p "Block RPC Ports" -r "Allow Inbound TCP Port 135 from 10.1.1.0 Rule" -f 10.1.1.0/255.255.255.0=0:135:TCP -n PASS

Facultatif : Accorder l'accès à la nouvelle plage de ports dynamiques RPC pour des sous-réseaux spécifiques si nécessaire

Chaque sous-réseau autorisé à accéder au mappeur de point de terminaison RPC doit également disposer d'un accès à tous les ports de la nouvelle plage de ports dynamiques RPC (5001-5021).

Si vous autorisez les sous-réseaux à accéder au mappeur de point de terminaison RPC mais pas à la plage de ports dynamiques, l'application peut cesser de répondre ou vous pouvez rencontrer d'autres problèmes.

La commande suivante accorde un accès de sous-réseau spécifique à un port situé dans la nouvelle plage de ports dynamiques RPC :
%IPSECTOOL% -w REG -p "Block RPC Ports" -r "Allow Inbound TCP %PORT% from %SUBNET% Rule" -f %SUBNET%/%MASK%=0:%PORT%:TCP -n PASS
Remarque Dans cette commande, les affirmations suivantes s'appliquent :
  • « %IPSECTOOL% » représente la commande à utiliser. Cette commande est soit « ipsecpol.exe », soit « ipseccmd.exe », selon le système d'exploitation que vous configurez.
  • « %PORT% » désigne le port de la plage de ports dynamiques auquel vous accordez l'accès.
  • « %SUBNET% » désigne le sous-réseau IP distant auquel vous souhaitez accorder l'accès, par exemple, 10.1.1.0.
  • " « %MASK% » représente le masque de sous-réseau à utiliser, par exemple, 255.255.255.0.

    Par exemple, la commande suivante permet à tous les hôtes du sous-réseau 10.1.1.0/255.255.255.0 de se connecter au port TCP 5001. Tous les autres hôtes verront leur connexion refusée par la règle de blocage par défaut créée précédemment pour ce port.
    %IPSECTOOL% -w REG -p "Block RPC Ports" -r "Allow Inbound TCP Port 5001 from 10.1.1.0 Rule" -f 10.1.1.0/255.255.255.0=0:5001:TCP -n PASS
Remarque Cette commande doit être répétée pour chaque sous-réseau et port de la nouvelle plage de ports dynamiques RPC.

Affectation de la stratégie IPsec

Remarque Les commandes fournies dans cette section prennent effet immédiatement.

Une fois que vous avez créé toutes les règles de blocage et toutes les règles d'autorisation facultatives pour les ports RPC configurés, affectez la stratégie à l'aide de la commande suivante :
%IPSECTOOL% -w REG -p "Block RPC Ports" ?x
Remarque Pour supprimer immédiatement l'affectation de la stratégie, utilisez la commande suivante :
%IPSECTOOL% -w REG -p "Block RPC Ports" ?y
Remarque Pour supprimer la stratégie du Registre, utilisez la commande suivante :
%IPSECTOOL% -w REG -p "Block RPC Ports" -o
Vous devez redémarrer l'hôte pour que les modifications soient prises en compte.

Remarques
  • Les modifications de la configuration RPC nécessitent un redémarrage.
  • Les modifications apportées à la stratégie IPsec prennent effet immédiatement, sans redémarrage de l'hôte.
Après le redémarrage de la station de travail ou de l'hôte, toutes les interfaces RPC qui utilisent la séquence de protocole ncacn_ip_tcp et ne spécifient pas de port TCP particulier auquel se rattacher se verront affecter un port appartenant à cette plage par RPC lors du démarrage du serveur RPC.

Remarque Le serveur peut nécessiter plus de 20 ports TCP. Vous pouvez utiliser la commande rpcdump.exe pour compter les points de terminaison RPC liés à un port TCP et augmenter ce nombre si nécessaire. Pour plus d'informations sur la procédure d'obtention de l'outil RPC Dump, visitez le site Web de Microsoft à l'adresse suivante :
http://www.microsoft.com/downloads/details.aspx?displaylang=en&familyid=9d467a69-57ff-4ae7-96ee-b18c4790cffd

Propriétés

Numéro d'article: 908472 - Dernière mise à jour: vendredi 6 novembre 2009 - Version: 6.0
Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft Windows Server 2003 Service Pack 1 sur le système suivant
    • Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
    • Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
    • Microsoft Windows Server 2003, Standard Edition (32-bit x86)
    • Microsoft Windows Server 2003, Web Edition
  • Microsoft Windows 2000 Server SP4 sur le système suivant
    • Microsoft Windows 2000 Professionnel
    • Microsoft Windows 2000 Server
  • Microsoft Windows XP Home Edition SP2
  • Microsoft Windows XP Media Center Edition 2005
  • Microsoft Windows XP Professional SP2
  • Microsoft Windows XP Tablet PC Edition 2005
Mots-clés : 
kbinfo KB908472
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.

Envoyer des commentaires

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com