O que é uma porta de rede? TCP, UDP e portas abertas
Uma porta de rede é um número que protocolos de transporte como TCP e UDP usam para direcionar o tráfego ao serviço certo. Juntos, o protocolo, o endereço IP e a porta formam, na prática, a extremidade de uma conexão. A porta é um identificador lógico, não uma entrada física no roteador.
Números e usos comuns
Os números de porta são valores de 16 bits, de 0 a 65535. A IANA os divide em portas de sistema (0–1023), portas de usuário (1024–49151) e portas dinâmicas ou privadas (49152–65535). O HTTP costuma usar a porta TCP 80 e o HTTPS a TCP 443, mas um serviço pode ser configurado em outro número.
TCP e UDP têm espaços de portas separados. Por isso, o mesmo número de porta pode servir a finalidades diferentes em cada protocolo. Ao se conectar à porta de destino em que um servidor escuta, o cliente geralmente escolhe uma porta de origem temporária. Ver uma porta de cliente com número alto é normal e não indica que há um serviço público aberto.
O que significa “aberta”
No TCP, um teste externo pode considerar a porta aberta quando consegue completar uma conexão com um processo que está escutando. Uma resposta de porta fechada, pacotes descartados ou um timeout têm significados diferentes, e um firewall pode dificultar a distinção entre eles. O teste de UDP é menos conclusivo, porque um serviço silencioso pode simplesmente não responder à sonda.
Um programa escutando em um endereço local não fica automaticamente acessível pela internet. O firewall do host, o redirecionamento de portas no roteador, a filtragem do provedor e o CGNAT influenciam o resultado. Verifique primeiro o endereço de escuta e o protocolo e, depois, teste de fora da rede local.
Como abrir portas com responsabilidade
Exponha apenas os serviços de que você precisa. Configure autenticação, mantenha o software atualizado e restrinja os endereços de origem quando possível. Um teste de conexão bem-sucedido não diz nada sobre a segurança ou a configuração correta da aplicação. Da mesma forma, um teste que falha não identifica sozinho a camada exata que está bloqueando.
Se um serviço é só para uso local, vincule-o ao loopback ou a uma interface privada e evite redirecionamentos desnecessários. Anote o protocolo e a porta de destino esperados antes de alterar as regras do firewall. Depois da mudança, verifique de novo a partir de outra rede e remova as regras obsoletas quando o serviço for desativado.
Ao documentar um problema, anote o nome do serviço, o protocolo de transporte, a porta de destino e o local do teste. Um resultado obtido dentro da rede doméstica pode ser diferente de um teste pelos dados móveis, porque o roteador pode tratar o próprio endereço público de outra forma. Repita o teste a partir de uma rede realmente externa antes de pedir alguma mudança ao provedor.
TCP e UDP exigem testes diferentes
O mesmo número de porta pode existir no TCP e no UDP, mas são protocolos de transporte diferentes. Uma conexão TCP bem-sucedida não diz nada sobre um serviço UDP com o mesmo número. Veja TCP vs. UDP e portas abertas, fechadas e filtradas.