Criando um Squid totalmente empresarial

Publicado por Caio Norder em 27/07/2008

[ Hits: 16.040 ]

Blog: http://www.caionorder.com/

 


Criando um Squid totalmente empresarial



Olá, primeiramente vamos instalar o Squid. Trabalho com servidores Ubuntu e Debian, então este artigo foi feito em cima da plataforma Debian, mas para outras distros só muda o modo de instalação. Bom, vamos continuando.

# aptitude install squid

Criando pastas e arquivos

Após a instalação vamos criar as pastas e os arquivos e já alimentarmos o que o Squid vai precisar:

# mkdir /etc/squid/mac
# touch /etc/squid/cobranca.txt; echo > /etc/squid/cobranca.txt .siteliberado.com
# touch /etc/squid/comercial.txt; echo > /etc/squid/comercial.txt .siteliberado.com
# touch /etc/squid/cpd.txt; echo > /etc/squid/cpd.txt .siteliberado.com
# touch /etc/squid/faturamento.txt; echo > /etc/squid/faturamento.txt .siteliberado.com
# touch /etc/squid/financeiro.txt; echo > /etc/squid/financeiro.txt .siteliberado.com
# touch /etc/squid/ip.txt; echo > /etc/squid/ip.txt X.X.X.X # ip bloqueado
# touch /etc/squid/juridico.txt; echo > /etc/squid/jurídico.txt .siteliberado.com
# touch /etc/squid/listabranca.txt; echo > /etc/squid/listabranca.txt .siteliberado.com
# touch /etc/squid/listanegra.txt; echo > /etc/squid/listanegra.txt .sitebloqueado.com
# touch /etc/squid/macblock.txt; echo > /etc/squid/macblock.txt 00:00:00:00:00:00
# touch /etc/squid/maccobranca.txt; echo > /etc/squid/maccobranca.txt 00:00:00:00:00:00
# touch /etc/squid/maccomercial.txt; echo > /etc/squid/maccomercial.txt 00:00:00:00:00:00
# touch /etc/squid/maccpd.txt; echo > /etc/squid/maccpd.txt 00:00:00:00:00:00
# touch /etc/squid/macfaturamento.txt; echo > /etc/squid/macfaturamento.txt 00:00:00:00:00:00
# touch /etc/squid/macfinanceiro.txt; echo > /etc/squid/macfinanceiro.txt 00:00:00:00:00:00
# touch /etc/squid/macjuridico.txt; echo > /etc/squid/macjuridico.txt 00:00:00:00:00:00
# touch /etc/squid/macrecepcao.txt; echo > /etc/squid/macrecepcao.txt 00:00:00:00:00:00
# touch /etc/squid/macvip.txt; echo > /etc/squid/macvip.txt 00:00:00:00:00:00
# touch /etc/squid/msnblock.txt; echo > /etc/squid/msnblock.txt X.X.X.X # (ip bloqueado para msn)
# touch /etc/squid/recepcao.txt; echo > /etc/squid/recepção.txt .siteliberado.com
# touch /etc/squid/semcache.txt; echo > /etc/squid/semcache.txt .sitesemcache.com


Criando a configuração do Squid

Agora vamos mover o squid.conf para squid.conf2 e criar um novo squid.conf:

# cd /etc/squid/
# mv squid.conf squid.conf2
# nano squid.conf


Coloque a seguinte configuração:

#############################################
#   -= Configuração do Squid 2.4r3 ou superior por Caio Norder =-   #
############################################

### escuta somente na interface interna para evitar public proxy


http_port 3128 transparent

hierarchy_stoplist cgi-bin ?
acl QUERY urlpath_regex cgi-bin ?
acl all src 0/0
no_cache deny QUERY
visible_hostname internet
cache_mem 25 MB
cache_swap_low 90
cache_swap_high 95
#cache_replacement_policy lru
#memory_replacement_policy lru


log_ip_on_direct on

