Publicar servidores com DNAT na Sophos Firewall
Com DNAT, publica-se um servidor interno através de um endereço IP público ou de uma porta pública. A Sophos Firewall encaminha então o tráfego de entrada para o servidor interno de destino. Exemplos típicos são servidores Web, Reverse Proxies, VPN Gateways ou outros serviços numa DMZ.
Este guia mostra que pontos devem ser verificados antes e depois de uma regra DNAT e como limitar a exposição da forma mais restrita possível.
Pré-requisitos
- Endereço IP público ou interface WAN
- Servidor interno com endereço IP fixo
- Serviço e porta conhecidos, por exemplo TCP 443
- Regra de Firewall adequada
- Opcional: IPS, Webserver Protection ou Reverse Proxy conforme o serviço
⚠️ DNAT publica um serviço interno para o exterior. Cada serviço publicado aumenta a superfície de ataque. Publica apenas o que é realmente necessário e limita origem, porta e destino tanto quanto possível.
Esclarecer previamente
Antes de criar a regra, deve-se responder a estas perguntas:
- Que IP público ou interface WAN será usado?
- Que porta externa deve ficar acessível?
- Para que IP interno será encaminhado?
- A porta mantém-se igual ou será traduzida?
- O acesso deve ser permitido a partir de qualquer origem ou apenas de redes de origem específicas?
- É necessário considerar Source NAT ou Reflexive NAT?
- É necessária uma Loopback Rule para clientes internos que usam o FQDN público?
- Será publicado apenas um servidor interno ou vários servidores com Load Balancing?
- Já existe uma regra que usa a mesma porta?
- A Sophos Firewall está diretamente ligada à Internet ou atrás de um router do operador?
- É necessário abrir regras adicionais numa Cloud Security Group?
Estas informações evitam conflitos posteriores com regras NAT ou Firewall existentes.
Quando a Firewall está atrás de um router
DNAT também funciona quando a Sophos Firewall não possui diretamente o endereço IP público, mas está atrás de um NAT Router do operador.
Neste caso, são necessários dois encaminhamentos:
- No router do operador, a porta pública é encaminhada para o IP WAN da Sophos Firewall.
- Na Sophos Firewall, a porta é encaminhada por DNAT para o servidor interno.
Muitos routers de operador oferecem Port Forwarding clássico ou uma função como Exposed Host ou DMZ Host. Numa função Exposed Host, muitas ou todas as portas de entrada são frequentemente encaminhadas para a Firewall. Isto pode ser prático, mas deve ser protegido conscientemente, porque o controlo passa a estar totalmente na Sophos Firewall.
Se não existir IP público fixo, pode-se usar DynDNS. A Sophos Firewall consegue configurar Dynamic DNS para que um nome DNS aponte sempre para o IP público atual. Mesmo assim, o encaminhamento de portas no router do operador tem de apontar para a Sophos Firewall.
Em ambientes cloud aplica-se o mesmo princípio. No Azure, a regra DNAT na Sophos Firewall por si só não basta. Também têm de ser abertas as Inbound rules corretas na Network Security Group; caso contrário, o tráfego nem chega à Firewall.
Criar regra DNAT
Um exemplo típico de DNAT:
- Original source:
Anyou redes de origem definidas - Original destination: IP WAN ou interface WAN
- Original service:
HTTPS - Translated destination: servidor interno
- Translated service: inalterado ou porta interna de destino
Procedimento:
- Abrir Rules and policies.
- Mudar para a área NAT rules.
- Criar nova regra NAT.
- Definir Original Source, Destination e Service.
- Definir Translated Destination para o servidor interno.
- Opcionalmente definir Translated Service.
- Guardar e ativar a regra.
Se apenas poucos endereços IP externos precisam de acesso, a Original Source não deve ser Any, mas limitada a essas origens.

