Jak nakonfigurovat službu Vzdálené volání procedur na používání určitých portů a jak tyto porty zabezpečit pomocí protokolu IPsec

Překlady článku Překlady článku
ID článku: 908472 - Produkty, které se vztahují k tomuto článku.
Rozbalit všechny záložky | Minimalizovat všechny záložky

Souhrn

Tento článek popisuje, jak nakonfigurovat službu Vzdálené volání procedur na používání konkrétního dynamického rozsahu portů a jak zabezpečit porty v tomto rozsahu pomocí zásad IPsec (Internet Protocol security). Služba Vzdálené volání procedur při přiřazování portů aplikacím vzdáleného volání procedur, které musí naslouchat na koncovém bodě TCP, používá ve výchozím nastavení porty v přechodném rozsahu portů (1024-5000). Vzhledem k tomuto chování může být omezení přístupu k těmto portům pro správce sítě problematické. V tomto článku jsou uvedeny informace o možnostech snížení počtu portů dostupných pro aplikace vzdáleného volání procedur a omezení přístupu k těmto portům pomocí zásady IPsec založené na nastavení registru.

Kroky popsané v tomto článku zahrnují provádění změn v celém počítači, při kterých je nutné restartovat počítač. Všechny tyto kroky je tedy potřeba provést nejdříve v jiném než provozním prostředí a zjistit, k jakým problémům z hlediska kompatibility aplikací by mohlo v důsledku těchto změn docházet.

Další informace

Existuje několik konfiguračních úloh, které musí být provedeny, aby bylo možné přemístit porty služby Vzdálené volání procedur, snížit jejich počet a omezit k nim přístup.

Nejdříve je nutné dynamický rozsah portů služby Vzdálené volání procedur omezit na menší a lépe spravovatelný rozsah portů, který by bylo snazší blokovat pomocí brány firewall nebo zásad IPsec. Služba Vzdáleného volání procedur dynamicky přiřazuje porty v rozsahu od 1024 do 5000 pro koncové body, u kterých není určeno, na kterém portu mají naslouchat.

Poznámka: V tomto článku se používá rozsah portů 5001 až 5021, aby se zabránilo vyčerpání dočasných portů a bylo možné snížit počet portů dostupných pro koncové body služby Vzdálené volání procedur z 3 976 na 20.

Dále musí být vytvořena zásada IPsec, pomocí které by bylo možné omezit přístup k tomuto rozsahu portů za účelem zakázání přístupu všem hostitelům v síti.

Nakonec lze zásadu IPsec aktualizovat tak, aby bylo možné určitým adresám IP nebo podsítím udělit přístup k blokovaným portům služby Vzdálené volání procedur a všechny ostatní vyloučit.

Před zahájením překonfigurace dynamického rozsahu portů služby Vzdálené volání procedur stáhněte konfigurační nástroj služby Vzdálené volání procedur (RPCCfg.exe) a potom ho zkopírujte do pracovní stanice nebo na server, který bude překonfigurován. Chcete-li to provést, navštivte následující web společnosti Microsoft:
http://www.microsoft.com/downloads/details.aspx?FamilyID=0f9cde2f-8632-4da8-ae70-645e1ddaf369&DisplayLang=en
Za účelem provedení následných úloh vytváření zásad IPsec stáhněte nástroj zásad IPSec (Ipsecpol.exe) a potom jej zkopírujte do pracovní stanice nebo na server, který bude překonfigurován. Chcete-li to provést, navštivte následující web společnosti Microsoft:
http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=7D40460C-A069-412E-A015-A2AB904B7361
Poznámka: Za účelem vytvoření zásad IPsec pro systém Microsoft Windows XP nebo pro novější verzi operačního systému Windows použijte nástroj Ipseccmd.exe. Nástroj Ipseccmd.exe je součástí nástrojů podpory systému Windows XP. Syntaxe a použití nástroje IPseccmd.exe jsou stejné jako syntaxe a použití nástroje Ipsecpol.exe. Další informace o nástrojích podpory systému Windows XP najdete v následujícím článku znalostní báze Microsoft Knowledge Base:
838079 Nástroje podpory aktualizace Service Pack 2 systému Windows XP

Přemístění a zmenšení dynamického rozsahu portů služby Vzdálené volání procedur pomocí nástroje RPCCfg.exe