cache_replacement_policy lru
memory_replacement_policy lru
cache_access_log /etc/squid/access.log

error_directory /usr/share/squid/errors/Portuguese/
# Listas de acesso padrão

acl semcache url_regex "/etc/squid/mac/semcache.txt"
acl macblock arp "/etc/squid/mac/macblock.txt"
acl listanegra dstdomain "/etc/squid/mac/listanegra.txt"
acl listabranca dstdomain "/etc/squid/mac/listabranca.txt"
acl ipb dst "/etc/squid/mac/ip.txt"
acl localnet src 192.168.0.0/24

# Grupos
acl macvip arp "/etc/squid/mac/macvip.txt"
acl maccpd arp "/etc/squid/mac/maccpd.txt"
acl macfaturamento arp "/etc/squid/mac/macfaturamento.txt"
acl maccomercial arp "/etc/squid/mac/maccomercial.txt"
acl macrecepcao arp "/etc/squid/mac/macrecepcao.txt"
acl maccobranca arp "/etc/squid/mac/maccobranca.txt"
acl macfinanceiro arp "/etc/squid/mac/macfinanceiro.txt"
acl macjuridico arp "/etc/squid/mac/macjuridico.txt"

# Grupos de Sites
acl cpd dstdomain "/etc/squid/mac/cpd.txt"
acl faturamento dstdomain "/etc/squid/mac/faturamento.txt"
acl comercial dstdomain "/etc/squid/mac/comercial.txt"
acl recepcao dstdomain "/etc/squid/mac/recepcao.txt"
acl cobranca dstdomain "/etc/squid/mac/cobranca.txt"
acl financeiro dstdomain "/etc/squid/mac/financeiro.txt"
acl juridico dstdomain "/etc/squid/mac/juridico.txt"

# MSN
acl msn_block arp "/etc/squid/mac/msn_block.txt"
acl msn dstdomain loginnet.passport.com
acl msnmessenger url_regex -i gateway.dll
acl MSNmime req_mime_type -i ^application/x-msn-messenger$

# Lista de acesso de usuários
no_cache deny semcache
http_access allow ipb localnet
http_access deny msn_block msn
http_access deny msn_block msnmessenger
http_access deny msn_block MSNmime
http_access deny localnet listanegra
http_access allow listabranca localnet
http_access allow maccpd cpd
http_access allow macfaturamento faturamento
http_access allow maccomercial comercial
http_access allow macrecepcao recepcao
http_access allow maccobranca cobranca
http_access allow macfinanceiro financeiro
http_access allow macjuridico juridico
http_access allow all macvip
http_access deny all
# Bloqueia tudo que não estiver liberado

Feche e salve.

Criando os arquivos de log

Agora crie o arquivo access.log e o squid.log (para não dar erro na inicialização do squid):

# touch /etc/squid/access.log
# touch /etc/squid/squid.log


Agora dê permissão total a pasta Squid e arquivos:

# chmod 777 -R /etc/squid

Agora basta reiniciar o Squid:

# /etc/init.d/squid restart

Finalizando

Agora entendendo o funcionamento, dentro de cada arquivo você vai dar acesso a internet. No caso dos "siteliberado" você deve acessar o arquivo e ir liberando por setor, o "macvip" tem acesso a 0/0, ou seja, internet toda, é bem simples de configurar e adequar para sua empresa.

Bom fico por aqui, qualquer coisa envie um email para caio@caionorder.com.

Até mais.

Outras dicas deste autor

Instalando e configurando o Samba no Debian em apenas 3 minutos

Leitura recomendada

Montando um servidor de remote desktop com NX Server

Amarrando IP X MAC de maneira simples e funcional

Instalando o Backintime no Debian Lenny

Supertux 0.3.0 no Slackware 11

Uma nova rede de IRC brasileira direcionada ao Software Livre

  

Comentários
[1] Comentário enviado por bytegomes em 24/06/2013 - 14:47h

caio se usar debian wheezy vai funcionar normal ne?



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts