Sumário

Este artigo descreve como configurar a RPC para utilizar um intervalo dinâmico específico de portas e como ajudar a proteger as portas desse intervalo utilizando a política de segurança do protocolo Internet (IPsec - Internet Protocol security). Por predefinição, a RPC utiliza portas no intervalo de portas efémeras (1024 - 5000) quando atribui portas a aplicações de RPC que têm de escutar num ponto final TCP. Este comportamento pode tornar a restrição do acesso a estas portas num desafio para os administradores de rede. Este artigo descreve formas de reduzir o número de portas disponíveis para aplicações de RPC e como restringir o acesso a estas portas utilizando uma política IPsec baseada no registo.Uma vez que os passos constantes deste artigo envolvem alterações globais ao computador que necessitam que o mesmo seja reiniciado, todos estes passos devem ser efectuados primeiro num ambiente que não seja de produção para identificar quaisquer problemas de compatibilidade de aplicações que possam ocorrer em resultado destas alterações.

Mais Informação

Existem várias tarefas de configuração que devem ser concluídas por forma a relocalizar, reduzir e restringir o acesso a portas RPC.Primeiro, o intervalo dinâmico de portas RPC deve ser restringido a um intervalo menor e de mais fácil gestão, que seja mais fácil de bloquear utilizando um firewall ou uma política IPsec. Por predefinição, a RPC atribui portas do intervalo 1024 a 5000 de forma dinâmica a pontos finais que não especifiquem uma porta para escuta.Nota:este artigo utiliza o intervalo de portas 5001 a 5021 para evitar esgotar as portas efémeras e para reduzir o número de portas disponíveis para pontos finais RPC de 3.976 para 20.Em seguida, tem de ser criada uma política IPsec para restringir o acesso a este intervalo de portas, para negar o acesso a todos os anfitriões da rede.Finalmente, a política IPsec pode ser actualizada para conceder acesso às portas RPC bloqueadas a determinados endereços IP ou sub-redes, excluindo todos os outros.Para iniciar a tarefa de reconfiguração do intervalo dinâmico de portas RPC, transfira a ferramenta RPC Configuration Tool (RPCCfg.exe) e copie a mesma para a estação de trabalho ou para o servidor a reconfigurar. Para o fazer, visite o seguinte Web site da Microsoft:

http://www.microsoft.com/downloads/details.aspx?FamilyID=0f9cde2f-8632-4da8-ae70-645e1ddaf369&DisplayLang=enPara efectuar as tarefas subsequentes da criação de uma política IPsec, transfira a ferramenta Internet Protocol Security Policies Tool (Ipsecpol.exe) e copie-a para a estação de trabalho ou para o servidor a reconfigurar. Para o fazer, visite o seguinte Web site da Microsoft:

http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=7D40460C-A069-412E-A015-A2AB904B7361Nota: para criar uma política IPsec para o Microsoft Windows XP ou para uma versão posterior do sistema operativo Windows, utilize a Ipseccmd.exe. A Ipseccmd.exe faz parte das ferramentas de suporte do Windows XP. A sintaxe e utilização da IPseccmd.exe são idênticas à da Ipsecpol.exe. Para obter mais informações sobre as ferramentas de suporte do Windows XP, clique no número de artigo que se segue para visualizar o artigo na base de dados de conhecimento da Microsoft (KB, Microsoft Knowledge Base):

838079 Ferramentas de suporte do Windows XP Service Pack 2

Relocalizar e reduzir o intervalo dinâmico de portas RPC utilizando a ferramenta RPCCfg.exe

Para relocalizar e reduzir o intervalo dinâmico de portas RPC utilizando a RPCCfg.exe, siga estes passos:

  1. Copie o RPCCfg.exe para o servidor a configurar

  2. Na linha de comandos, escreva rpccfg.exe -pe 5001-5021 -d 0.Nota: este intervalo de portas é recomendado para utilização por pontos finais RPC porque é pouco provável que as portas deste intervalo sejam atribuídas para utilização de outras aplicações. Por predefinição, a RPC utiliza o intervalo de portas 1024 a 5000 para atribuir portas a pontos finais. No entanto, as portas deste intervalo também são atribuídas de forma dinâmica para utilização do sistema operativo Windows para todas as aplicações de sockets do Windows e podem esgotar-se em servidores muito utilizados, como os servidores de terminais e servidores de camada intermédia que efectuam muitas chamadas a sistemas remotos.Por exemplo, quando o Internet Explorer contacta um servidor da Web na porta 80, escuta numa porta do intervalo 1024 - 5000 para receber a resposta do servidor. Um servidor de COM de camada intermédia que faça chamadas a outros servidores remotos também utiliza uma porta deste intervalo para receber a resposta a essa chamada. Alterar o intervalo de portas utilizado pela RPC para os respectivos pontos finais para o intervalo de portas 5001 reduz as hipóteses de estas portas serem utilizadas por outras aplicações.Para obter mais informações sobre a utilização de portas efémeras em sistemas operativos Windows, visite os seguintes Web sites da Microsoft.

Utilizar uma política IPsec ou de firewall para bloquear o acesso às portas vulneráveis no anfitrião afectado

Nos comandos da seguinte secção, o texto apresentado entre sinais de percentagem (%) representa texto no comando que deve ser introduzido pela pessoa que cria a política IPsec. Por exemplo, sempre que aparecer o texto "%IPSECTOOL%", a pessoa que criar a política deve substitui-lo da seguinte forma:

  • Para o Windows 2000, substitua "%IPSECTOOL%" por "ipsecpol.exe."

  • Para o Windows XP ou uma versão posterior do Windows, substitua "%IPSECTOOL%" por "ipseccmd.exe".

Para obter mais informações sobre como utilizar a IPsec para bloquear portas, clique no número de artigo que se segue para visualizar o artigo na base de dados de conhecimento da Microsoft (KB, Microsoft Knowledge Base):

813878 Como bloquear protocolos e portas de rede específicos utilizando a IPSec

Bloquear o acesso de todos os endereços IP ao mapeador de pontos finais RPC

Para bloquear o acesso de todos os endereços IP ao mapeador de pontos finais RPC, utilize a seguinte sintaxe. Nota: no Windows XP e em sistemas operativos posteriores, utilize o Ipseccmd.exe. No Windows 2000, utilize o Ipsecpol.exe (Windows 2000).

%IPSECTOOL% -w REG -p "Block RPC Ports" -r "Block Inbound TCP 135 Rule" -f *=0:135:TCP -n BLOCK

Nota: não escreva "%IPSECTOOL%" neste comando. "%IPSECTOOL%" representa a parte do comando que deve ser personalizada. Por exemplo, no Windows 2000, escreva o seguinte comando a partir de um directório que contenha o Ipsecpol.exe para bloquear todo o acesso de entrada na porta TCP 135:

ipsecpol.exe -w REG -p "Block RPC Ports" -r "Block Inbound TCP 135 Rule" -f *=0:135:TCP -n BLOCK

No Windows XP e em sistemas operativos posteriores, escreva o seguinte comando a partir de um directório que contenha o Ipseccmd.exe para bloquear todo o acesso de entrada na porta TCP 135:

ipseccmd.exe -w REG -p "Block RPC Ports" -r "Block Inbound TCP 135 Rule" -f *=0:135:TCP -n BLOCK

Bloquear o acesso de todos os endereços IP ao intervalo dinâmico de portas RPC

Para bloquear o acesso de todos os endereços IP ao intervalo dinâmico de portas RPC, utilize a seguinte sintaxe.Nota: no Windows XP e em sistemas operativos posteriores, utilize o Ipseccmd.exe. No Windows 2000, utilize o Ipsecpol.exe (Windows 2000).

%IPSECTOOL% -w REG -p "Block RPC Ports" -r "Block Inbound TCP %PORT% Rule" -f *=0:%PORT%:TCP -n BLOCK

Nota: não escreva "%IPSECTOOL%" ou "%PORT%" neste comando. "%IPSECTOOL%" e "%PORT%" representam as partes do comando que devem ser personalizadas. Por exemplo, escreva o seguinte comando em anfitriões Windows 2000 para bloquear todo o acesso de entrada na porta TCP 5001:

ipsecpol.exe -w REG -p "Block RPC Ports" -r "Block Inbound TCP 5001 Rule" -f *=0:5001:TCP -n BLOCK

Para bloquear todo o acesso de entrada na porta TCP 5001, escreva o seguinte comando em anfitriões Windows XP e em anfitriões com sistemas operativos Windows posteriores:

ipseccmd.exe -w REG -p "Block RPC Ports" -r "Block Inbound TCP 5001 Rule" -f *=0:5001:TCP -n BLOCK

Repita este comando para cada porta RPC que tenha de ser bloqueada alterando o número da porta listado neste comando. As portas que devem ser bloqueadas pertencem ao intervalo 5001 - 5021.Nota: não se esqueça de alterar o número da porta no nome da regra (o parâmetro -r) e no filtro (o parâmetro -f).

Opcional: Conceder acesso ao mapeador de pontos finais RPC a sub-redes específicas, se necessário

Se tiver de conceder a sub-redes específicas acesso às portas RPC restringidas, primeiro tem de conceder a estas sub-redes acesso ao mapeador de pontos finais RPC bloqueado anteriormente. Para conceder a uma sub-rede específica acesso ao mapeador de pontos finais RPC, utilize o seguinte comando:

