Proxy Reverso (NGINX)
Na topologia de rede e distribuição de serviços da infraestrutura da PMDF, o NGINX assume o papel de Proxy Reverso e Load Balancer de camada 7 para as aplicações corporativas.
Regra de Borda de Aplicações
Todas as aplicações web da PMDF devem obrigatoriamente rodar atrás do proxy reverso. Nenhuma aplicação tem o direito de expor a sua porta pública ou container (ex: 8080, 3000) de forma direta para a DMZ ou para acesso irrestrito externo.
Arquitetura de Roteamento Segura
O NGINX atua como intermediário ocultando a topologia e a estrutura interna (backend IPs ou IPs dos Worker Nodes do Kubernetes) dos usuários, além de realizar as seguintes ações vitais:
- Terminação TLS (SSL/HTTPS): Os certificados digitais de segurança ficam provisionados e atuando diretamente do nível do NGINX, removendo o gargalo de criptografia e gerenciamento de certificados em cada serviço isolado.
- Balanceamento de Carga (Load Balancing): Retransmite as conexões para as várias instâncias em cluster dos aplicativos (seja em VMs isoladas ou ingressos de K8s).
- Firewall de Aplicação Web Básico: Filtragem imediata dos cabeçalhos suspeitos ou bloqueios explícitos por geolocalização (GeoIP). Seu log unificado de acesso ajuda nas investigações criminais e resposta a intrusões via sistema SIEM Wazuh.
Estrutura de Configuração (Referência de Bloco server)
Toda declaração de site é feita com blocos onde a terminação e retranscrição de URI acontecem firmemente.
server {
listen 443 ssl;
server_name portal.pmdf.df.gov.br;
# Certificados gerenciados e configurados pela SSSI
ssl_certificate /etc/nginx/ssl/portal.crt;
ssl_certificate_key /etc/nginx/ssl/portal.key;
location / {
# O tráfego externo acessa no padrão 443 e é repassado ao IP Interno
proxy_pass http://10.X.X.X:8080;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}Resolução de Problemas Corriqueiros (Proxy)
Cenário: O usuário tenta acessar uma aplicação restrita interna e depara-se com o erro "502 Bad Gateway" na tela braca típica do NGINX.
- O que isto significa: O Proxy Mestre (Nginx) está recebendo a comunicação na internet normalmente, porém quando ele foi redirecionar o tráfego repassando os parâmetros à aplicação local escondida em Backend, ele obteve uma recusa ou timeout (Serviço alvo está caído ou inalcançável na rede).
- Procedimento SSSI: Cheque o Zabbix por serviços locais ou pods k8s parados do serviço em que o Nginx tenta alcançar. Não é um erro gerado nativamente pelo código da aplicação, é uma falha de conexão na camada infra.