Aprenda a barrar o acesso a determinados sites via proxy

13 Comentários

É fácil instalar e configurar um Proxy Server

Imagine que é administrador de uma rede de dados e pretende barrar o acesso a um conjunto de conteúdos online. Apesar de existirem várias soluções, não há nada mais fácil que implementar um serviço proxy que será responsável por filtrar todos os pedidos das máquinas cliente.

Hoje vamos ensinar como podem instalar e configurar um Proxy Server (nesta caso o Squid) no Linux.

squid_11

Uma máquina que se ligue através de um servidor proxy, “obedece” às regras definidas por este e todos os pedidos (ex. páginas web, ficheiros, etc) são também feito pelo proxy que posteriormente os devolve ao cliente. Desta forma é fácil filtrar os conteúdos que pretendemos através do proxy, uma vez que todos os pedidos passam por ele.

squid_00

O Squid oferece funcionalidades de proxy HTTP, suporte para caching de páginas web, mecanismos de controlo de acessos entre outras funcionalidades.

Como instalar e configurar o Squid via Webmin?

A instalação do Squid Proxy Server é muito simples. Para isso, dentro de Webmin, basta ir a Un-used Modules e seleccionar o serviço Squid Proxy Server para instalar. Depois de instalado o serviço aparecerá dentro de Servers.

squid_04

O próximo passo é criar as regras de controlo acesso, ou seja a listagem de sites que vão ser permitidos ou negados.

squid_05

Vamos considerar, por exemplo,um conjunto de sites sendo que a lista de acessos terá em conta a verificação do nome dos mesmos. Para isso seleccionamos “Web Server Hostname” e depois carregamos em Create New ACL

squid_06

Indicamos agora um nome para a nossa ACL e também os sites que pretendemos incluir neste grupo.

squid_07

Uma vez criada a lista de site, seleccionamos o separador Proxy Restrictions e em seguida escolhemos a opção Add Proxy Restriction

squid_08

Em seguida definimos se vamos aplicar uma política de Permitir (Alow) ou de Negar (Deny). Para este exemplo vamos escolher a opção Allow.

squid_09

E está feito. Validem apenas a posição da regra de modo a que não seja “tapada” por outas mais abrangentes. Como podemos ver a regra Pplware-Sites permite que esse sites sejam abertos mas a regra imediatamente a seguir nega tudo o resto.

squid_10

E está feito. Apliquem as alterações (O serviço é reiniciado).

No cliente (browser)

Para que os clientes comecem a usar o proxy, devem ir ao browser (para este exemplo vamos usar o Firefox), nas opções, acedemos a Network e Settings. Aí devem escolher a opção manual e inserir a seguinte informação:

  • Address: 192.168.1.94  (endereço do proxy squid)
  • Port: 3128

squid_03

Feito isto, é só testar se tudo está a funcionar correctamente. De referir que muitas outras configurações podem ser realizadas no squid. Se alguém pretender partilhar as configurações que têm nos vossos squids…força :).

Partilhar:
Tags:

Comentários

13

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *

  1. Avatar de irlm
    irlm

    alguem tem a acesso à maquina servidor e desbloquear o barramento proxy? ou tambem barra o IP do servidor.

  2. Avatar de Só um gajo
    Só um gajo

    o pplware anda sem noticias interessantes, ainda nada sobre o ipad air 2? uma review para quando? 2015?

  3. Avatar de Nuno José Almeida
    Nuno José Almeida

    Existem lista de sites por categorias a bloquear/dar acesso? (actualizáveis)

  4. Avatar de FM
    FM

    Uma alternativa interessante poderá ser também utilizar os DNS do OpenDNS como DNS primários dos vossos servidores internos.

    Para além de uma boa categorização de temas… é gratuito também.

    Depois basta interceptarem qualquer pedido de resolução de nomes para os vossos servers (para evitar espertinhos com o 8.8.8.8) e está feito.

    Claro que o utilizador poderá sempre alterar o seu próprio ficheiro de hosts… mas não há soluções infalíveis. 😉

    1. Avatar de João Silva
      João Silva

      Gostei da sugestão.
      Como se faz a intercepção dos pedidos de resolução de nomes ao meu servidor?

  5. Avatar de k
    k

    Como e que isto e implementado numa rede de forma automatica? Tipo, tenho a minha rede wifi, pessoal liga a ela, que definicoes devem ser distribuidas e como? Nao e muito pratico se tiver que por users comuns a fazerem configs de browser manuais de cada vez que trocam de rede/browser…

    1. Avatar de Alex
      Alex

      masquerade no iptables, ele direciona todo o tráfego da porta 80 para 3128, no squid seta o http_port para 3128 transparent, o roteado WiFi deve ser ligado atrás do linux na rede, isso fará com que as configurações sejam automáticas na sua rede e force usar as regras do proxy

  6. Avatar de Alex
    Alex

    Certo, até ai foi fácil, mas e pra bloquear sites tipo facebook que usa http e https sem bloquear outros sites https.

    1. Avatar de Alex
      Alex

      usando regras de firewall com iptables é possível bloquear facebook, instagran e outros sites http e https sem bloquear outros sites, existe também a possibilidade de liberar para alguns endereços de mac da placa de rede

  7. Avatar de Daniel Gomes
    Daniel Gomes

    Viva,

    Alguém sabe se é possível integração com Active Directory?
    Isto é, definir regras associadas a grupos/utilizadores.

    Obrigado

  8. Avatar de Hugo Oliveira
    Hugo Oliveira

    Daniel Gomes, winbind e squid penso ser possivel. Se o quid permitir autenticação a nível de utilizador, com winbind é possivel, através de uma trust, transferir toda a bd (replicar) no teu squid (ou outro) e a partir daí dar permissões a utilizadores da AD.

    Boa sorte Guerreiro! 🙂