Pular para o conteúdo principal

Iptables - Conceito e aplicação

Firewall Iptables


O firewall Iptables é instalado por padrão no Ubuntu Linux. Sua configuração default permite todo e qualquer tráfego,  o tornando ineficaz.

O objetivo deste tutorial é ensinar os comandos básicos do Iptables, mas, de modo a proporcionar uma configuração satisfatória dos Serviços. 

 

Log no Terminal como Administrador


Sudo –s
Senha root
Em seguida digite o comando:
sudo iptables –L

Lembre-se que o Linux faz reconhecimento entre maiúscula e minúscula, (L). Este comando irá mostrar as regras em funcionamento no Iptables. Caso a instalação do sistema seja padrão, você verá a seguinte informação:


Chain INPUT (policy ACCEPT)
target     prot opt source               destination

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

Agora Permita as Sessões Estabelecidas



Com o comando a seguir, permitimos que todas as sessões estabelecidas recebam tráfego:

# iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

 

Liberando Tráfego de Entrada em Portas Específicas



O próximo passo (deve) ser permitirmos SSH antes de aplicarmos qualquer tipo de bloqueio.
Como é do conhecimento de qualquer técnico Linux (tradicionalmente o SSH usa a porta 22). Então podemos dizer ao Iptables para permitir todo tráfego TCP na porta 22 do adaptador de rede com o comando:

# iptables -A INPUT -p tcp -i eth0 --dport ssh -j ACCEPT

Agora liste o Iptables para ver se as regras implantadas foram aplicadas corretamente:
Nas primeiras linhas, que é o exemplo que uso aqui, será mostrado algo semelhante a:


# iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     all  --  anywhere             anywhere            state RELATED,ESTABLISHED
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:ssh

O próximo passo será liberarmos todo o tráfego da web:

# iptables -A INPUT -p tcp -i eth0 --dport 80 -j ACCEPT
Analisando novamente as regras temos algo como:


# iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     all  --  anywhere             anywhere            state RELATED,ESTABLISHED
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:ssh
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:www

Permitimos o tráfego TCP ao SSH e portas WEB, mas como não bloqueamos nada, todo o tráfego continua chegando.

 

Bloqueando Tráfego



Como nossas regras permitindo SSH e tráfego WEB vêm primeiro, e como nossa regra para bloquear todo o tráfego vêm depois delas, nós podemos permanecer aceitando o tráfego que queremos.
Tudo que precisamos fazer é colocar a regra para bloquear todo o tráfego no fim. O comando -A diz ao Iptables para adicionar a regra no final, então nós usaremos isso outra vez.


# iptables -A INPUT -j DROP
# iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     all  --  anywhere             anywhere            state RELATED,ESTABLISHED
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:ssh
ACCEPT     tcp  --  anywhere             anywhere            tcp dpt:www
DROP       all  --  anywhere             anywhere

Por não especificarmos uma interface ou protocolo, qualquer tráfego de qualquer porta em qualquer interface está bloqueado, exceto para a WEB e SSH.

Postar um comentário

Postagens mais visitadas deste blog

Linux e Escola

Quais as possibilidades de uso do Linux nas escolas? 
Essas possibilidades vão do uso básico ao avançado. O sucesso do uso básico do Linux por parte dos alunos, professores e demais integrantes das unidades básicas de ensino, dependerá de um treinamento de poucas horas e, acompanhamento inicial.

MAQUINAS VIRTUAIS – PROCESSADORES MULTICORE E CONTAINER DOCKER

Diferentemente do que os jovens entusiastas da informática pensam, as Máquinas Virtuais (Virtual Machine, VM), remontam, de maneira significativa, a década de 1960. Evidente que, se nesse período aqui no Brasil os aparelhos televisivos podiam ser contados nos dedos, quanto mais uma VM.

INICIANTES LINUX - OTIMIZAÇÃO DO TEMPO - LONG TERM SUPPORT (LTS)

O tempo torna-se escasso para todas as pessoas.  Principalmente, àqueles que levam uma vida comprometida com o desenvolvimento pessoal e com demais afazeres, são os que lidam de forma constante com o dilema da otimização do tempo. Devido a isso, cabe uma orientação importante aos que iniciaram sua carreira Linux: tenham "foco".