> ## Knowledge Base Index
> Fetch the complete knowledge base index at: https://ajuda.streethosting.com.br/sitemap.xml
> Use this file to discover available pages before exploring further.
> Pure-Markdown content can be obtained by appending a '.md' suffix to the content URLs listed in the sitemap (without the trailing slash).

# Como configurar Firewall UFW no VPS

# Como configurar firewall UFW no VPS e proteger portas críticas

Um servidor sem firewall é como uma casa com todas as portas e janelas abertas. O UFW é a forma mais rápida e segura de controlar o que entra e sai do seu VPS Ubuntu.

## Por que firewall é obrigatório

Todo VPS conectado à internet recebe tentativas de acesso automatizadas em minutos. Bots varrem a internet constantemente em busca de portas abertas, serviços expostos e senhas fracas. Sem firewall:

* Qualquer serviço exposto vira alvo.
* Banco de dados acessível publicamente pode ser invadido.
* Portas esquecidas abertas são vetores de ataque.

## Instalação e configuração básica

O UFW já vem instalado no Ubuntu 24.04. Caso não esteja:

```bash
sudo apt install ufw -y
```

### Regra de ouro: libere SSH antes de ativar

> **Atenção:** se você ativar o UFW sem liberar SSH primeiro, **vai perder o acesso ao servidor**.

```bash
sudo ufw allow OpenSSH
```

### Ativar o firewall

```bash
sudo ufw enable
```

### Verificar status e regras ativas

```bash
sudo ufw status verbose
```

## Portas essenciais para liberar

| Porta | Serviço | Comando |
| ---- |
| 22 | SSH | `sudo ufw allow OpenSSH` |
| 80 | HTTP | `sudo ufw allow 80/tcp` |
| 443 | HTTPS | `sudo ufw allow 443/tcp` |

### Para aplicações específicas

```bash
sudo ufw allow 3000/tcp    # Node.js, React dev server
sudo ufw allow 3306/tcp    # MySQL (apenas se necessário externamente)
sudo ufw allow 5432/tcp    # PostgreSQL (apenas se necessário externamente)
sudo ufw allow 25565/tcp   # Minecraft Java
sudo ufw allow 19132/tcp   # Minecraft Bedrock
```

> **Dica de segurança:** bancos de dados (MySQL, PostgreSQL) devem ser acessados apenas internamente. Evite liberar essas portas publicamente — use SSH tunnel ou VPN quando precisar de acesso externo.

## Bloquear tudo por padrão

O comportamento padrão do UFW após ativação já nega conexões de entrada. Confirme com:

```bash
sudo ufw default deny incoming
sudo ufw default allow outgoing
```

Isso garante que **somente** as portas que você liberou explicitamente são acessíveis.

## Regras avançadas

### Permitir acesso de um IP específico

```bash
sudo ufw allow from 203.0.113.50 to any port 22
```

### Limitar tentativas de conexão (rate limiting)

```bash
sudo ufw limit ssh
```

Bloqueia IPs que tentam mais de 6 conexões em 30 segundos na porta SSH.

### Remover uma regra

```bash
sudo ufw status numbered
sudo ufw delete NUMERO_DA_REGRA
```

## Checklist de revisão mensal

* [ ] Remover portas que não são mais usadas
* [ ] Verificar se há portas expostas sem necessidade
* [ ] Revisar logs de tentativas bloqueadas
* [ ] Confirmar que apenas serviços ativos estão liberados

Para verificar portas abertas no servidor:

```bash
sudo ss -tlnp
```

## Perguntas frequentes (FAQ)

### O que acontece se eu bloquear SSH por engano?
Use o console de emergência (VNC) do painel do provedor para acessar o servidor e corrigir a regra. Na StreetHosting, o console VNC está disponível no painel de gerenciamento.

### UFW é suficiente ou preciso de algo mais?
Para a maioria dos VPS, UFW é suficiente. Para ambientes mais complexos, considere combinar UFW com fail2ban e, eventualmente, iptables customizado.

### Como sei se meu firewall está funcionando?
Execute `sudo ufw status verbose`. Todas as regras ativas serão listadas. Portas não listadas estão bloqueadas por padrão.

## Próximos passos

* Complete a segurança com [Hardening Linux para VPS](/pt/article/hardening-linux-para-vps)
* Monitore o servidor em [Monitoramento com Netdata](/pt/article/monitoramento-vps-com-netdata)
* Volte ao setup inicial em [Como configurar VPS Ubuntu 24.04](/pt/article/como-configurar-vps-ubuntu-2404)
