Use a opção -I
:
sudo iptables -I INPUT 1 -i lo -j ACCEPT
Isto iria inserir uma regra na posição # 1 na cadeia INPUT.
Pergunta básica: como PREPARAR as regras sobre IPTABLES em vez de APENDAR?
Eu tenho DROP
declarações no final das minhas regras. Eu tenho um software para adicionar novas regras, mas adicionar regras depois de DROP
declarações não é bom. Toda vez que eu quero adicionar uma nova regra, eu tenho que liberar a tabela (que é ineficiente).
Existe uma maneira de prefixar uma regra, ou seja, adicionar uma regra ao topo da tabela em vez de à parte inferior?
Muito obrigado.
-I
será inserido. Você provavelmente está usando -A
para anexar.
Você também pode fazer iptables -I chain rulenum
para inserir uma regra como o número "rulenum" na cadeia "chain". -R chain rulenum
pode ser usado para substituir uma regra específica no número "rulenum" na cadeia "chain". iptables -L -n --line-numbers
mostrará os números das regras na coluna mais à esquerda.
Para ajudar a determinar qual número de linha para adicionar a nova regra, eu uso iptables-save
para gerar as regras existentes para o console.
Para iniciantes, também posso sugerir um cartão de trapaça usando o webmin para administrar suas regras. É muito amigável e você pode facilmente reordenar regras manualmente na lista. Ele também irá lidar com as variações 'leves' em implementações baseadas em redhat vs debian do iptables.
Existe um programa chamado iptables-persistent
que torna as regras do iptable persistentes como um serviço do SO. este serviço inclui um arquivo de configuração como iptables-save
export.
Assim, você pode reordenar as linhas no arquivo de configuração e reiniciar o serviço.
sudo service iptables-persistent restart
Tão fácil !!!!!