Por que “echo f” no caso de limpar a tabela conntrack não funciona no debian?

3

Muitas pessoas não limpam a tabela conntrack quando querem recarregar suas regras de firewall. Quando você tem algumas conexões ESTABLISHED, todas as sessões não serão afetadas quando você adiciona uma regra que bloqueia algumas das conexões em questão (no estado NEW). A única maneira de garantir que isso não aconteça é matar todas as sessões limpando a tabela conntrack. Nesse caso, todos os pacotes atingirão a regra INVALID e você terá que fazer uma nova conexão, que agora passa pelas novas regras de iptables .

No OpenWRT, você pode simplesmente fazer o seguinte:

# echo f > /proc/net/nf_conntrack

Mas infelizmente esta solução não funciona no debian.

# echo f > /proc/net/nf_conntrack
echo: write error: Input/output error

Veja por que:

# ls -al /proc/net/nf_conntrack
-r--r----- 1 root root 0 2016-06-05 10:45:52 /proc/net/nf_conntrack

No debian, você precisa instalar o pacote conntrack e digitar o seguinte comando:

# conntrack -F
conntrack v1.4.3 (conntrack-tools): connection tracking table has been emptied.

Por que echo f não funciona no debian? Existe uma maneira de fazê-lo funcionar de alguma forma, ou sou forçado a usar a ferramenta conntrack ?

    
por Mikhail Morfikov 05.06.2016 / 10:48

0 respostas