Definição
Porta de rede é um número usado por protocolos de transporte, como TCP e UDP, para distinguir pontos de comunicação. Ao acessar um serviço, o cliente combina o endereço IP, o protocolo e a porta de destino.
A porta pertence à configuração da comunicação, sem representar um conector físico. Uma mesma máquina pode atender aplicações diferentes em portas distintas, ou usar um intermediário para encaminhar chamadas recebidas por uma única porta.
O processo precisa estar escutando
Uma aplicação preparada para receber conexões associa sua escuta a um endereço e a uma porta. Escutar em 127.0.0.1 limita esse atendimento ao loopback da máquina, enquanto escutar em 0.0.0.0 normalmente abrange suas interfaces IPv4.
O firewall pode restringir o tráfego mesmo quando o processo está escutando. A rede também precisa oferecer um caminho até o endereço utilizado pelo cliente. Por isso, uma conexão que funciona no próprio servidor ainda precisa ser testada a partir do computador que utilizará o serviço.
O número não comprova o protocolo
Números conhecidos facilitam a configuração: HTTPS costuma usar 443, por exemplo. Porém, um processo pode atender outro protocolo nesse número, e TCP e UDP possuem espaços de portas separados.
O cliente também usa uma porta de origem, frequentemente atribuída de forma temporária. A conexão é distinguida por informações dos dois lados, permitindo várias comunicações simultâneas com a mesma porta de um servidor.
Portas em containers e proxies
Uma porta interna de um container pode ser publicada em outro número no host. Um proxy reverso também pode receber na porta 443 e encaminhar para uma aplicação na porta 3000.
Ao investigar a conexão, descreva cada trecho com endereço, protocolo e porta. Isso evita comparar a porta pública do proxy com a porta interna como se ambas devessem responder no mesmo lugar.
Imagine uma publicação da porta 8080 do host para a porta 3000 do container. O cliente acessa o endereço do host na porta 8080, enquanto a aplicação recebe o encaminhamento na porta 3000. Testar apenas a porta 3000 no host não verifica esse percurso. No container com rede própria, publicar a porta também não torna acessível por esse caminho uma aplicação que atende apenas no loopback interno.
O Desenvolvimento Colaborativo da Dev Side Studio pode acompanhar essa conferência, relacionando a escuta dos processos ao tráfego permitido no firewall e aos encaminhamentos do seu ambiente.
Dúvidas frequentes
Perguntas frequentes sobre Porta de rede
- A porta 443 sempre significa HTTPS?
- Não. O número é uma convenção registrada para serviços, mas não comprova qual protocolo um processo realmente atende nem se há criptografia.
- TCP e UDP podem usar o mesmo número de porta?
- Sim. São espaços distintos. Um serviço TCP na porta 443 e um serviço UDP na porta 443 não são o mesmo ponto de comunicação.
- Liberar uma porta no firewall inicia a aplicação?
- Não. Permitir o tráfego no firewall não inicia nenhum processo. A aplicação precisa estar em execução e escutando no endereço e na porta configurados para receber a conexão.
- Por que funciona em localhost e não em outro computador?
- O processo pode estar escutando somente no loopback, ou pode haver restrições de rota e firewall. Localhost no outro computador aponta para ele próprio.
Para continuar
Recursos relacionados
Documentação
IANA: registro de nomes de serviço e portas
Relaciona números de porta, protocolos de transporte e serviços registrados.
Abrir recursoDocumentação
NGINX: configuração de proxy reverso
Mostra o encaminhamento a serviços identificados por endereço e porta.
Abrir recursoAplicação na formação
Formação DevOps
Portas ajudam a conferir onde os processos recebem conexões e como os serviços são expostos na infraestrutura.
Conhecer a formação
Fontes consultadas
Referências deste verbete
Este verbete ajudou você?
Obrigado pela resposta. Ela fica salva apenas neste navegador.