O que é Squid? O
Squid é um servidor proxy que suporta os protocolos HTTP, HTTPS, FTP e outros. Ele reduz a utilização da conexão e melhora os tempos de resposta fazendo cache de requisições frequentes de páginas web numa rede de computadores. Pode ser usado para controle de banda, restrição de sites, usuários, entre outros. Podemos executar o Squid nas principais plataformas do mercado, como
GNU/Linux, Unixes e Windows.
Instalando o Squid
Para fazer a instalação, basta digitar, como root, no terminal, o comando:
# apt-get install squid
Editando o
squid.conf.
O arquivo original do Squid é gigantesco devido aos seus inúmeros comentários. Nesse tutorial vamos criar um arquivo de configuração a partir do zero. Mas primeiro vamos conservar o arquivo original, renomeando-o com o comando:
# mv /etc/squid/squid.conf /etc/squid/squid.original
Agora sim vamos começar a editar nosso arquivo com o comando:
# vim /etc/squid.conf
Idioma e cache
Configurando o idioma:
É possível alterar as mensagens que o Squid mostra quando um cliente tenta acessar um site ou fazer um download bloqueado por exemplo, bem como mensagens de erro de DNS, entre outras.
Para isso vamos criar a linha:
error_directory /usr/share/squid/errors/Portuguese
Obs.: Você pode criar suas próprias páginas de mensagens de erro ou então editar as já existentes. Basta ir no seu diretório indicado acima e utilizar um editor de textos simples.
Configurando cache. Crie as linhas:
cache_mem 700 MB
Esta linha define quanto da memória RAM (no caso 8MB) será usada pelo cache: em um servidor dedicado é recomendado reservar 1/3 da memória RAM para o cache.
maximum_object_size_in_memory 32 KB
Esta linha define o tamanho máximo dos objetos na RAM. Defina um tamanho pequeno para que sejam salvos apenas páginas html na RAM e não downloads por exemplo, que devem ser salvos no disco.
maximum_object_size 1024 MB
Define o tamanho máximo dos objetos no cache do disco. Aqui serão armazenados os downloads por exemplo. Se tem costume de baixar arquivos grandes, coloque um tamanho grande.
minimum_object_size 0 KB
Tamanho mínimo dos objetos no cache.
cache_swap_low 90
cache_swap_high 95
Essas linhas indicam que a partir do momento em que o cache atingir 95%, serão descartados arquivos mais antigos até que a porcentagem volte para um número abaixo de 90%.
cache_dir ufs /etc/squid/cache 30000 16 256
Esta linha é a que realmente define o tamanho total do cache em disco. O endereço refere a que diretório se deseja utilizar como cache, seguido do tamanho máximo do cache no disco (em MB) e os dois últimos números da linha indicam a quantidade de pastas e subpastas que o Squid utilizará para se organizar ao gravar o cache;
cache_access_log /etc/squid/access.log
Esta linha indica o caminho para onde devem ser exportados os logs que depois poderão ser analisados, manualmente, com com algum gerador de relatórios como o SARG.
Basta então editar estas linhas de acordo com a capacidade do seu servidor e a sua necessidade.
Limpar cache e recriar estrutura.
Sempre que alterar configurações referentes ao cache, é recomendável limpá-lo e recriá-lo. Basta fazer os seguintes comandos.
Apagar os arquivos:
# rm -rf /var/spool/squid/*
Recriar estrutura, pastas e subpastas:
# squid -z