VPS

Tutorial Iptables: Protegendo VPS com o Firewall do Linux

VPS·22 de março de 2026·29 min de leitura

Voce esta procurando um tutorial completo sobre iptables? Este artigo mostrara como instalar e usar o iptables em um sistema Ubuntu para proteger sua rede.

O iptables e um utilitario de firewall de linha de comando do Linux que usa cadeias de politicas para permitir ou bloquear trafego. Quando uma conexao tenta se estabelecer no seu sistema, o iptables procura uma regra em sua lista para corresponde-la. Se nao encontrar uma, recorre a acao padrao.

O iptables vem pre-instalado na maioria das distribuicoes Linux. Caso contrario, execute o seguinte comando para instala-lo:

O Iptables e um programa de firewall para Linux. Ele monitorara o trafego de e para o seu servidor usando tabelas. Essas tabelas contem conjuntos de regras, chamadas cadeias, que filtrarao pacotes de dados de entrada e saida.

Como o Iptables Funciona?

Quando um pacote corresponde a uma regra, ele recebe um destino, que pode ser outra cadeia ou um destes valores especiais:

Este tutorial te ajudara a aprender como o iptables funciona e como usa-lo para proteger seu VPS.Como o Iptables FuncionaTodo o trafego de rede e composto por pacotes. O iptables identifica esses pacotes e os verifica contra um conjunto de regras, em seguida, executa a acao correspondente.

O iptables filtra pacotes com base em:- Tabelas

: Tabelas sao arquivos que agrupam acoes semelhantes. Uma tabela consiste em varias cadeias.- Cadeias

: Uma cadeia e uma string de regras. Quando um pacote e recebido, o iptables encontra a tabela apropriada e a filtra atraves da cadeia de regras ate encontrar uma correspondencia.

- Regras: Uma regra e uma declaracao que diz ao sistema o que fazer com um pacote. As regras podem bloquear um tipo de pacote ou encaminhar para outro tipo.

- Alvos: Um alvo e a decisao tomada quando um pacote corresponde a uma regra. Alvos sao ACCEPT, DROP, REJECT ou QUEUE.

As tres cadeias padrao do iptables sao:- INPUT: Controla pacotes de entrada no servidor.- FORWARD: Filtra pacotes que estao sendo encaminhados para outro lugar.

- OUTPUT: Filtra pacotes que saem do servidor.

Agora vamos explorar alguns comandos praticos do iptables.Verificando o Status Atual do Iptables

Para verificar o status atual da configuracao do iptables, execute:

Dividiremos este tutorial de iptables em tres etapas. Primeiro, voce aprendera como instalar a ferramenta no Ubuntu. Em segundo lugar, mostraremos como definir as regras. Por ultimo, o guiaremos para realizar alteracoes persistentes no iptables.

1. Instalar o Iptables

O Iptables vem pre-instalado na maioria das distribuicoes Linux. No entanto, se voce nao o tiver em seu sistema Ubuntu/Debian por padrao, siga os passos abaixo:

O parametro -L lista todas as regras, enquanto -v fornece informacoes detalhadas.

Habilitando Trafego no Localhost

```bash

sudo apt-get update

sudo apt-get install iptables

```

Isso e essencial para que aplicacoes que se comunicam com o localhost funcionem corretamente.

```bash

sudo iptables -L -v

```

Aqui, a opcao `-L` e usada para listar todas as regras, e `-v` e para exibir as informacoes de forma mais detalhada.

Voce obtera um resultado semelhante ao seguinte:

```plaintext

Chain INPUT (policy ACCEPT 0 packets, 0 bytes)

pkts bytes target prot opt in out source destination

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)

pkts bytes target prot opt in out source destination

Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)

pkts bytes target prot opt in out source destination

```

Agora voce tera o firewall iptables do Linux instalado. Neste ponto, notara que todas as cadeias estao configuradas como ACCEPT e nao possuem regras. Isso nao e seguro, pois qualquer pacote pode passar sem ser filtrado.

Bloqueando Trafego

Para descartar trafego de um endereco IP especifico:

Definir uma regra significa adiciona-la a cadeia. Para fazer isso, voce deve inserir a opcao `-A` (Append) logo apos o comando iptables, da seguinte forma:

```bash

sudo iptables -A

```

Isso alertara o iptables de que voce esta adicionando novas regras a uma cadeia. Em seguida, voce pode combinar o comando com outras opcoes, como:

- `-i` (interface): a interface de rede cujo trafego voce deseja filtrar, como eth0, lo, ppp0, etc.

- `-p` (protocolo): o protocolo de rede onde o processo de filtragem e realizado. Pode ser tcp, udp, udplite, icmp, sctp, icmpv6 e mais. Alternativamente, voce pode escrever "all" para escolher todos os protocolos.

Ou bloquear um intervalo de portas:

- `--dport` (porta de destino): o numero da porta de destino de um protocolo, como 22 (SSH), 443 (https), etc.

- `-j` (destino): o nome do destino (ACCEPT, DROP, RETURN). Voce deve inseri-lo toda vez que criar uma nova regra.

Se desejar usar todos esses parametros, deve escrever o comando nesta ordem:

