IPTABLES: Aprenda Como Utilizar A Principal Ferramenta Para Implementar Firewall No Linux

Se você vem acompanhando a série de artigos nos quais abordo as principais soluções de firewall para Linux, certamente já esperava por uma publicação especial sobre a ferramenta mais influente da categoria: o iptables.

Por que me sinto tão seguro em afirmar que o iptables é influente a tal ponto? Simplesmente, este firewall é amplamente utilizado entre especialistas em Segurança da Informação, tanto pelos recursos oferecidos, quanto pelo fato de ser um programa compatível com qualquer distribuição.

Não podemos ignorar, também, a influência do iptables para o surgimento de novas soluções de alto nível, como o nftables — confira este artigo sobre nftables e compreenda a relação. Logo, estou falando de uma aplicação relevante no contexto histórico e, ao mesmo tempo, um grande legado.

Sabendo da importância do iptables quando o assunto é firewall Linux, que tal conhecê-lo mais a fundo (inclusive as suas funcionalidades), aprender a instalá-lo e configurá-lo em seu ambiente de trabalho? Só continuar a leitura!

APRENDA A DOMINAR O LINUX

Aprenda a dominar o LINUX de uma vez por todos, pegue sua cópia

  • Ferramentas para instalar softwares adicionais
  • Shell do LINUX passo a passo, e muito mais...

iptables firewall linux

Definição do iptables

O iptables não é essencialmente um firewall, mas um programa que, por meio de seus módulos, possibilita ao usuário configurar o kernel Linux e o conjunto de regras do filtro de pacotes — função típica do firewall.

Na prática, o administrador de sistemas tem de gerenciar quatro tabelas (filter, NAT, mangle e security) com funções distintas e, com isso, aplicar as regras desejadas. Como a interação ocorre quase diretamente com o kernel, praticamente não há limites quanto à aplicação de regras via iptables.

Leia também ...   Debian: Entenda a Importância da Distribuição Para o Mundo GNU/LINUX

Instalação do iptables no CentOS

Embora as versões atuais do CentOS utilizem o Firewalld como solução padrão, cabe explicar que mantê-lo instalado é uma opção. Logo, se você deseja testar o iptables numa distribuição voltada a ambientes corporativos, como é o caso do CentOS, siga as instruções:

sudo yum install iptables-services

sudo systemctl start iptables

sudo systemctl start iptables6

sudo systemctl enable iptables # o comando enable ativará a inicialização automática do firewall

sudo systemctl enable iptables6

sudo systemctl status iptables # este comando nos retornará o status do serviço

sudo systemctl status iptables6

Concluídas as breves etapas acima o iptables estará pronto para entrar em ação.

Cinco configurações e comandos básicos do firewall

Um detalhe que deve ficar bem esclarecido: o iptables, como o próprio nome diz, trabalha com um sistema de tabelas. Portanto, aconselho que leia este artigo no qual explico as tabelas do iptables antes de aprofundar-se nos estudos. Abaixo, cinco comandos que você pode testar em seu firewall Linux.

Verificar todas as regras existentes

Uma ação bastante útil para começar a praticar o iptables é solicitar uma lista que contenha todas as regras que já estão em vigor. Faça isso digitando o comando iptables -L -n -v — repare que o iptables retornará uma lista geral.

Também é possível consultar as regras de uma tabela em especial. Por exemplo, se quisermos analisar a tabela filter, basta digitarmos iptables -t filter -L -v -n. Muito simples, não é mesmo?

Bloquear sites indesejados via iptables

Do ponto e vista de gestores e líderes de negócios, uma das maiores utilidades de um firewall na rede corporativa é garantir que os funcionários não se ocupem navegando em sites que estimulem a improdutividade, tais como as redes sociais.

Leia também ...   Comandos git Mais Utilizados Para Gerenciar Repositórios Do GitHub

No iptables, bloquear o acesso a determinados conteúdos é muito simples. Supondo que o conteúdo em questão seja o Facebook, tudo que precisamos fazer é descobrir o IP do site e, em seguida, aplicar a regra. Primeiramente, vamos acionar o comando host:

#host facebook.com

Output:

facebook.com has address 157.240.12.35

facebook.com has IPv6 address 2a03:2880:f105:283:face:b00c:0:25de

facebook.com mail is handled by 10 smtpin.vvv.facebook.com.

Copie o IP (157.240.12.35) e digite no iptables a seguinte linha:

# iptables -A OUTPUT -p tcp -d 157.240.12.35 -j DROP

Proceda da mesma maneira para bloquear os sites que compõem a lista negra do seu chefe ou da sua própria empresa.

Impedir o servidor de receber ping

Tendo em vista aprimorar a segurança do servidor Linux, o administrador de sistemas tem a opção de bloquear requisições de ping. Em outras palavras, impedir que qualquer outro computador utilize o comando ping para obter informações sobre o servidor.

No iptables, o comando para aplicar a regra é esse:

# iptables -A INPUT -p icmp -i eth0 -j DROP

Vale frisar que eth0 corresponde à interface de rede do servidor. Para descobrir as interfaces disponíveis em sua rede, utilize um dos comandos abaixo:

$ netstat -i 

# requer instalação (yum -y install net-tools)

$nmcli device status

$ ip link show

Delimitar conexões simultâneas por IP

Outro recurso interessante do iptables para controlar a rede é a delimitação de conexões por IP. Além de impor regras dentro do ambiente de trabalho, o comando que veremos abaixo é ótimo para reduzir o consumo de banda larga.

Supondo que cada usuário tenha o direito a até quatro conexões, digite:

# iptables -A INPUT -p tcp --syn --dport 22 -m connlimit --connlimit-above 4 -j REJECT

Em destaque: o comando connlimit, usado especialmente para estabelecer limites de conexão, e o número 4 como indicador.

Leia também ...   Nginx - Conheça o Servidor Web Mais Rápido do Mercado

Bloquear um IP específico

Ao monitorar a rede de computadores, o administrador de sistemas pode identificar atividades suspeitas ou abusivas, as quais devem ser coibidas imediatamente. O processo para isso é muito simples, bastando ao sysadmin pegar o endereço de IP do alvo e inseri-lo no seguinte comando:

# iptables -A INPUT -s 000.000.000.000 -j DROP

Mas como realizar o desbloqueio do respectivo IP? Acione a opção -D (ou –delete) para remover a regra em questão.

# iptables -D INPUT -s 000.000.000.000 -j DROP

A flag -D, inclusive, se aplica a qualquer regra que o usuário queira eliminar.

Gostou das regras elencadas até aqui? Se sim, fique atento aos próximos conteúdos sobre firewall ou, se preferir, deixe um comentário pedindo uma publicação especial de comandos do iptables, fechado?

Convém destacar, no entanto, que o site Profissionais Linux o possibilita a descobrir um meio rápido e eficaz para especializar-se em tudo que envolve o sistema Linux, inclusive as soluções de firewall. Confira!

Sobre pedrodelfino

Trabalha a mais de 14 anos com administração de sistemas LINUX, dedicado em ensinar novos profissionais a atuar com servidores. Saiba mais aqui. "Caso queira participar de uma aula online comigo utilize o formulário Acima"

Você Precisa  { DOMINAR } O Sistema LINUX?