segunda-feira, 20 de maio de 2013


Resolvi escrever esta dica, pois uso proxy transparente e como não faço um redirect da porta 443, o Facebook e Twitter passam pelo endereço HTTPS. Comecei a fazer monitoramentos na minha rede com softwares para ver a real fonte. Analisado o problema, vamos para a solução. 

Foram feitos testes por celulares Android e iOS. Em Windows e GNU/Linux consegui bloquear 100%. Depois de muito estudo e testes, seguem as regras. Se for usar as regras do seu FORWARD padrão, deixe com a "FLAG -A", se for usar abaixo das regras existentes, coloque a "FLAG -I". 

iptables -A FORWARD -i eth1 -s 192.168.1.113 -m string --algo bm --string "facebook.com" -j ACCEPT  #IP LIBERADOiptables -A FORWARD -i eth1 -s 192.168.1.113 -m string --algo bm --string "twitter.com" -j ACCEPT  #IP LIBERADOiptables -A FORWARD -i eth1 -m string --algo bm --string "facebook.com" -j LOG --log-prefix " acesso facebook: " --log-level alert  #LOG DE ACESSOiptables -A FORWARD -i eth1 -m string --algo bm --string "twitter.com" -j LOG --log-prefix " acesso twitter: " --log-level alert  #LOG DE ACESSOiptables -A FORWARD -i eth1 -m string --algo bm --string "facebook.com" -j DROP  #BLOQUEIA GERALiptables -A FORWARD -i eth1 -m string --algo bm --string "twitter.com" -j DROP  #BLOQUEIA GERAL

Essa é a regra chave: sites de autenticação HTTPS. Como não estão passando pelo proxy, pegam a porta 443 na eth0 direto na placa de masquerade e passam fora. 

Após a regra, faço o bloqueio com: 

iptables -A FORWARD -i eth0 -d 192.168.1.113 -m string --algo bm --string "facebook.com" -j ACCEPT  #IP LIBERADOiptables -A FORWARD -i eth0 -d 192.168.1.113 -m string --algo bm --string "twitter.com" -j ACCEPT  #IP LIBERADOiptables -A FORWARD -i eth0 -d 192.168.1.0/24 -m string --algo bm --string "facebook.com" -j LOG --log-prefix " acesso facebook: " --log-level alert  #LOG DE ACESSOiptables -A FORWARD -i eth0 -d 192.168.1.0/24 -m string --algo bm --string "facebook.com" -j LOG --log-prefix " acesso twitter: " --log-level alert  #LOG DE ACESSOiptables -A FORWARD -i eth0 -d 192.168.1.0/24 -m string --algo bm --string "facebook.com" -j DROP  #BLOQUEIA GERALiptables -A FORWARD -i eth0 -d 192.168.1.0/24 -m string --algo bm --string "twitter.com" -j DROP  #BLOQUEIA GERAL

Valeu galera. 
Referências:
Creditos:krum(VOL)

4 comentários:

  1. Show de bola meu amigo.

    Isso funciona filé.

    Mas tem um problema, ao menos comigo, por exemplo:
    Bloqueio a palavra sexy

    Ser entrar no site dá sexy.com irá bloquear.
    Porém se pesquisar no google usando https por imagens, irá pesquisar e aparece várias imagens impróprias.

    Ou seja, esta solução bloqueou o domínio, mas não o que vem após o domínio, no caso a pesquisa. Vc conseguiu bloquear?
    Add no face para trocar ideia. /Aguilar1k
    Abraço

    ResponderExcluir
    Respostas
    1. Opa legal sua colocação, ele nao vai mesmo pegar isso ai. Vou pesquisar aqui, mas acho que só com uma blacklist e ACL's para bloquear isso ai.

      Se acharmos uma solução posto no blog e te aviso.

      Valeu pelo comentario o/

      Excluir
  2. AAAAAAAAA!!! Finalmente a solução para os meus problemas..
    Obrigado.

    Se encontrarem uma solução para bloquear as pesquisas no google imagens em https me avisem se puder.

    poks100@gmail.com

    Obrigado

    ResponderExcluir
  3. fiquei com duvida, ele faz um bloqueio geral ou parcial? liberando para os ips que preciso?

    ResponderExcluir

Subscribe to RSS Feed Follow me on Twitter!