projetos | download | linux | privacidade | contato
 
  Produtos | Documentação | Suporte | Treinamento | Conectiva | Cases | Soluções | Parcerias | Imprensa | Oportunidades
Pesquise 
português 
english 
español

SUPORTE

->Suporte Estendido
->Centros de Serviços
->Técnicos Certificados
->Formulário de Suporte
->Abrangência do Suporte
->Acionando o Suporte
->Perguntas e Respostas
->Atualizações
->Livros, Guias e Manuais
->Hardware

    16.2. Como restringir acesso no squid?

    Para liberar o acesso ao proxy para todos, acrescenta-se apenas a linha

         http_access alow all
    
    , agora vamos verificar quais restrições poderemos fazer no acesso ao squid.



    1. Para restringir determinados usuários.

      Autenticando usuários

      É comum os administradores restringirem o acesso ao Proxy aos seus clientes. Para isto, pode-se pedir usuário e senha ao usuário para poder navegar utilizando o Proxy. Este serviço é feito pelo autenthicate_program (programa autenticador). O pacote do squid inclui um programa autenticador chamado ncsa_auth , o qual utiliza arquivos de senhas no formato htpasswd do Apache. Pode-se utilizar algum outro programa, se quiser. O executável do ncsa_auth está no diretório /usr/doc/squid-versão. É preferível copiá-lo para um diretório de arquivos binários (/usr/bin por exemplo). Uma linha típica de configuração seria:

          autenthicate_program /usr/bin/ncsa_auth
          /etc/squid/squid_passwd
      

      O arquivo /etc/squid/squid_passwd deve ser criado com o comando htpasswd:

          [root@localhost]# htpasswd -c /etc/squid/squid_passwd usuario1
      

      Para atualizar o arquivo de senhas utilize apenas:

          [root@localhost]# htpasswd /etc/squid_passwd usuario2
      

      Se você utilizar o ncsa_auth (ou algum outro autenticador), deve existir uma access list (lista de acesso) do tipo proxy_auth para permitir ou não o acesso.

      Na seção das acls (acess list) vamos definir a acl referente ao controle dos usuários ao proxy.

           
          acl password proxy_auth REQUIRED
      

      Password é o nome da access list, a access list é do tipo proxy_auth (autenticação de usuários). O campo REQUIRED informa ao squid para procurar o nome/senha do usuário com todos os nomes/senhas existentes no arquivo /etc/squid/squid_passwd, descrito anteriormente. Pode-se também colocar um a um os nomes de usuários a ser procurados no arquivo squid_passwd, em vez do campo REQUIRED.

      Agora para informar ao squid se o acesso a ela será ou não permitido, devemos incluir a seguinte linha na seção http_access:

      Para restringir o acesso apenas a usuários do seu sistema, você pode inserir a seguinte instrução:

          http_access allow password
      

      Isso vai exigir que os usuários forneçam uma senha para que possam utilizar o proxy.

      Nota: A ordem dessas regras é importante, você deve colocá-las na mesma ordem em que foram apresentadas nesta seção.

    2. Restringindo acesso em sites com determinada palavra.

      Se você quiser impedir que qualquer usuário acesse páginas que contenham a palavra futebol, acrescente as seguintes linhas ao seu squid.conf:

          acl proibir_futebol url_regex futebol
          http_access deny proibir_futebol
      
    3. Restringindo acesso a sites especificados em um determinado arquivo.

          acl proibir_sites dstdomain "/diretório/nome_arquivo"
          http_access deny proibir_sites
      

      Digamos que exista o arquivo /etc/bad-sites com alguns domínios proibidos, ex:

          batepapo.uol.com.br
          www.gostosa.com.br
      

      Nesse exemplo as linhas seriam:

          acl proibir_sites dstdomain "/etc/bad-sites"
          http_access deny proibir_sites
      
    4. Restringindo sites específicos.

      Você pode bloquear sites específicos, por exemplo para impedir que qualquer usuário acesse o site www.games.com

          acl proibir_site dstdomain www.games.com
          http_access deny proibir_site
      
    5. Restringindo máquinas.

      Enfim o bloqueio pode ser ainda por máquinas específicas. Digamos que você queira bloquear os IPs 192.168.0.1 e 192.168.0.2, utilize a seguinte regra.

          acl proibir_ip src 192.168.0.1 192.168.0.2
          http_access deny proibir_ip
      

      Nota: Após incluir qualquer uma das regras acima, não se esqueça de incluir regras especificando que tudo o que não estiver restringido, deve ser permitido.

      Se ainda não tiver especificado uma regra para permitir acesso a toda sua rede, você deverá informar a seguinte regra:

          acl minha_rede_local src 192.168.0.0/255.255.255.0 
          http_access allow all minha_rede_local
      

      Substituindo 192.168.0.0/255.255.255.0 pelo endereço e máscara de sua rede.

      Após concluir as restrições de acesso, precisamos ativar as mudanças.

          [root@localhost]# cds
          
          [root@localhost]# ./squid stop
             
          [root@localhost]# ./squid start