Pesquisa de site

Configurando o SquidGuard, habilitando regras de conteúdo e analisando logs do Squid - Parte 6


Um LFCE (Linux Foundation Certified Engineer) é um profissional que possui as habilidades necessárias para instalar, gerenciar e solucionar problemas de serviços de rede em sistemas Linux, e é responsável pelo projeto, implementação e manutenção contínua da arquitetura do sistema em sua totalidade.

Apresentando o Programa de Certificação Linux Foundation.

Nos posts anteriores discutimos como instalar o Squid + squidGuard e como configurar o squid para lidar ou restringir adequadamente as solicitações de acesso. Por favor, certifique-se de ler esses dois tutoriais e instalar o Squid e o squidGuard antes de prosseguir, pois eles definem o plano de fundo e o contexto para o que abordaremos nesta postagem: integração do squidguard em um ambiente funcional do squid para implementar regras de lista negra e controle de conteúdo sobre o Servidor proxy.

Requisitos

  1. Instale o Squid e o SquidGuard – Parte 1
  2. Configurando o Squid Proxy Server com acesso restrito – Parte 5

Para que posso/não posso usar o SquidGuard?

Embora o squidGuard certamente aumente e aprimore os recursos do Squid, é importante destacar o que ele pode e o que não pode fazer.

O squidGuard pode ser usado para:

  1. limitar o acesso permitido à web para alguns usuários apenas a uma lista de servidores web e/ou URLs aceitos/conhecidos, enquanto nega acesso a outros servidores web e/ou URLs na lista negra.
  2. bloquear o acesso a sites (por endereço IP ou nome de domínio) que correspondam a uma lista de expressões regulares ou palavras para alguns usuários.
  3. exigir o uso de nomes de domínio/proibir o uso de endereços IP em URLs.
  4. redirecionar URLs bloqueados para páginas de erro ou informações.
  5. use regras de acesso distintas com base na hora do dia, dia da semana, data, etc.
  6. implementar regras diferentes para grupos de usuários distintos.

No entanto, nem o squidGuard nem o Squid podem ser usados para:

  1. analise o texto dentro dos documentos e atue no resultado.
  2. detecte ou bloqueie linguagens de script incorporadas como JavaScript, Python ou VBscript dentro do código HTML.

Listas Negras – O Básico

As listas negras são uma parte essencial do squidGuard. Basicamente, são arquivos de texto simples que permitem implementar filtros de conteúdo baseados em palavras-chave específicas. Existem listas negras comerciais e disponíveis gratuitamente, e você pode encontrar os links para download no site do projeto de listas negras do Squidguard.

Neste tutorial vou mostrar como integrar as listas negras fornecidas pelo Shalla Secure Services à instalação do squidGuard. Essas listas negras são gratuitas para uso pessoal/não comercial e são atualizadas diariamente. Eles incluem, até hoje, mais de 1.700.000 entradas.

Para nossa conveniência, vamos criar um diretório para baixar o pacote da lista negra.

mkdir /opt/3rdparty
cd /opt/3rdparty 
wget http://www.shallalist.de/Downloads/shallalist.tar.gz

O link de download mais recente está sempre disponível conforme destacado abaixo.

Depois de descompactar o arquivo recém-baixado, navegaremos até a pasta da lista negra (BL).

tar xzf shallalist.tar.gz 
cd BL
ls

Você pode pensar nos diretórios mostrados na saída de ls como categorias de backlist e seus subdiretórios correspondentes (opcionais) como subcategorias, descendo até URLs e domínios específicos, que estão listados nos arquivos urls e domínios, respectivamente. Consulte a imagem abaixo para obter mais detalhes.

Instalando listas negras

A instalação de todo o pacote blacklist, ou de categorias individuais, é realizada copiando o diretório BL, ou um de seus subdiretórios, respectivamente, para o diretório /var/ diretório lib/squidguard/db.

É claro que você poderia ter baixado o tarball da lista negra para este diretório em primeiro lugar, mas a abordagem explicada anteriormente lhe dá mais controle sobre quais categorias devem ser bloqueadas (ou não) em um momento específico.

A seguir, mostrarei como instalar as listas negras anonvpn, hacking e chat e como configurar o squidGuard para usá-las.

Etapa 1: Copie recursivamente os diretórios anonvpn, hacking e chat de /opt/3rdparty/ BL para /var/lib/squidguard/db.

