{
  "schemaVersion": "1.0",
  "path": "/guias/vps/firewall-ufw-vps-ubuntu",
  "url": "https://streethosting.com.br/guias/vps/firewall-ufw-vps-ubuntu",
  "markdownUrl": "https://streethosting.com.br/guias/vps/firewall-ufw-vps-ubuntu.md",
  "jsonUrl": "https://streethosting.com.br/guias/vps/firewall-ufw-vps-ubuntu.json",
  "title": "Firewall UFW em VPS Ubuntu: regras seguras sem travar o servidor",
  "description": "UFW no Ubuntu Server: defaults, ordem de allow/deny, SSH, HTTP/S, IPv6, logs e armadilhas com Docker e fail2ban.",
  "category": "vps",
  "topics": [
    "seguranca",
    "linux"
  ],
  "difficulty": "iniciante",
  "datePublished": "2026-05-19",
  "dateModified": "2026-05-20",
  "readingMinutes": 4,
  "series": {
    "id": "vps-fundamentos",
    "order": 3
  },
  "h1": "Firewall UFW para VPS Ubuntu",
  "excerpt": "UFW facilita a configuração de firewall no Ubuntu, mas a ordem das regras continua sendo decisiva. Este guia mostra como ativar sem perder acesso SSH, como liberar apenas o necessário e como revisar regras quando Docker e serviços web entram em cena.",
  "author": "Equipe StreetHosting",
  "wordCount": 624,
  "categoryLabel": "VPS",
  "topicLabels": [
    "Segurança e hardening",
    "Administração Linux"
  ],
  "primaryKeyword": "ufw firewall ubuntu vps",
  "secondaryKeywords": [
    "ubuntu ufw ssh",
    "liberar porta ufw",
    "vps firewall brasil"
  ],
  "toc": [
    {
      "id": "mentalidade-default-deny",
      "label": "Mentalidade default deny"
    },
    {
      "id": "fluxo-seguro-primeiro-enable",
      "label": "Fluxo seguro antes do primeiro enable"
    },
    {
      "id": "regras-comuns-http-game-db",
      "label": "Regras comuns: web, game e DB"
    },
    {
      "id": "ipv6-log-e-status",
      "label": "IPv6, log e status"
    },
    {
      "id": "ufw-com-docker-e-pitfalls",
      "label": "UFW com Docker e armadilhas"
    }
  ],
  "faqs": [
    {
      "question": "UFW substitui security group do provedor?",
      "answer": "Não. O ideal é usar os dois. Security Group filtra no nível do provedor e o UFW protege dentro da máquina virtual com regras que você controla diretamente."
    },
    {
      "question": "Esqueci de liberar SSH e travei?",
      "answer": "Use console web do provedor ou rescue mode para entrar sem SSH tradicional e remover regra ou resetar ufw. Por isso habilite console antes de experimentos."
    },
    {
      "question": "UFW mostra active mas porta não filtra?",
      "answer": "Isso pode acontecer quando outra regra de iptables entra antes ou quando o Docker publica porta automaticamente. Verifique cadeia de regras e portas publicadas por container."
    },
    {
      "question": "Preciso allow from anywhere?",
      "answer": "Para site público, HTTP e HTTPS normalmente ficam abertos. Para SSH e painel administrativo, prefira limitar por IP de origem ou via VPN."
    }
  ],
  "howToSteps": [],
  "relatedProducts": [
    "https://streethosting.com.br/vps/ryzen",
    "https://streethosting.com.br/vps"
  ],
  "relatedGuides": [
    "https://streethosting.com.br/guias/vps/ssh-seguro-vps-linux",
    "https://streethosting.com.br/guias/vps/instalar-docker-ubuntu-vps",
    "https://streethosting.com.br/guias/vps/hospedar-n8n-vps-brasil"
  ],
  "content": {
    "format": "markdown",
    "body": "> **Resposta rápida**\n>\n> Em VPS Ubuntu, comece o UFW com **deny incoming**, libere o **SSH correto** antes de ativar, valide o acesso em uma segunda sessão e só então rode `sudo ufw enable`. Depois libere portas de aplicação de forma pontual, com motivo claro para cada regra.\n\n## Mentalidade default deny\n\nPolítica default deny significa que entrada de tráfego é exceção, não regra. Isso evita exposição acidental de serviços internos como banco, painel ou endpoint de teste que ficou aberto durante deploy.\n\nUm exemplo comum é liberar 5432 para testar PostgreSQL e esquecer de fechar. Com processo baseado em UFW e revisão de regras, esse tipo de vazamento cai bastante. Para base de acesso remoto, combine com [SSH seguro em VPS Linux](https://streethosting.com.br/guias/vps/ssh-seguro-vps-linux) e mantenha senha remota desativada.\n\n## Fluxo seguro antes do primeiro enable\n\n1. Defina política padrão: deny incoming e allow outgoing.\n2. Libere SSH na porta real em uso, não apenas no valor padrão por costume.\n3. Abra uma segunda sessão SSH e confirme login antes de ativar o firewall.\n4. Ative o UFW e confira imediatamente `status numbered`.\n\n> **Atenção**\n>\n> Alterar porta SSH sem ajustar a regra correspondente costuma causar bloqueio de acesso. Mantenha console de recuperação pronto antes de mudanças sensíveis.\n\n## Regras comuns: web, game e DB\n\n### Web\n\nPara sites públicos, o padrão é liberar 80 e 443 no host. Serviços internos da aplicação podem ficar em localhost atrás de proxy reverso sem exposição direta para internet.\n\n- Abra apenas portas que têm serviço ativo e documentado.\n- Revise exceções temporárias após deploy ou migração.\n\n### Game\n\nServidores de jogo exigem atenção no protocolo e na porta real. Em projetos Minecraft com comunidade maior, separar proxy e backend ajuda na organização do tráfego. Se preferir estrutura pronta, veja [Minecraft Pro](https://streethosting.com.br/minecraft-pro) como alternativa gerenciada.\n\n| Serviço | Porta típica | Sugestão |\n| --- | --- | --- |\n| SSH | 22 ou custom | Preferir origem restrita |\n| HTTP | 80/tcp | Necessário para redirect e desafio ACME |\n| HTTPS | 443/tcp | Canal principal em produção |\n| PostgreSQL | 5432/tcp | Manter privado sempre que possível |\n\n## IPv6, log e status\n\nSe o domínio resolve com AAAA, as regras de IPv6 precisam refletir a mesma política de IPv4. Caso contrário, um serviço bloqueado em IPv4 pode seguir acessível em IPv6 sem você perceber.\n\nUse logs em nível moderado para diagnóstico e mantenha revisão de regras por número. Verifique o arquivo `/etc/default/ufw` para defaults IPV6 e aplique reload após qualquer alteração.\n\n> **Dica**\n>\n> Comando status numbered facilita deletar regra errada com delete sem adivinhar ordem mentalmente.\n\n## UFW com Docker e armadilhas\n\nDocker publica portas no host e pode inserir regras que mudam o comportamento esperado do UFW. Por isso, cada novo compose deve passar por checagem de portas expostas e origem permitida.\n\nExemplo prático: publicar `-p 5432:5432` para facilitar migração de banco costuma deixar o serviço visível para internet se não houver bloqueio explícito. Mantenha essa prática apenas em janelas curtas e documentadas. Para setup inicial, consulte [instalar Docker no Ubuntu VPS](https://streethosting.com.br/guias/vps/instalar-docker-ubuntu-vps).\n\nEm automação com n8n, trate a interface administrativa como serviço sensível. Use TLS, autenticação forte e restrição de origem quando possível. Se quiser reduzir a etapa manual, existe o [VPS Ryzen](https://streethosting.com.br/vps/ryzen) já preparado. Para VPS padrão, veja também [VPS Ryzen](https://streethosting.com.br/vps/ryzen).\n\n- [ ] Salvar estado de regras antes de alterações maiores.\n- [ ] Anotar data de remoção de exceções temporárias.\n- [ ] Revisar regras numeradas em rotina mensal.\n- [ ] Confirmar monitoramento após cada ajuste de porta."
  }
}