```bash

sudo iptables -A <cadena> -i <interfaz> -p <protocolo (tcp/udp)> -s <origen> --dport <número de puerto> -j <destino>

```

Depois de compreender a sintaxe basica, voce pode comecar a configurar o firewall para dar mais seguranca ao seu servidor. Para este tutorial de iptables, usaremos a cadeia "INPUT" como exemplo.

Habilitar o Trafego emlocalhost

Para permitir o trafego emlocalhost, digite o seguinte comando:

```bash

sudo iptables -A INPUT -i lo -j ACCEPT

```

Para este tutorial de iptables, usamos "lo" ou a interface de loopback. Ela e utilizada para todas as comunicacoes emlocalhostAs regras atuais serao salvas automaticamente. Para salvar alteracoes futuras, execute:

Habilitar Conexoes nas Portas HTTP, SSH e SSL

A seguir, queremos que as conexoes http (porta 80), https (porta 443) e ssh (porta 22) funcionem normalmente. Para isso, precisamos especificar o protocolo (-p) e a porta correspondente (--dport). Voce pode executar esses comandos um por um:

```bash

sudo iptables -A INPUT -p tcp --dport 22 -j

ACCEPT

sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT

sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT

```

E hora de verificar se as regras foram adicionadas no iptables:

```bash

sudo iptables -L -v

```

Devera retornar os resultados abaixo, o que significa que todas as conexoes de protocolo TCP das portas especificadas serao aceitas:

```plaintext

La aceptación del puerto de destino en iptables que consiste en http, https y ssh

```

Filtrar Pacotes Pela Origem

O Iptables permite filtrar pacotes com base em um endereco IP ou um intervalo de enderecos IP. Voce deve especifica-lo apos a opcao `-s`. Por exemplo, para aceitar pacotes de 192.168.1.3, o comando seria:

```bash

sudo iptables -A INPUT -s 192.168.1.3 -j ACCEPT

```

Voce tambem pode rejeitar pacotes de um endereco IP especifico substituindo o destino ACCEPT por DROP.

```bash

sudo iptables -A INPUT -s 192.168.1.3 -j DROP

```

Se desejar rejeitar pacotes de um intervalo de enderecos IP, deve usar a opcao `-m` e o modulo iprange. Em seguida, especifique o intervalo de enderecos IP com --src-range. Lembre-se, um hifen deve separar o intervalo de enderecos IP sem espaco, assim:

```bash

sudo iptables -A INPUT -m iprange --src-range 192.168.1.100-192.168.1.200 -j DROP

```

Filtrar pacotes com base em suas origens e crucial se voce esta usando um sistema de deteccao e prevencao de intrusoes (IDS/IPS) como o Suricata. Essa ferramenta monitora a rede do seu VPS e notifica sobre trafego malicioso.

O IDS/IPS exibe as origens dos pacotes maliciosos, que voce pode adicionar a lista de bloqueio do iptables. Consulte nosso artigo para saber mais sobre como configurar o Suricata no Ubuntu.

Bloquear Todo Outro Trafego

E crucial usar o destino DROP para todo outro trafego apos definir as regras --dport. Isso impedira que uma conexao nao autorizada acesse o servidor por outras portas abertas. Para fazer isso, simplesmente digite:

```bash

sudo iptables -A INPUT -j DROP

```

Agora, a conexao fora das portas especificadas sera bloqueada.

Excluir Regras

Se desejar excluir todas as regras e comecar do zero, voce pode usar a opcao -F (flush):

```bash

sudo iptables -F

```

Este comando apaga todas as regras atuais. No entanto, para excluir uma regra especifica, voce deve usar a opcao -D. Primeiro, deve ver todas as regras disponiveis digitando o seguinte comando:

```bash

sudo iptables -L --line-numbers

```

Voce obtera uma lista de regras com numeros:

```plaintext

Cadena INPUT (política ACCEPT)

num target prot opt source destination

1 ACCEPT all -- 192.168.0.4 anywhere

2 ACCEPT tcp -- anywhere anywhere tcp dpt:https

3 ACCEPT tcp -- anywhere anywhere tcp dpt:http

4 ACCEPT tcp -- anywhere anywhere tcp dpt:ssh

```

Para excluir uma regra, insira a cadeia correspondente e o numero da lista. Digamos que, para este tutorial de iptables, queremos nos livrar da regra numero tres da cadeia "INPUT". O comando seria:

```bash

sudo iptables -D INPUT 3

```

Alternativamente, se voce precisa filtrar apenas o trafego de entrada, pode usar o Firewall de VPS da Holy. Selecione seu VPS e navegue ate a secao de Firewall:

Conclusao

O Iptables e um poderoso programa de firewall que voce pode usar para proteger seu servidor Linux ou VPS. O melhor e que voce pode definir varias regras de acordo com suas preferencias.

Neste tutorial de iptables, voce aprendeu como instalar e usar a ferramenta. Agora, esperamos que voce consiga administrar seus conjuntos de regras para filtrar pacotes de entrada e saida.

E hora de experimentar por conta propria e boa sorte!

Ainda tem dúvidas?

Fale com a gente e responderemos o mais rápido possível!

Contatar o suporte