Multiplexação de Serviços Baseada em Portas no UNIX
Um único servidor UNIX pode hospedar múltiplos serviços de internet (web, FTP, e-mail, SSH) simultaneamente usando números de porta para distinguir o tráfego de entrada.
Atribuições de Porta Padrão
- Porta 80 (HTTP): Tráfego web não criptografado.
- Porta 443 (HTTPS): Tráfego web criptografado (TLS/SSL).
- Porta 21 (FTP Controle): Canal de comando para transferências de arquivo.
- Porta 20 (FTP Dados): Canal de dados (modo ativo).
- Porta 22 (SSH): Acesso shell seguro.
- Porta 25 (SMTP): E-mail de saída.
Fluxo de Tratamento de Pacotes
- Cliente inicia conexão para IP do servidor + porta de destino (ex.: 203.0.113.10:80).
- Pacote chega na interface de rede do servidor.
- Kernel examina o campo porta de destino do cabeçalho TCP/UDP.
- Kernel encaminha pacote para o processo em userspace vinculado a essa porta (ex.: Apache/Nginx na porta 80, vsftpd na porta 21).
- Processo trata a requisição e responde pela mesma porta.
Exemplo de Configuração
# /etc/services (referência) http 80/tcp https 443/tcp ftp 21/tcp ssh 22/tcp
Firewalls (iptables, nftables, ufw) também usam números de porta para permitir/bloquear serviços específicos.
Essa desmultiplexação baseada em portas é fundamental para redes TCP/IP e permite hospedagem eficiente e segura de múltiplos serviços.