iptables: alterar política ou usar regra pega-tudo?

5

O que você faz ao configurar o iptables: alterar a política padrão ( iptables -P INPUT DROP , por exemplo) ou adicionar uma regra pega-tudo no final do conjunto de regras ( iptables -A INPUT DROP )? Se você preferir um em particular, qual é a razão por trás de sua preferência?

Esta pode ser uma questão muito subjetiva para este fórum, mas talvez haja algumas boas razões para escolher uma sobre a outra que eu não conheço.

Contra o modo de política que tenho, é provavelmente mais fácil bloquear-se fora do servidor devido a um iptables -F excessivamente otimista. Para isso, é provável que seja mais fácil excluir a regra de pega-tudo sem percebê-la, deixando o servidor realmente aberto (isso aconteceu comigo no passado).

É verdade que você não deve confiar no firewall como sua única proteção da Internet (na maioria das vezes você pode vincular os serviços de rede interna apenas ao host local ou à rede interna, por exemplo), mas às vezes é forçado a expor serviços semi-públicos a uma rede de origem específica, etc.

Pessoalmente, tenho a tendência de preferir o primeiro ao escrever um conjunto de regras desde o início, mas manter o que já está em vigor se atualizar um já existente.

    
por Eduardo Ivanec 09.05.2011 / 16:31

4 respostas

4

Eu uso os dois, definindo a política, e uma regra final, porque eu sou hardcore assim.

Eu tenho minhas regras definidas em um script que eu chamo e atualizo. Eu nunca chamo o iptables diretamente de outra forma, ocasionalmente, listando as regras / estatísticas. Eu nunca vi uma razão pela qual um é melhor que o outro.

    
por 09.05.2011 / 17:56
2

Em termos de trade-off, eu preferiria ter uma máquina sem firewall por um período de tempo, por acidente (que é o risco de ter -P PERMITE se você liberar suas regras e esquecer ou similar) do que fazer com que uma máquina caia da rede por acidente (que é a consequência de um flush se a política for DROP). Meu raciocínio é que o firewall não é o único método de proteger meus servidores, portanto, o mau funcionamento do firewall é um erro, e não uma catástrofe. Um serviço indisponível para os usuários com mais frequência é uma catástrofe.

    
por 20.05.2011 / 14:51
2

Aqui estão duas razões pelas quais ter uma regra "pega tudo" pode ser melhor:

  1. A política padrão tem opções limitadas. Se você não quer que o pacote passe por você, escolha uma vez: DROP (pacote bate no chão). Na regra pega-tudo você pode usar o REJECT que pode enviar uma resposta ICMP.
  2. Se você tiver algum script que analise a saída de iptables -L, a regra pega-tudo é exibida no mesmo formato de todas as outras regras, facilitando a análise.
por 27.05.2011 / 18:38
1

Algo que acabei de notar: a política DROP permite anexar regras ao conjunto de regras usando iptables -A após o fato. Isso pode ser útil, pois permite que você mantenha o conjunto de regras facilmente, e pode ser especialmente útil quando você constrói o conjunto de regras on-the-fly (salvando-o depois com iptables-save ou algo parecido).

    
por 20.06.2011 / 14:53