Como bloquear um IP no Linux usando iptables

Iptables é a aplicação nativa de firewall do linux. Através dele, você pode realizar bloqueio de IPs, controle de tráfego de entrada, bloqueios de saida de tráfego… Além disso, ele também possui funções avançadas como controle de tráfego por uma porta específica. Para trabalhar com o IPTABLES, é muito importante saber seu IP. Por isso, você pode consultar seu IP nesta página: Qual o meu IP ?

Nesta semana, um de nossos parceiros estava recebendo um flood (ataque) em seu servidor de e-mails (IMAP). Determinado endereço IP estava realizando tal ataque.

Analizando as mensagens de erro, descobrimos se tratar do IP 189.1.**.** . Para resolver o problema, fizemos o bloqueio do endereço IP que estava originando o ataque, usando o firewall iptables.

Bloqueando um IP

Nos exemplos a seguir, substitua sempre o IP 1.2.3.4 pelo IP que deseja bloquear!

Inicialmente, para realizar um simples bloqueio ao IP que causou o ataque:

Dessa forma, o IP problemático já estará bloqueado e o servidor não receberá mais nenhum dado dele.

Opções mais avançadas do iptables para realizar bloqueios:

Caso seu servidor tenha mais de uma placa de rede, você pode bloquear apenas em uma placa específica (aonde eth1 é a interface que receberá o bloqueio).

Como bloquear um range inteiro (subnet) de 254 IPs ? Por exemplo: 189.1.50.1  até 189.1.50.254 ? Simplesmente,  troque o último bloco do IP por “0” e adicione /24 ao final:

Como bloquear uma sub-rede ainda maior? Por exemplo, 189.1.1.1 até 189.1.254.254 ? Substitua os dois ultimos blocos por “0” e agora adicione /16 ao final:

Como gerar um log a cada bloqueio realizado com o iptables ?

Como exibir todos os IPs bloqueados no sistema?

Como verificar se determinado IP está ou não bloqueado ?

Como desbloquear um IP no firewall iptables ?

Primeiramente vamos listar os IPs bloqueados:

Por exemplo, o resultado:

Dessa forma, supondo que queremos desbloquear o IP 201.19.18.100 , que está na linha 2:

Salvando as configurações do iptables para o próximo boot

Por fim, para conferir a lista de regras iptables no boot, use este comando:

 

 

One thought on “Como bloquear um IP no Linux usando iptables”

  1. O meu moto G possui o Android 4.4.4 com root e nele eu até consigo fazer o bloqueio de IPs usando o apk IPTABLES2 mas tudo é perdido ao reiniciar o aparelho. Lembro que no meu antigo Samsung Young os bloqueios permaneciam salvos. Lembrando que este comando ‘services iptable save’ não salvou retornando um unknown.

    Se alguém sabe de uma solução posta aqui.

    Minha provável solução seria tentar por um script no boot do android mas não sei ainda como linkar este script ao iptables.

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

hhchat