%IPSECTOOL% -w REG -p "Block RPC Ports" -r "Allow Inbound TCP 135 from %SUBNET% Rule" -f %SUBNET%/%MASK%=0:135:TCP -n PASS

Nota: neste comando, aplicam-se as seguintes afirmações:

  • "%IPSECTOOL%" representa o comando a utilizar. Este comando é "ipsecpol.exe" ou "ipseccmd.exe". O comando a utilizar depende do sistema operativo a configurar.

  • "%SUBNET%" representa a sub-rede IP remota à qual pretende conceder acesso, por exemplo, 10.1.1.0.

  • "%MASK%" representa a máscara de sub-rede a utilizar, por exemplo, 255.255.255.0.Por exemplo, o seguinte comando permite que todos os anfitriões da sub-rede 10.1.1.0/255.255.255.0 liguem à porta TCP 135. Todos os outros anfitriões verão as respectivas ligações negadas pela regra de bloqueio predefinida que foi criada anteriormente para esta porta.

    %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

Opcional: Conceder acesso a sub-redes específicas ao novo intervalo dinâmico de portas RPC, se necessário

A cada sub-rede a que foi anteriormente concedido acesso ao mapeador de pontos finais RPC, também deve ser concedido acesso a todas as portas do novo intervalo dinâmico de portas RPC (5001-5021).Se permitir o acesso de sub-redes ao mapeador de pontos finais RPC mas não ao intervalo dinâmico de portas, a aplicação poderá deixar de responder ou o utilizador poderá detectar outros problemas.O comando que se segue concede a uma sub-rede específica acesso a uma porta do novo intervalo dinâmico de portas RPC:

%IPSECTOOL% -w REG -p "Block RPC Ports" -r "Allow Inbound TCP %PORT% from %SUBNET% Rule" -f %SUBNET%/%MASK%=0:%PORT%:TCP -n PASS

Nota: neste comando, aplicam-se as seguintes afirmações:

  • "%IPSECTOOL%" representa o comando a utilizar. Este comando é "ipsecpol.exe" ou "ipseccmd.exe". O comando a utilizar depende do sistema operativo a configurar.

  • "%PORT%" representa a porta do intervalo dinâmico de portas para a qual concede acesso.

  • "%SUBNET%" representa a sub-rede IP remota à qual pretende conceder acesso, por exemplo, 10.1.1.0.

  • "%MASK%" representa a máscara de sub-rede a utilizar, por exemplo, 255.255.255.0.Por exemplo, o seguinte comando permite que todos os anfitriões da sub-rede 10.1.1.0/255.255.255.0 liguem à porta TCP 5001. Todos os outros anfitriões verão as respectivas ligações negadas pela regra de bloqueio predefinida que foi criada anteriormente para esta porta.

    %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

Nota: este comando deve ser repetido para cada sub-rede e porta do novo intervalo dinâmico de portas RPC.

Atribuir a política IPsec

Nota: os comandos constantes desta secção têm efeito imediato.Depois de criar todas as regras de bloqueio e todas as regras de permissão opcionais para as portas RPC configuradas, atribua a política utilizando o seguinte comando:

%IPSECTOOL% -w REG -p "Block RPC Ports" –x

Nota: para anular a atribuição da política imediatamente, utilize o seguinte comando:

%IPSECTOOL% -w REG -p "Block RPC Ports" –y

Nota: para eliminar a política do registo, utilize o seguinte comando:

%IPSECTOOL% -w REG -p "Block RPC Ports" -o

É necessário reiniciar o anfitrião para que as alterações entrem em vigor.Notas

  • As alterações à configuração da RPC necessitam de um reinício.

  • As alterações à política IPsec entram imediatamente em vigor e não necessitam de um reinício.

Após o reinício da estação de trabalho ou do servidor, às interfaces de RPC que utilizem a sequência de protocolos ncacn_ip_tcp e não especifiquem uma determinada porta TCP à qual associar-se será atribuída uma porta deste intervalo pela RPC de tempo de execução quando o servidor de RPC for iniciado.Nota: o servidor poderá necessitar de mais de 20 portas TCP. Pode utilizar o comando rpcdump.exe para contar o número de pontos finais RPC associados a uma porta TCP e para aumentar este número, se necessário. Para obter mais informações sobre como obter a ferramenta RPC Dump, visite o seguinte Web site da Microsoft:

http://www.microsoft.com/downloads/details.aspx?displaylang=en&familyid=9d467a69-57ff-4ae7-96ee-b18c4790cffd

Precisa de mais ajuda?

Quer mais opções?

Explore os benefícios da subscrição, navegue em cursos de formação, saiba como proteger o seu dispositivo e muito mais.

As comunidades ajudam-no a colocar e a responder perguntas, a dar feedback e a ouvir especialistas com conhecimentos abrangentes.