Como proteger seu servidor Linux usando IPTABLES
Infelizmente, existem muitos casos de invasão de servidores. Devido a este fato, a utilização de um firewall é essencial para aumentar a segurança da rede. Você pode aumentar a proteção do seu servidor usando Iptables para configurar o firewall.
Iptables é um utilitário de firewall para sistemas operacionais baseados em Linux, que muitas distribuições Linux, como Rocky Linux e CentOS, incluem por padrão.
Qualquer pessoa pode achar o Iptables útil para proteção adicional do servidor, seja você um administrador de sistema e deseja evitar possíveis ameaças à segurança do servidor ou usa VPS e deseja garantir que, por exemplo, o VPS Rocky Linux esteja funcionando perfeitamente com proteção decente.
Este artigo contará mais sobre o Iptables e como você pode utilizar a ferramenta para proteger seu servidor.
Como funciona a ferramenta IPtables?
Iptables é um utilitário de firewall que realiza comparações de rede de acordo com regras específicas.
Basicamente, ele monitora o tráfego vindo de e para o servidor por meio de tabelas. As tabelas contêm o referido conjunto de regras, chamadas de cadeias, que permitem filtrar pacotes de dados que o servidor recebe e encaminha. As cadeias implicam regras segundo as quais o pacote é verificado.
Existem cadeias padrão no Iptables, como:
- Regras de entrada. Eles regulam todos os pacotes que chegam ao servidor.
- Regras de Saída. Eles lidam com todo o tráfego que o servidor produz.
- Regras de encaminhamento. Eles lidam com pacotes recebidos não endereçados ao servidor.
Essas são cadeias predefinidas, mas você pode criar as suas próprias.
Cada cadeia possui uma política que determina o que acontece com os pacotes que cumprem ou não as regras; um pacote pode ser aceito ou rejeitado.
A estratégia de proteger seu servidor com Iptables consiste em rejeitar tudo que não tenha sua permissão para aceitar.
Comece a usar Iptables
Você pode querer começar a configurar as regras, mas precisa cuidar de algo antes de fazer isso. Se você não possui Ubuntu, Debian, RHEL, Rocky Linux ou AlmaLinux, pode ser necessário instalar adicionalmente o Iptables. Além disso, prosseguiremos, considerando que os Iptables já estão instalados.
Identifique o comportamento padrão da cadeia
O comportamento padrão da cadeia informará como as cadeias são configuradas e quais alterações você deseja fazer.
Para descobrir a configuração de cadeia padrão, execute o seguinte comando:
$sudo iptables -L comando
Por exemplo, você pode perceber que as cadeias estão configuradas para aceitar todo o tráfego, que é exatamente o que você deseja. Se você descobrir que alguma cadeia rejeita o tráfego, execute o seguinte:
$sudo iptables —policy INPUT ACCEPT
$sudo iptables —policy OUTPUT ACCEPT
$sudo iptables —policy FORWARD ACCEPT
Agora, quando o seu servidor aceitar todas as conexões, você poderá definir exatamente o que deseja bloquear. Se você estiver trabalhando com dados confidenciais, pode ser uma boa ideia bloquear completamente as conexões e escolher apenas os endereços IP dos quais deseja receber o tráfego. Para fazer isso, digite o seguinte:
$sudo iptables —policy INPUT DROP
$sudo iptables —policy OUTPUT DROP
$sudo iptables —policy FORWARD DROP
Isso só será benéfico se você estiver trabalhando com dados confidenciais. Caso contrário, esta etapa não é obrigatória.
Configurar conexões individuais
Configurar conexões individuais implica que você “diga” ao Iptables como se comportar quando se trata de um endereço IP específico. Para configurar conexões individuais, existem três comandos: aceitar, descartar e rejeitar.
- Aceitar implica que a conexão será aceita.
- Drop implica que a conexão será bloqueada para interagir com o servidor.
- Rejeitar implica bloquear a tentativa de interação com o servidor e notificá-la com a mensagem de erro.
Por exemplo, para bloquear o endereço IP específico, você pode usar o seguinte comando:
$sudo iptables -A INPUT -S (insira o endereço IP que deseja bloquear) -j DROP
Para bloquear várias conexões, use:
$sudo iptables -A INPUT -s (endereço IP 1)/(endereço IP 2) /.0 -j DROP
Se quiser excluir uma regra específica, você também pode fazer isso. Se você cometeu um erro ou deseja excluir uma regra específica, você pode fazer isso com um comando -D combinado com o número da regra que deseja excluir.
$sudo iptables -D INPUT (número da regra)
E se você quiser remover um monte de regras, você pode usar um comando -F:
$sudo iptables -F
Isso limpará seu Iptable.
Conclusão
Iptables é uma ferramenta altamente versátil para proteger seu servidor do tráfego indesejado. Os usuários do Linux acharão esta ferramenta eficaz para gerenciar o fluxo de tráfego relacionado a endereços IP, portas ou protocolos.
Este artigo cobre apenas uma fração da funcionalidade do Iptables, mas ainda esperamos que seja útil. A experiência que você tem ao usar seu servidor é crucial tanto para o gerenciamento eficiente quanto para a segurança de seu servidor, e o Iptables é uma das ferramentas mais úteis nesse sentido.