A maioria dos filtros de spam e firewalls modernos fazem uso de listas negras - listas de endereços de protocolo de Internet a partir de spammers e redes maliciosas - para melhor proteger os usuários contra ameaças conhecidas. No Linux, o firewall Shorewall não é excepção, e fornece uma iptables mais fácil (de roteamento IP) de configuração para configurar e implementar listas negras personalizadas. Fazendo a lista negra, ou saber quais IPs para bloquear, pode ser difícil.
Criação Blacklist manual
Aberto "/ Etc / shorewall / lista negra" e role para baixo. Deve ser algo como isto:
ENDEREÇO / sub-protocolo de portaÚltima linha - ADD suas entradas antes deste - NÃO REMOVERIntroduzir quaisquer endereços que você deseja bloquear. (Os sites Spamhaus e URLBlacklist em Recursos mostram algumas ameaças atuais.) Os endereços podem ser endereços de rede / host / IP (singular ou um intervalo), endereços MAC (prefixado com "~") Ou ipsets (usando "+"). Adicione quaisquer limitações de protocolo e porta. (Note que você só pode especificar portas se o protocolo é "tcp" ou "udp.")
Por exemplo, digamos que você deseja bloquear todo o tráfego TCP de entrada nas portas 1 a 31, a entrada ficaria assim:
ENDEREÇO / sub-protocolo de porta
- tcp 01:31
Uma entrada de endereço MAC para bloquear todo o tráfego a partir dessa interface:
~ 00-9A-8C-FF-03-AA -;
Escrever e feche o arquivo. (Você precisa reiniciar o Shorewall a menos que você lista negra dinâmica ativada.)
Criação automática Blacklist
Abra um novo arquivo, como "/etc/scripts/blacklistupdate.sh."
Criar um script a partir do arquivo como o seguinte a partir do Blog mudy:
!/ Bin / sheco "# ENDEREÇO / sub-protocolo de porta" gt; / Tmp / lista negra
wget -q -O - https://feeds.dshield.org/block.txt | awk --posix `/^[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.0t/ {print $ 1 "/ 24"-} ` gt; gt; / Tmp / lista negra
wget -q -O - https://spamhaus.org/drop/drop.lasso | awk --posix `/^[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3} // {print $ 1} ` gt; gt; / Tmp / lista negra
eco "#LAST LINE - ADD suas entradas antes deste - NÃO REMOVER" gt; gt; / Tmp / lista negra
mv / tmp / lista negra / etc / shorewall / lista negra
Shorewall atualizar > / dev / null
Note que este script cria uma nova lista negra em vez de adicionar ao já existente.
Escrever e fechar o novo script.
Adicione o script às suas tarefas agendadas em "/ Etc / crontab." A entrada cron deve ser semelhante "/etc/scripts/blacklistupdate.sh raiz 00 3 sol" se você deseja executar o script em três horas todos os domingos.
Uma vez que o script contém um comando Shorewall atualização, é necessário acrescentar um outro trabalho para reiniciar o Shorewall.