Cada vez que reinicio, perco as regras do iptables que demorei muito para entrar. Eu sei que possosalve-os e restaure-os na inicialização, mas existe alguma maneira de salvá-los para sempre? Eu realmente preciso restaurá-los sempre na inicialização? Seriamente?
O problema é que eu tenho umLista ENORMEde IPs nos quais uso um loop while para carregá-los. Isso pode levar mais de 10 minutos.
Este é o meu servidor FTP doméstico. É uma VM pequena com 1 GB de RAM e muito pouco poder de processamento. Existem tantos IPs porque desisti do continente asiático. Não preciso que eles acessem meu servidor FTP todos os dias com força bruta. Eu também bloqueio o governo. monitores, rastreadores e spammers.
Este é o loop while que uso para carregar a lista.
grep INPUT block.list | while read LISTA; do sudo iptables -A $LISTA; done
Responder1
apt-get install iptables-persistent
Na instalação, ele deve salvar sua configuração atual do iptables. Caso contrário, você pode salvá-los nesses arquivos (dependendo da v4 ou v6) e o iptables-persistent irá carregá-los na inicialização :)
iptables-save > /etc/iptables/rules.v4
ip6tables-save > /etc/iptables/rules.v6
Responder2
Primeiro, crie um arquivo com o conteúdo de iptables-save
:
sudo iptables-save > /etc/iptables_rules
Realmente não importa onde você coloca o arquivo, tudo o que você precisa fazer é garantir que a próxima linha se refira ao mesmo arquivo. Em seguida, abra /etc/rc.local
e adicione esta linha:
/sbin/iptables-restore < /etc/iptables_rules
De agora em diante, toda vez que seu computador for ligado ou reiniciado, o iptables carregará as regras do arquivo que você especificou.
Responder3
Se você tiver muitas regras, considere também usar o ipset em conjunto com o iptables. O Ipset usa uma tabela de banco de dados indexada e é muito mais rápido que o iptables ao procurar um endereço para decidir se aceita ou nega.