Irei descrever neste artigo como fazer a instalação de um servidor proxy Squid para controle de acesso à internet em um servidor CentOS. Neste artigo iremos fazer a instalação compilada, existem muitos artigos na internet que ensinam a fazer a instalação e configuração através de repositórios, o problema neste caso é que às vezes precisamos de recursos mais específicos que a versão pré-compilada não vem habilitada.
Geralmente as máquinas da rede local não possuem endereços válidos na internet para navegação por isso precisamos de um servidor proxy para que as máquinas da rede local tenham acesso à internet.
Para quem não conhece, um servidor proxy é um host intermediário entre a sua rede local e a internet. Ele tem muitas funções, entre elas, controle de conteúdo, controle de acesso por usuário ou de forma anônima, além disso ele pode filtrar conteúdos conforme você especificar.
Irei descrever uma instalação e configuração simples com controle de conteúdo e acesso para rede local.
Se você pesquisar vai encontrar muitos tipos de configurações e vai descobrir que é uma excelente ferramenta para controle de acesso a internet.
Tipos de configurações:
Web proxy :: faz o armazenamento de páginas na internet para navegação mais rápida. É a forma mais simples de configuração do proxy.
Proxy transparente :: funciona obrigando a rede local a utilizarem o proxy para acesso à internet de forma transparente para o usuário. Podendo impor políticas de utilização e colher dados estatísticos para controle do acesso à internet.
Proxy aberto :: é um servidor que não pede autenticação e pode liberar o acesso a internet anonimamente.
Criando um diretório de instalação em /srv/installsquid:
# mkdir /srv/installsquid
Copiando o arquivo baixado para este diretório:
# mv squid-3.3.5.tar.gz /srv/installsquid/
# cd /srv/installsquid/
Extraindo o arquivo:
# tar -xvzf squid-3.3.5.tar.gz
# cd squid-3.3.5
Instalando o Squid a partir do código fonte:
Dentro do diretório extraído, existe o arquivo configure, que também possui um "help", para instalações específicas que podemos verificar as opções de instalação:
--enable-shared :: habilita o compartilhamento de bibliotecas
--enable-icmp :: habilita o protocolo ICMP
--enable-delay-pools :: habilita delay pools para controle de banda de internet
--enable-sll :: habilita o suporte ao SSL, troca de informações com segurança
--enable-linux-netfilter :: habilita o uso do proxy transparente com o iptables
--enable-basic-auth :: habilita autenticação
--enable-basic-auth-helpers=NCSA,LDAP,SMB :: determina os tipos de autenticações
Se tudo estiver OK e não houver erros de dependência:
# make
# make install
Agora vamos fazer um backup do arquivo de configuração do Squid. Neste arquivo conseguimos visualizar muitos tipos de configurações e como utilizá-las:
[1] Comentário enviado por geraldozys em 24/06/2013 - 17:06h
Muito interessante seu artigo.
Com ele é possível que qualquer pessoa (tanto os que possuem conhecimento do squid, quanto quem está vendo pela primeira vez a ferramenta) possa criar um controle de internet funcional. Meus parabéns
[2] Comentário enviado por renizgo em 27/06/2013 - 13:29h
Que bom que conseguiu, obrigado pelo comentário.
[1] Comentário enviado por geraldozys em 24/06/2013 - 17:06h:
Muito interessante seu artigo.
Com ele é possível que qualquer pessoa (tanto os que possuem conhecimento do squid, quanto quem está vendo pela primeira vez a ferramenta) possa criar um controle de internet funcional. Meus parabéns
[3] Comentário enviado por cgsp1989 em 22/08/2013 - 16:26h
Boa tarde sou novo no Linux achei muito simples o seu Squid funcionou certinho agora queria saber como eu faço para liberar 2 maquinas da rede para acesso total nesse caso seria os diretores da Empresa.
[6] Comentário enviado por dnagamachi em 09/06/2014 - 13:03h
boa tarde, renizgo utilizei o seu tutorial para criar o squid no centos. está funcional obrigado. Porem tenho algumas duvidas. Estou utilizando uma adsl da vivo fibra, conectado diretamente na eth1. Na maquina onde se encontra instalado o centos 6.5 consigo navegar a 100mb, porem ao utilizar o proxy, ele está me limitando a 20MB. Pesquisei algumas informações e cheguei a ver que existe como limitar a banda pelo squid. A minha pergunta é : por default o squid limita a banda? e como consigo liberar a banda para 100% de utilização ..
[8] Comentário enviado por Vicasonic em 18/08/2016 - 22:09h
Boa noite, Galera.
Quero contribuir com minha experiência ao usar esse tutorial. Antes de mais nada, ótimo conteúdo!!
No meu estudo usei o CentOS 7 versão mínima, essa primeira etapa tive algumas dificuldades devido está usando o VirtualBox e não poder usar o CNTL + C e CNTL+V. kkkk... depois de muito persistir deu certo. Só acrescentar que antes do comando
( # ./configure --prefix=/usr --enable-shared --enable-icmp --enable-delay-pools --enable-sll --enable-linux-netfilter --enable-auth --enable-basic-auth-helpers=NCSA,LDAP,SMB )
foi preciso instalar o perl, usando da seguinte forma " yum install perl ", com isso esse primeiro passo funcionou muito bem.
[9] Comentário enviado por marcoschikoski em 07/10/2016 - 16:34h
Parabéns pelo tutorial, comecei agora no linux estou usando o CentOS 6.8 basico, apenas samba, firebird e agora tentando o squid, deu certinho pelo seu tutorial, agora só falta adaptar as regras que estava utilizando no windows.
Muito obrigado.
[11] Comentário enviado por hugobaur em 11/01/2017 - 15:40h
Boa tarde amigo,
Estou configurando em um cluster da minha empresa, pra ver se consigo usar o yum para fazer download dos pacotes pra atualização do CentOS 6.5 para o 7.0.