Eventualmente, acho que o comando de remoção só funciona de uma só vez devido às regras serem registradas no direct.xml
Assim, a solução é fácil, edite o direct.xml
e comente as linhas correspondentes ou apenas as exclua.
Depois de atualizar o sistema de 6.5 para 7, comecei a aprender a implementar o firewall dinâmico, no entanto, cometi um erro ao adicionar a seguinte regra
firewall-cmd --permanent --direct --add-rule ipv4 filter OUTPUT 1 -j DROP
que fazem a máquina soltar toda a saída para fora,
Eu tentei usar
firewall-cmd --permanent --direct --remove-rule ipv4 filter OUTPUT 1 -j DROP
para receber todos de volta.
No entanto, depois de
firewall-cmd --reload
e
firewall-cmd --direct --get-all-rules
, acho que esta regra volta automaticamente.
Eu até tentei
firewall-cmd --complete-reload
mas sem efeito.
O que posso fazer agora?
Depois de lutar com uma regra de redirecionamento teimosamente persistente, percebi o seguinte:
iptables
regras O banco de dados é transitório firewall-cmd --permanent
O banco de dados DB continua sendo reinicializado, reescrevendo iptables
de regras do banco de dados após a reinicialização
firewall-cmd --permanent --direct
regras O banco de dados armazenado em /etc/firewalld/direct.xml
persiste apesar de firewall-cmd [--permanent] --direct --remove-rule
, a menos que o arquivo do banco de dados seja removido
firewall-cmd [--permanent] --direct --query-rule
falará sobre a persistência de regras em /etc/firewalld/direct.xml
tentei a mesma coisa e meu direct.xml foi esvaziado após a execução
firewall-cmd --direct --remove-rule ...
sem opção - permanente.
Depois de recarregar, não há regras diretas que foram removidas.
Com essa opção, as regras voltaram após o recarregamento.
Não é necessário editar o arquivo direct.xml. Faça um:
# systemctl restart firewalld
e isso serve.
firewall-cmd
[ --permanent
] --direct --remove-rules
{ ipv4
| ipv6
| eb
} cadeia de tabelas