Při přemísťování a zmenšování dynamického rozsahu portů služby Vzdálené volání procedur pomocí nástroje RPCCfg.exe postupujte takto:
  1. Zkopírujte soubor RPCCfg.exe na server, který chcete nakonfigurovat.
  2. Na příkazovém řádku zadejte příkaz rpccfg.exe -pe 5001-5021 -d 0.
    Poznámka: Tento rozsah portů se doporučuje používat pro koncové body služby Vzdálené volání procedur, protože u portů v tomto rozsahu není velká pravděpodobnost, že by byly přiděleny k použití v jiných aplikacích. Ve výchozím nastavení služba Vzdálené volání procedur používá rozsah portů 1024 až 5000 pro přidělování portů ke koncovým bodům. Porty v tomto rozsahu jsou však také dynamicky přidělovány k použití v operačním systému Windows pro všechny aplikace soketů systému Windows. Může tak dojít k tomu, že budou všechny využity na intenzivně využívaných serverech, jako jsou například terminálové servery a servery střední vrstvy, které uskutečňují mnoho odchozích volání do vzdálených systémů.

    Pokud například aplikace Internet Explorer kontaktuje webový server na portu 80, naslouchá na portu v rozsahu 1024-5000 a čeká na odpověď ze serveru. Server COM střední vrstvy, který uskutečňuje odchozí volání na jiné vzdálené servery, také využívá port v tomto rozsahu pro příchozí odpověď na toto volání. Přesunutím rozsahu portů, které služba Vzdálené volání procedur využívá pro své koncové body, do rozsahu portů 5001 snížíte pravděpodobnost, že se tyto porty budou využívat v jiných aplikacích.
    Další informace o využívání dočasných portů v operačních systémech Windows získáte na následujících webech společnosti Microsoft.

Použití zásady protokolu IPsec nebo zásady brány firewall k blokování přístupu ke zranitelným portům na příslušném hostiteli

U příkazů v následujícím oddílu má jakýkoli text zobrazený mezi symboly procent (%) představovat text příkazu, který musí zadat osoba vytvářející zásadu protokolu IPsec. Pokud se například v příkazu objeví text "%IPSEC_NÁSTROJ%", měla by osoba vytvářející zásadu tento text nahradit následujícím způsobem:
  • V případě systému Windows 2000 nahraďte text "%IPSEC_NÁSTROJ%" textem "ipsecpol.exe".
  • V případě systému Windows XP nebo novější verze systému Windows nahraďte text "%IPSEC_NÁSTROJ%" textem "ipseccmd.exe".
Další informace o blokování portů pomocí protokolu IPSec získáte v následujícím článku znalostní báze Microsoft Knowledge Base:
813878 Jak blokovat konkrétní síťové protokoly a porty pomocí protokolu IPSec (Tento článek může obsahovat odkazy na anglický obsah (dosud nepřeložený).)

Blokování přístupu k mapovači koncových bodů služby Vzdálené volání procedur pro všechny adresy IP

Chcete-li blokovat přístup k mapovači koncových bodů služby Vzdálené volání procedur pro všechny adresy IP, použijte následující syntaxi.

Poznámka: V systému Windows XP a novějších operačních systémech použijte nástroj Ipseccmd.exe. V systému Windows 2000 použijte nástroj Ipsecpol.exe (Windows 2000).
%IPSEC_NÁSTROJ% -w REG -p "Blokování portů služby Vzdálené volání procedur" -r "Pravidlo blokování příchozího portu TCP 135" -f *=0:135:TCP -n BLOCK
Poznámka: Nezadávejte v tomto příkazu text "%IPSEC_NÁSTROJ%". Text "%IPSEC_NÁSTROJ%" představuje v příkazu část, kterou je nutné upravit. Například v systému Windows 2000 zadejte z adresáře obsahujícího nástroj Ipsecpol.exe následující příkaz. Tímto příkazem zablokujete všechna příchozí data na portu TCP 135:
ipsecpol.exe -w REG -p "Blokování portů služby Vzdálené volání procedur" -r "Pravidlo blokování příchozího portu TCP 135" -f *=0:135:TCP -n BLOCK
V systému Windows XP a novějších operačních systémech zadejte z adresáře obsahujícího nástroj Ipseccmd.exe následující příkaz. Tímto příkazem zablokujete všechna příchozí data na portu TCP 135:
ipseccmd.exe -w REG -p "Blokování portů služby Vzdálené volání procedur" -r "Pravidlo blokování příchozího portu TCP 135" -f *=0:135:TCP -n BLOCK

Blokování přístupu k dynamickému rozsahu portů služby Vzdálené volání procedur pro všechny adresy IP

