Iptables – Bloqueando por String

As vezes precisamos bloquear um site que tem inumeros ip’s , e que esses ip’s podem mudar com o passar do tempo por que a empresa tem um range enorme. A opção mais sensata seria usar um proxy para fazer o serviço. Mas peguei um caso especifico que  o meu cliente tinha programas que conectavam em webservices e os mesmos programas não sabiam lidar com proxy, simplesmente davam todos os erros possiveis mas não estabeleciam conexão com o webservice, e não havia nenhum suporte para resolver isso do desenvolvedor dos softwares. A solução que encontrei foi o bloqueio no iptables por string. Dessa forma ele vai ler a string referente a url bloqueando o site no firewall. Segue abaixo um exemplo de como fazer isso, considerando que eth1 é a placa da sua rede interna:

Bloqueando um site:
iptables -I FORWARD -i eth1 -m string –algo bm –string “facebook.com” -j DROP

Liberando para um ip especifico:
iptables -A FORWARD -i eth1 -s 192.168.1.113 -m string –algo bm –string “facebook.com” -j ACCEPT

About The Author
admin Anakin Pendragon

5 thoughts on “Iptables – Bloqueando por String

  1. Você consegue bloquear o youtube e deixar o google.com liberado com essa regra ?
    já tentei porém não dá certo.

    • No caso eu montei uma regra que bloqueia apenas o facebook, poderia ter sido apenas o youtube, no caso da minha regra eu configurei um firewall recentemente usando essa regra, bloqueando o facebook, twitter e instagram e deixando todo o resto liberado.

      • Entendi, fiz isso também , o problema que o google a partir de um tempo pra cá unificou esses serviços, e quando em bloqueio o youtube o outros serviços como gmail ficam muito instáveis.

          • pois é na verdade tenho um firewall e um proxy transparente, e tudo funfava de boa, porém tenho essa demanda pra bloquear o youtube em modo transparente, porque autenticado já fazia, mas meu supervisor me pediu para colocá-lo transparente, por causa do dilema de usuário burlar ou o técnico esquecer de configurar no navegador, to pesquisando como fazer esse bloqueio sem afetar os restantes de serviço do google.

Os comentários estão fechados.