O Guia do Iniciante em iptables, o Firewall Linux

Aug 27, 2025
Privacidade e segurança

Iptables é um utilitário de firewall extremamente flexível desenvolvido para sistemas operacionais Linux. Quer você seja um novato em Linux ou um administrador de sistema, provavelmente existe uma maneira de o iptables ser de grande utilidade para você. Continue lendo enquanto mostramos como configurar o firewall Linux mais versátil.

Sobre iptables

iptables é um utilitário de firewall de linha de comando que usa cadeias de políticas para permitir ou bloquear o tráfego. Quando uma conexão tenta se estabelecer em seu sistema, o iptables procura uma regra em sua lista para combiná-la. Se não encontrar um, ele recorre à ação padrão.

O iptables quase sempre vem pré-instalado em qualquer distribuição Linux. Para atualizá-lo / instalá-lo, basta recuperar o pacote iptables:

sudo apt-get install iptables

Existem alternativas de GUI para iptables como Firestarter , mas o iptables não é tão difícil assim que você tem alguns comandos disponíveis. Você deve ser extremamente cuidadoso ao configurar as regras de iptables, especialmente se estiver usando SSH em um servidor, porque um comando errado pode bloqueá-lo permanentemente até que seja corrigido manualmente na máquina física.

Tipos de cadeias

O iptables usa três cadeias diferentes: entrada, encaminhamento e saída.

Entrada - Esta cadeia é usada para controlar o comportamento das conexões de entrada. Por exemplo, se um usuário tentar fazer SSH em seu PC / servidor, o iptables tentará combinar o endereço IP e a porta com uma regra na cadeia de entrada.

frente - Esta cadeia é usada para conexões de entrada que não estão realmente sendo entregues localmente. Pense em um roteador - os dados estão sempre sendo enviados a ele, mas raramente destinados ao próprio roteador; os dados são apenas encaminhados ao seu destino. A menos que você esteja fazendo algum tipo de roteamento, NAT, ou algo mais em seu sistema que requer encaminhamento, você nem mesmo usará esta cadeia.

Existe uma maneira infalível de verificar se o seu sistema usa / precisa ou não da corrente direta.

iptables -L -v

A captura de tela acima é de um servidor que está funcionando há algumas semanas e não tem restrições para conexões de entrada ou saída. Como você pode ver, a cadeia de entrada processou 11 GB de pacotes e a cadeia de saída processou 17 GB. A cadeia de encaminhamento, por outro lado, não precisa processar um único pacote. Isso ocorre porque o servidor não está fazendo nenhum tipo de encaminhamento ou sendo usado como um dispositivo de passagem.

Resultado - Esta cadeia é usada para conexões de saída. Por exemplo, se você tentar executar ping em howtogeek.com, o iptables verificará sua cadeia de saída para ver quais são as regras relacionadas ao ping e howtogeek.com antes de tomar a decisão de permitir ou negar a tentativa de conexão.

A ressalva

Mesmo que o ping em um host externo pareça algo que só precisa atravessar a cadeia de saída, lembre-se de que, para retornar os dados, a cadeia de entrada também será usada. Ao usar iptables para bloquear seu sistema, lembre-se de que muitos protocolos exigirão comunicação bidirecional, portanto, as cadeias de entrada e saída precisarão ser configuradas corretamente. SSH é um protocolo comum que as pessoas esquecem de permitir em ambas as cadeias.

Comportamento padrão da cadeia de políticas

Antes de entrar e configurar regras específicas, você deve decidir qual será o comportamento padrão das três cadeias. Em outras palavras, o que você deseja que o iptables faça se a conexão não corresponder a nenhuma regra existente?

Para ver o que suas cadeias de políticas estão configuradas para fazer com tráfego incomparável, execute o iptables -L comando.

Como você pode ver, também usamos o comando grep para nos fornecer uma saída mais limpa. Nessa captura de tela, nossas cadeias estão atualmente configuradas para aceitar tráfego.

Na maioria das vezes, você desejará que seu sistema aceite conexões por padrão. A menos que você tenha alterado as regras da cadeia de políticas anteriormente, esta configuração já deve estar definida. De qualquer forma, aqui está o comando para aceitar conexões por padrão:

iptables --policy INPUT ACCEPT
iptables --policy OUTPUT ACCEPT
iptables --policy FORWARD ACCEPT