Chcete-li blokovat přístup k dynamickému rozsahu portů služby Vzdálené volání procedur pro všechny adresy IP, použijte následující syntaxi.

Poznámka: V systému Windows XP a novějších operačních systémech použijte nástroj Ipseccmd.exe. V systému Windows 2000 použijte nástroj Ipsecpol.exe (Windows 2000).
%IPSEC_NÁSTROJ% -w REG -p "Blokování portů služby Vzdálené volání procedur" -r "Pravidlo blokování příchozího portu TCP %PORT%" -f *=0:%PORT%:TCP -n BLOCK
Poznámka: Nezadávejte v tomto příkazu text "%IPSEC_NÁSTROJ%" ani "%PORT%". Text "%IPSEC_NÁSTROJ%" a "%PORT%" představuje v příkazu část, kterou je nutné upravit. Například zadáním následujícího příkazu v hostitelích systému Windows 2000 zablokujete veškerý příchozí přístup k portu TCP 5001:
ipsecpol.exe -w REG -p "Blokování portů služby Vzdálené volání procedur" -r "Pravidlo blokování příchozího portu TCP 5001" -f *=0:5001:TCP -n BLOCK
Chcete-li zablokovat veškerý příchozí přístup k portu TCP 5001, zadejte na hostitelích systému Windows XP a na hostitelích novějších operačních systémů Windows následující příkaz:
ipseccmd.exe -w REG -p "Blokování portů služby Vzdálené volání procedur" -r "Pravidlo blokování příchozího portu TCP 5001" -f *=0:5001:TCP -n BLOCK
Opakujte tento příkaz pro každý port služby Vzdálené volání procedur, který musí být blokován, a to změnou čísla portu, které je uvedeno v tomto příkazu. Porty, které je nutné blokovat, se nacházejí v rozsahu 5001-5021.

Poznámka: Nezapomeňte změnit číslo portu v názvu pravidla (přepínač -r) a ve filtru (přepínač -f).

Nepovinné: Udělení přístupu k mapovači koncových bodů služby Vzdálené volání procedur pro konkrétní podsítě (pokud je nutné přístup udělit)

Jestliže je nutné udělit konkrétním podsítím přístup k portům služby Vzdálení volání procedur s omezeným přístupem, je třeba nejdříve těmto podsítím udělit přístup k mapovači koncových bodů služby Vzdálené volání procedur, který jste dříve zablokovali. Chcete-li konkrétní podsíti udělit přístup k mapovači koncových bodů služby Vzdálené volání procedur, použijte následující příkaz:
%IPSEC_NÁSTROJ% -w REG -p "Blokování portů služby Vzdálené volání procedur" -r "Pravidlo povolení příchozího portu TCP 135 z podsítě %PODSÍŤ%" -f %PODSÍŤ%/%MASKA%=0:135:TCP -n PASS
Poznámka: V tomto příkazu se používají následující příkazy:
  • "%IPSEC_NÁSTROJ%" představuje příkaz, který má být použit. Může se jednat o příkaz "ipsecpol.exe" nebo "ipseccmd.exe". To, který příkaz bude použit, závisí na operačním systému, který konfigurujete.
  • "%PODSÍŤ%" představuje podsíť vzdálené adresy IP, které chcete udělit přístup, například 10.1.1.0.
  • "%MASKA%" představuje masku podsítě, která má být použita, například 255.255.255.0.

    Například následující příkaz umožňuje všem hostitelům z podsítě 10.1.1.0/255.255.255.0 připojovat se k portu TCP 135. Všem ostatním hostitelům bude připojení odepřeno na základě výchozího pravidla blokování, které bylo pro tento port vytvořeno dříve.
    %IPSEC_NÁSTROJ% -w REG -p "Blokování portů služby Vzdálené volání procedur" -r "Pravidlo povolení příchozího portu TCP 135 z podsítě 10.1.1.0" -f 10.1.1.0/255.255.255.0=0:135:TCP -n PASS

Nepovinné: Udělení přístupu k novému dynamickému rozsahu portů služby Vzdálené volání procedur pro konkrétní podsítě (pokud je nutné přístup udělit)

Každé podsíti, které byl dříve udělen přístup k mapovači koncových bodu služby Vzdálené volání procedur, by měl být také udělen přístup ke všem portům v novém dynamickém rozsahu portů služby Vzdálené volání procedur (5001-5021).