cp -a /opt/3rdparty/BL/anonvpn /var/lib/squidguard/db
cp -a /opt/3rdparty/BL/hacking /var/lib/squidguard/db
cp -a /opt/3rdparty/BL/chat /var/lib/squidguard/db

Etapa 2: Use os arquivos de domínios e urls para criar os arquivos de banco de dados do squidguard. Observe que o comando a seguir funcionará para criar arquivos .db para todas as listas negras instaladas – mesmo quando uma determinada categoria tiver 2 ou mais subcategorias.

squidGuard -C all

Etapa 3: Mude a propriedade do diretório /var/lib/squidguard/db/ e seu conteúdo para o usuário proxy para que o Squid possa ler os arquivos do banco de dados.

chown -R proxy:proxy /var/lib/squidguard/db/

Etapa 4: Configure o Squid para usar o squidGuard. Usaremos a diretiva url_rewrite_program do Squid em /etc/squid/squid.conf para dizer ao Squid para usar o squidGuard como um reescritor/redirecionador de URL.

Adicione a seguinte linha ao squid.conf, certificando-se de que /usr/bin/squidGuard seja o caminho absoluto correto no seu caso.

which squidGuard
echo "url_rewrite_program $(which squidGuard)" >> /etc/squid/squid.conf
tail -n 1 /etc/squid/squid.conf

Etapa 5: Adicione as diretivas necessárias ao arquivo de configuração do squidGuard (localizado em /etc/squidguard/squidGuard.conf).

Consulte a captura de tela acima, após o código a seguir, para maiores esclarecimentos.

src localnet {
        ip      192.168.0.0/24
}

dest anonvpn {
        domainlist      anonvpn/domains
        urllist         anonvpn/urls
}
dest hacking {
        domainlist      hacking/domains
        urllist         hacking/urls
}
dest chat {
        domainlist      chat/domains
        urllist         chat/urls
}

acl {
        localnet {
                        pass     !anonvpn !hacking !chat !in-addr all
                        redirect http://www.lds.org
                }
        default {
                        pass     local none
        }
}

Etapa 6: Reinicie o Squid e teste.

service squid restart 		[sysvinit / Upstart-based systems]
systemctl restart squid.service 	[systemctl-based systems]

Abra um navegador da web em um cliente na rede local e navegue até um site encontrado em qualquer um dos arquivos da lista negra (domínios ou URLs – usaremos http://spin.de/ chat no exemplo a seguir ) e você será redirecionado para outro URL, www.lds.org neste caso.

Você pode verificar se a solicitação foi feita ao servidor proxy, mas foi negada (301 resposta http – Movida permanentemente) e foi redirecionada para www.lds.org.

Removendo restrições

Se por algum motivo você precisar ativar uma categoria que foi bloqueada no passado, remova o diretório correspondente de /var/lib/squidguard/db e comente (ou exclua) o acl relacionado no arquivo squidguard.conf.

Por exemplo, se quiser ativar os domínios e URLs incluídos na lista negra da categoria anonvpn, você precisará executar as etapas a seguir.

rm -rf /var/lib/squidguard/db/anonvpn

E edite o arquivo squidguard.conf da seguinte maneira.

Observe que as partes destacadas em amarelo em ANTES foram excluídas em DEPOIS.

Lista de permissões de domínios e URLs específicos

Às vezes, você pode querer permitir determinados URLs ou domínios, mas não um diretório inteiro na lista negra. Nesse caso, você deve criar um diretório chamado myWhiteLists (ou qualquer nome que você escolher) e inserir os URLs e domínios desejados em /var/lib/squidguard/db/myWhiteLists em arquivos chamados urls e domínios, respectivamente.

Em seguida, inicialize as novas regras de conteúdo como antes,

squidGuard -C all

e modifique o squidguard.conf como segue.

Como antes, as partes destacadas em amarelo indicam as alterações que precisam ser adicionadas. Observe que a string myWhiteLists precisa ser a primeira na linha que começa com pass.

Finalmente, lembre-se de reiniciar o Squid para aplicar as alterações.

Conclusão

Depois de seguir as etapas descritas neste tutorial, você deverá ter um poderoso filtro de conteúdo e um redirecionador de URL trabalhando lado a lado com seu proxy Squid. Se você tiver algum problema durante o processo de instalação/configuração ou tiver alguma dúvida ou comentário, você pode consultar a documentação da web do squidGuard, mas sinta-se sempre à vontade para nos enviar uma mensagem usando o formulário abaixo e entraremos em contato com você assim que possível. possível.