Por padrão para a regra de aceitação, você pode usar iptables para negar endereços IP ou números de porta específicos, enquanto continua a aceitar todas as outras conexões. Chegaremos a esses comandos em um minuto.

Se você preferir negar todas as conexões e especificar manualmente quais deseja permitir a conexão, você deve alterar a política padrão de suas chains para cair. Provavelmente, isso só seria útil para servidores que contêm informações confidenciais e apenas têm os mesmos endereços IP conectados a eles.

iptables --policy INPUT DROP
iptables --policy OUTPUT DROP
iptables --policy FORWARD DROP

Respostas específicas de conexão

Com suas políticas de cadeia padrão configuradas, você pode começar a adicionar regras ao iptables para que ele saiba o que fazer quando encontrar uma conexão de ou para um endereço IP ou porta em particular. Neste guia, examinaremos as três "respostas" mais básicas e comumente usadas.

Aceitar - Permita a conexão.

Solta - Desligue a conexão, aja como se nunca tivesse acontecido. Isso é melhor se você não quiser que a fonte perceba que seu sistema existe.

Rejeitar - Não permitir a conexão, mas enviar de volta um erro. Isso é melhor se você não quiser que uma fonte específica se conecte ao seu sistema, mas deseja que eles saibam que seu firewall os bloqueou.

A melhor maneira de mostrar a diferença entre essas três regras é mostrar como é quando um PC tenta fazer ping em uma máquina Linux com iptables configurado para cada uma dessas configurações.

Permitindo a conexão:

Abandonando a conexão:

Rejeitando a conexão:

Permitir ou bloquear conexões específicas

Com suas cadeias de políticas configuradas, você agora pode configurar iptables para permitir ou bloquear endereços, intervalos de endereços e portas específicos. Nestes exemplos, definiremos as conexões para SOLTA , mas você pode mudá-los para ACEITAR ou REJEITAR , dependendo de suas necessidades e como você configurou suas cadeias de políticas.

Nota: Nestes exemplos, vamos usar iptables -A para acrescentar regras à cadeia existente. iptables começa no topo de sua lista e passa por cada regra até encontrar uma que corresponda. Se precisar inserir uma regra acima da outra, você pode usar iptables -I [chain] [number] para especificar o número que deve estar na lista.

Conexões de um único endereço IP

Este exemplo mostra como bloquear todas as conexões do endereço IP 10.10.10.10.

iptables -A INPUT -s 10.10.10.10 -j DROP

Conexões de uma variedade de endereços IP

Este exemplo mostra como bloquear todos os endereços IP no intervalo de rede 10.10.10.0/24. Você pode usar uma máscara de rede ou notação de barra padrão para especificar o intervalo de endereços IP.

iptables -A INPUT -s 10.10.10.0/24 -j DROP

ou

iptables -A INPUT -s 10.10.10.0/255.255.255.0 -j DROP

Conexões para uma porta específica

Este exemplo mostra como bloquear conexões SSH de 10.10.10.10.

iptables -A INPUT -p tcp --dport ssh -s 10.10.10.10 -j DROP

Você pode substituir “ssh” por qualquer protocolo ou número de porta. o -p tcp parte do código informa ao iptables que tipo de conexão o protocolo usa. Se você estava bloqueando um protocolo que usa UDP em vez de TCP, então -p udp seria necessário em vez disso.

Este exemplo mostra como bloquear conexões SSH de qualquer endereço IP.

iptables -A INPUT -p tcp --dport ssh -j DROP

Estados de conexão

Como mencionamos anteriormente, muitos protocolos exigirão comunicação bidirecional. Por exemplo, se você deseja permitir conexões SSH ao seu sistema, as cadeias de entrada e saída precisarão de uma regra adicionada a elas. Mas, e se você quiser que apenas SSH entrando em seu sistema seja permitido? Adicionar uma regra à cadeia de saída também não permitirá tentativas SSH de saída?

É aí que entram os estados de conexão, que oferecem a capacidade necessária para permitir a comunicação bidirecional, mas apenas permitir o estabelecimento de conexões unilaterais. Dê uma olhada neste exemplo, onde conexões SSH DE 10.10.10.10 são permitidas, mas conexões SSH PARA 10.10.10.10 não são. No entanto, o sistema pode enviar informações de volta por SSH, desde que a sessão já tenha sido estabelecida, o que torna possível a comunicação SSH entre esses dois hosts.

iptables -A INPUT -p tcp --dport ssh -s 10.10.10.10 -m state --state NOVO, ESTABELECIDO -j ACEITAR