Compreender Original e Translated
Em regras NAT, a diferença entre Original e Translated é importante.
- Original source / destination / service descreve o tráfego tal como chega à Sophos Firewall.
- Translated source / destination / service descreve o tráfego tal como sai novamente da Sophos Firewall após a tradução.
Para uma regra DNAT de entrada, isto significa:
- Original destination é o IP público ou endereço WAN da Firewall.
- Original service é a porta externa à qual o cliente se liga.
- Translated destination (DNAT) é o servidor interno.
- Translated service (PAT) é a porta interna no servidor de destino, caso a porta tenha de ser traduzida.
- Translated source (SNAT) permanece normalmente em Original em regras DNAT normais.
A Sophos descreve os campos no guia oficial Add a NAT rule.
Port Forwarding e PAT
Port Forwarding é tecnicamente uma Service Translation. Na Sophos Firewall, isso é feito com Translated service (PAT).
Exemplo:
- Externo: TCP
20120 - Interno: TCP
22
O cliente externo liga-se à porta 20120, mas a Sophos Firewall encaminha internamente para a porta SSH 22. Isto pode fazer sentido, mas não substitui uma restrição de acesso. Uma porta externa alterada pode reduzir algum ruído de fundo, mas não torna um serviço seguro.
Importante: o protocolo tem de permanecer igual. TCP pode ser traduzido para outra porta TCP, UDP para outra porta UDP. TCP para UDP não é uma tradução de porta válida.
Se HTTPS for publicado, também se deve verificar se existem conflitos com WebAdmin ou User Portal da Sophos Firewall. Por predefinição, a Admin Console usa HTTPS na porta 4444 e o User Portal HTTPS na porta 443. Em caso de sobreposição, as portas próprias da Firewall ou os serviços publicados têm de ser separados de forma limpa.
Loopback, Reflexive e Linked NAT Rules
A Sophos tem várias opções NAT que são facilmente confundidas:
- Loopback rule: ajuda quando clientes internos devem aceder a um servidor interno através do IP público ou nome DNS público.
- Reflexive rule: cria uma regra SNAT espelhada para uma regra DNAT, para que o tráfego de retorno ou certas direções opostas sejam traduzidas corretamente.
- Linked NAT rule: é criada a partir de uma regra de Firewall e é uma regra SNAT associada. Não é o mesmo que uma regra DNAT de entrada para um servidor publicado.
Para publicações clássicas de servidores, uma regra DNAT independente mais uma regra de Firewall adequada costuma ser a abordagem mais clara. Linked NAT Rules podem fazer sentido quando uma regra de Firewall precisa diretamente de uma tradução SNAT específica. Para ambientes gerais, porém, a Sophos recomenda manter regras NAT o mais independentes e simples possível, em vez de criar desnecessariamente muitas regras NAT associadas por regra de Firewall.
Load Balancing e Health Check
Quando vários servidores internos são publicados atrás de um IP público, DNAT também pode ser usado para Load Balancing ou Failover.
Métodos possíveis incluem:
- Round robin
- First alive
- Random
- Sticky IP
- One-to-one
Se a Firewall deve reconhecer se um servidor de destino está disponível, é necessário configurar um Health check. Sem Health Check, a Firewall pode encaminhar tráfego para um servidor que não está acessível.
Verificar a regra de Firewall
Uma regra NAT por si só não permite automaticamente o tráfego. Também é necessária uma regra de Firewall adequada.
A regra de Firewall deve definir:
- Source zone: normalmente
WAN - Source network: tão limitado quanto possível
- Destination zone: zona do servidor interno, por exemplo
DMZ - Destination network: servidor interno
- Services: apenas as portas necessárias
- Security-Profile: conforme o serviço, IPS, Malware Scan ou Web Policy
- Logging: ativar
Sem uma regra de Firewall adequada, o tráfego é descartado apesar do DNAT.

A ordem também é importante nas regras NAT. A Sophos verifica regras NAT de cima para baixo e usa a primeira regra correspondente. Uma regra NAT demasiado geral acima pode impedir que a regra DNAT específica seja aplicada.
Limitar o acesso tanto quanto possível
Nem todos os serviços publicados precisam de estar acessíveis a partir de toda a Internet. Sempre que possível, o acesso deve ser limitado.
Limitações úteis:
- Permitir apenas endereços IP de origem individuais.
- Permitir apenas FQDN Hosts conhecidos quando a contraparte usa IPs dinâmicos.
- Permitir apenas determinados países.
- Bloquear explicitamente determinados países.
- Permitir acesso apenas via VPN.
- Usar uma solução ZTNA em vez de publicação direta.
Para serviços administrativos como SSH, RDP ou portais internos de administração, DNAT normalmente não é a melhor solução. Se o acesso não tiver de ser público, VPN ou ZTNA é quase sempre a melhor escolha.
Mais informações:
Melhorar a segurança
Para serviços publicados, deve-se verificar:
- O servidor está atualizado com patches?
- Existe uma opção WAF ou Reverse Proxy?
- IPS está ativo na regra de Firewall?
- Apenas as portas necessárias estão abertas?
- O serviço é registado em Logs?
- Existem limitações Geo-IP, Threat Feed ou Source IP?
- MFA é possível, caso seja um portal?
Para aplicações Web, Web Server Protection pode ser mais adequada do que DNAT puro.
Bots e Threat Feeds
Portas públicas como HTTP, HTTPS, SSH ou RDP estão permanentemente no foco de bots. Assim que uma porta fica acessível na Internet, surgem muitas vezes muito rapidamente tentativas de ligação, scans, tentativas de login ou tráfego de exploit no Log Viewer.
Isto não significa automaticamente que o servidor esteja comprometido. Mas mostra que o serviço faz parte da superfície de ataque pública. Por isso, recomendamos proteger serviços publicados adicionalmente com IPS, Logging, origens restritas e Third-Party Threat Feeds.
Threat Feeds fornecem continuamente à Firewall Indicators of Compromise atuais, por exemplo endereços IP ou domínios maliciosos. Assim, a Firewall pode bloquear atacantes conhecidos, botnets ou scanners antes de chegarem ao serviço publicado.
Mais sobre isto: Sophos Firewall Threat Feeds
Teste
Depois de criar a regra DNAT:
- Testar a partir de uma rede externa, não da mesma LAN
- Verificar Portscan no IP público
- Verificar Log Viewer para eventos NAT e Firewall
- Controlar Logs do servidor
- Verificar se o cliente vê o Source IP esperado
Se o teste tiver de ser feito a partir da LAN interna para o IP público, pode ser necessário Hairpin NAT ou uma solução DNS interna.
Troubleshooting
Erros frequentes:
- falta regra de Firewall
- WAN-IP errada selecionada
- falta Port Forwarding no router do operador
- Azure Network Security Group bloqueia a porta
- serviço não está ativo internamente
- gateway do servidor não aponta para a Sophos Firewall
- regra NAT está abaixo de outra que é aplicada antes
- porta já é usada por outro serviço
- falta Loopback quando clientes internos usam o FQDN público
- Health Check falta ou está errado quando Load Balancing é usado
- teste é feito a partir da rede interna e não de fora
O Log Viewer é o ponto de partida mais importante em problemas DNAT. Aí vê-se se o tráfego chega, que regra fez match e se foi permitido ou descartado.
Recomendação
Regras DNAT devem ser revistas regularmente. Publicações antigas são um risco de segurança típico. Uma boa documentação inclui finalidade, servidor de destino, portas externas, pessoa responsável, data de expiração e última revisão.