Pokud povolíte podsítím přístup k mapovači koncových bodů služby Vzdálené volání procedur, nikoli však k dynamickému rozsahu portů, může dojít k tomu, že aplikace přestane reagovat nebo může docházet k dalším potížím.

Zadáním následujícího příkazu udělíte konkrétní podsíti přístup k portu v novém dynamickém rozsahu portů služby Vzdálené volání procedur:
%IPSEC_NÁSTROJ% -w REG -p "Blokování portů služby Vzdálené volání procedur" -r "Pravidlo povolení příchozího portu TCP %PORT% z podsítě %PODSÍŤ%" -f %PODSÍŤ%/%MASKA%=0:%PORT%:TCP -n PASS
Poznámka: V tomto příkazu se používají následující příkazy:
  • "%IPSEC_NÁSTROJ%" představuje příkaz, který má být použit. Může se jednat o příkaz "ipsecpol.exe" nebo "ipseccmd.exe". To, který příkaz bude použit, závisí na operačním systému, který konfigurujete.
  • "%PORT%" představuje port v dynamickém rozsahu portů, ke kterému chcete udělit přístup.
  • "%PODSÍŤ%" představuje podsíť vzdálené adresy IP, které chcete udělit přístup, například 10.1.1.0.
  • " %MASKA%" představuje masku podsítě, která má být použita, například 255.255.255.0.

    Například následující příkaz umožňuje všem hostitelům z podsítě 10.1.1.0/255.255.255.0 připojovat se k portu TCP 5001. Všem ostatním hostitelům bude připojení odepřeno na základě výchozího pravidla blokování, které bylo pro tento port vytvořeno dříve.
    %IPSEC_NÁSTROJ% -w REG -p "Blokování portů služby Vzdálené volání procedur" -r "Pravidlo povolení příchozího portu TCP 5001 z podsítě 10.1.1.0" -f 10.1.1.0/255.255.255.0=0:5001:TCP -n PASS
Poznámka: Tento příkaz je potřeba opakovat pro každou podsíť a pro každý port v novém dynamickém rozsahu portů služby Vzdálené volání procedur.

Přiřazení zásady IPsec

Poznámka: Zadání příkazů uvedených v této části se projeví okamžitě.

Po vytvoření všech pravidel blokování a nepovinně i všech pravidel povolení pro nakonfigurované porty služby Vzdálené volání procedur přiřaďte zásadu pomocí následujícího příkazu:
%IPSEC_NÁSTROJ% -w REG -p "Blokování portů služby Vzdálené volání procedur" –x
Poznámka: Přiřazení zásady lze také ihned zrušit zadáním následujícího příkazu:
%IPSEC_NÁSTROJ% -w REG -p "Blokování portů služby Vzdálené volání procedur" –y
Poznámka: Chcete-li zásadu odstranit z registru, použijte následující příkaz:
%IPSEC_NÁSTROJ% -w REG -p "Blokování portů služby Vzdálené volání procedur" -o
Změny se projeví až po restartování hostitele.

Poznámky
  • Změny konfigurace služby Vzdálené volání procedur vyžadují restartování.
  • Změny zásady IPsec se projeví okamžitě a nevyžadují restartování.
Po restartování pracovní stanice nebo serveru bude po spuštění serveru služby Vzdálené volání procedur všem rozhraním služby Vzdálené volání procedur, která využívají sekvenci protokolu ncacn_ip_tcp a nezadávají konkrétní port TCP, na nějž se mají vázat, přidělen port z tohoto rozsahu v režimu runtime služby Vzdálené volání procedur.

Poznámka: Je možné, že server bude vyžadovat více než 20 portů TCP. Pomocí příkazu rpcdump.exe můžete zjistit počet koncových bodů služby Vzdálené volání procedur, které jsou vázány na port TCP, a v případě potřeby tento počet zvýšit. Další informace o tom, jak získat nástroj Rpcdump.exe, naleznete na následujícím webu společnosti Microsoft:
http://www.microsoft.com/downloads/details.aspx?displaylang=en&familyid=9d467a69-57ff-4ae7-96ee-b18c4790cffd

Vlastnosti

ID článku: 908472 - Poslední aktualizace: 6. listopadu 2009 - Revize: 6.0
Informace v tomto článku jsou určeny pro produkt:
  • Microsoft Windows Server 2003 Service Pack 1 na těchto platformách
    • 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 na těchto platformách
    • Microsoft Windows 2000 Professional Edition
    • 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
Klíčová slova: 
kbinfo KB908472

Dejte nám zpětnou vazbu

 

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