iptables -A SAÍDA -p tcp --sport 22 -d 10.10.10.10 -m estado --estado ESTABELECIDO -j ACEITAR

Salvando alterações

As alterações que você fizer nas regras do iptables serão descartadas na próxima vez que o serviço iptables for reiniciado, a menos que você execute um comando para salvar as alterações. Este comando pode ser diferente dependendo da sua distribuição:

Ubuntu:

sudo / sbin / iptables-save

Red Hat / CentOS:

/ sbin / service iptables save

Ou

/etc/init.d/iptables save

Outros Comandos

Liste as regras de iptables atualmente configuradas:

iptables -L

Adicionando o -at opção lhe dará informações de pacote e byte, e adicionando -n irá listar tudo numericamente. Em outras palavras - nomes de host, protocolos e redes são listados como números.

Para limpar todas as regras configuradas atualmente, você pode emitir o comando flush.

iptables -F

Iptables Walkthrough (Linux Firewall)

Introduction To Linux IPTables

Introduction To Linux Firewall

Using `iptables` On Linux

Iptables Firewall Examples (ITS335, L23, Y14)

07 Iptables Firewall Rules

Firewalling In Linux Using IPtables Sp8scorp

Introduction To Linux: #15 - Iptables

Introduction To Iptables

Introduction To IPTables

Linux Firewall Configurations - Intro To Firewalld (RHCE Topic)

Linux Iptables - Configuring And Implementing Linux Iptables - Learn About Ip Values And Ranges #41

Advanced Linux Firewall Config. With Firewalld Rich Rules And IPset - Rich Rules + Ipset

Ubuntu Server 18.04 Administration Guide Part 11 - Configuring Firewall Rules With UFW

Intro To IPTables With Jason

Understand The Security At OS & Network Level | Configure Linux Firewall | DevOps Tutorial | Edureka


Privacidade e segurança - Artigos mais populares

O que é Kevo Plus e vale a pena?

Privacidade e segurança Aug 23, 2025

CONTEÚDO NÃO CHEGADO O Kwikset Kevo não se conecta diretamente à internet, então controlá-lo remotamente não é possível, a menos que você obtenha o Kevo More ..


Como fazer download de gravações de suas câmeras Netgear Arlo

Privacidade e segurança May 23, 2025

CONTEÚDO NÃO CHEGADO O sistema de câmeras Arlo da Netgear grava automaticamente o vídeo sempre que um movimento é detectado, e você pode ver essas gravações de vídeo no a..


Como desinstalar aplicativos em um Mac: tudo o que você precisa saber

Privacidade e segurança Mar 31, 2025

Desinstalar um aplicativo em um Mac é tão fácil que você pode nem perceber como fazer isso: basta arrastar o ícone do aplicativo da pasta Aplicativos para a lixeira. Mas e quan..


Como desativar as notificações do Norton e o pacote de software

Privacidade e segurança Feb 9, 2025

CONTEÚDO NÃO CHEGADO Norton , como a maioria das outras ferramentas antivírus, é bastante intrusivo. Ele instala uma barra de ferramentas em seu navegador da web, ..


O que é um botnet?

Privacidade e segurança Sep 21, 2025

Botnets são redes feitas de computadores controlados remotamente, ou “bots”. Esses computadores foram infectados com malware que permite que sejam controlados remotamente. Algu..


Mantenha a simplicidade: aqui estão as quatro únicas ferramentas de sistema e segurança de que você precisa no Windows

Privacidade e segurança Sep 28, 2025

CONTEÚDO NÃO CHEGADO O Windows é complicado e precisa de muitos utilitários de sistema e ferramentas de segurança diferentes para funcionar bem - ou precisa? Recentemente cob..


Da caixa de dicas: Algoritmos de senha pessoal, renderização de fontes Linux / Mac no Windows e AudioManager para Android

Privacidade e segurança Aug 4, 2025

CONTEÚDO NÃO CHEGADO Uma vez por semana, acessamos a caixa de dicas e compartilhamos algumas das joias que encontramos lá. Esta semana, estamos examinando como gerar facilmente..


Área de trabalho remota com guias / cliente VNC para Windows

Privacidade e segurança Nov 27, 2024

CONTEÚDO NÃO CHEGADO Qualquer pessoa que trabalhe em um ambiente com vários servidores sabe que pode ser irritante ter meia dúzia de janelas de área de trabalho remota abertas a qualqu..


Categorias