Bloqueando Windows Live Messenger com Squid (Debian ou Ubuntu)

Este artigo tem como objetivo ajudar àqueles que estão como dificuldades de realizar o bloqueio do Windows Live Messenger através do Squid, fazendo também o controle de liberação de uso por IP.

[ Hits: 37.591 ]

Por: Renato Prado Pinto Filho em 16/11/2007


Instalando o SQUID e criando o arquivo de cadastro



Para quem usa o Debian ou Ubuntu, basta realizar os passos abaixo:

# aptitude install squid

Após a instalação logicamente você vai configurá-lo de acordo com as características de sua rede (deixo claro que o objetivo desse artigo não é mostrar como instalar, mas sim como bloquear o Windows Live Messenger).

Vá até a pasta /etc/squid e crie um arquivo com um nome sugestivo onde você vai fazer o cadastro dos IPs liberados para usar o WLM (Windows Live Messenger). No meu caso o nome do meu arquivo é "liberados_msn".

# touch liberados_msn

Obs.: Cadastre pelo menos um IP, pois quando você reiniciar o SQUID aparecerá uma mensagem de erro.

squid.conf

Agora vamos ao squid.conf para criarmos as ACLs necessárias para o bloqueio.

Adicione as ACLs abaixo:

acl msn_port port 1863
acl msn_port2 port 5223
acl serv_msn dst 200.46.110.0/24
acl serv_msn dst 64.4.13.0/24
acl app_msn req_mime_type -i ^application/x-msn-messenger$
acl msn_messenger url_regex -i gateway.dll
acl msn_dom dstdomain loginnet.passport.com
acl msn_dom dstdomain messenger.msn.com
acl msn_dom dstdomain messenger.msn.ca
acl msn_dom dstdomain messenger.msn.net
acl msn_dom dstdomain im.sapo.pt
acl msn_dom dstdomain webmessenger.msn.com
acl msn_dom dstdomain c.msn.com
acl msn_dom dstdomain config.messenger.msn.com
acl msn_dom dstdomain login.live.com
acl msn_dom dstdomain amsn-project.net

Obs.: Com essas ACLs consigo bloquear todos os messengers.

Agora vamos chamar a ACL que vai ler os ips que estão liberados:

acl liberados_msn src "/etc/squid/liberados_msn"

Agora vamos setar as ACLs.

http_access deny CONNECT msn_port !liberados_msn
http_access deny msn_port !liberados_msn
http_access deny msn_port2 !liberados_msn
http_access deny serv_msn !liberados_msn
http_access deny app_msn !liberados_msn
http_access deny msn_dom !liberados_msn
http_access deny msn_messenger !liberados_msn

Obs.: Estou negando o acesso às ACLs setadas com exceção da ACL que contém a lista de ips que eu desejo liberar.

    Próxima página

Páginas do artigo
   1. Instalando o SQUID e criando o arquivo de cadastro
   2. Reiniciando e atualizando as listas
Outros artigos deste autor

Linux, uma quebra de barreiras

Leitura recomendada

Squid autenticando no Windows utilizando grupos do AD

Squid + SSL

Manual traduzido do Squid - Parte 2

Squid com autenticação

Instalando o MySAR no CentOS 5.5

  
Comentários
[1] Comentário enviado por zilli em 16/11/2007 - 10:41h

Show de bola!!

Parabéns.

[2] Comentário enviado por removido em 16/11/2007 - 11:00h

Ótimo... muito bem explicado...

[3] Comentário enviado por nps em 16/11/2007 - 11:28h

Bom, pois esse MSN é uma verdaeira praga, nas empresas

[4] Comentário enviado por suportemega em 21/11/2007 - 17:16h

renatopradop;

Excelente artigo....
Pergunta este tutorial funciona para qual verão de squid? Tenho um proxy não trnasparente posso implementar estas acls que também irão funcionar?

Aguardo....

[5] Comentário enviado por emmanuel santini em 26/05/2008 - 20:53h

maravilha..!!!
excelente artigo, nota 10.

[6] Comentário enviado por thaleseduardo em 15/08/2008 - 17:24h

tentei usar essas regras, mas está bloqueando o site do hotmail também e isso eu não quero.
tem como bloquear o messenger sem bloquear o hotmail??

valeu. abraço a todos.

[7] Comentário enviado por redhat2 em 28/08/2008 - 11:14h

Bom me parece que não tem jeito embora não tenho certeza.

[8] Comentário enviado por l-x em 28/08/2008 - 16:32h

testado e aprovado, parabens!!!!!!

[9] Comentário enviado por djbra em 01/12/2008 - 22:01h

Show de bola Renato, pessoas iguais a você é que fazem o Linux grande, parabéns irmão!!!

[10] Comentário enviado por removido em 22/02/2009 - 20:31h

Exelent the best of SQUID!


Valeu

Flw

[11] Comentário enviado por brenolimap em 31/03/2009 - 17:10h

Gostaria de saber aonde adiciono essas linhas no arquivo squid.conf?
Segue arquivo de configuração:

http_port 3128
visible_hostname debian-security
error_directory /usr/share/squid/errors/Portuguese/

cache_mem 88 MB
maximum_object_size_in_memory 88 KB
maximum_object_size 512 MB
minimum_object_size 0 KB
cache_swap_low 90
cache_swap_high 95
cache_dir ufs /var/spool/squid 2048 16 256
cache_access_log /var/log/squid/access.log
refresh_pattern ^ftp: 15 20% 2280
refresh_pattern ^gopher: 15 0% 2280
refresh_pattern . 15 20% 2280

acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl SSL_ports port 443 563
acl Safe_ports port 21 80 443 563 70 210 280 488 59 777 901 7778 1025-65535
acl purge method PURGE
acl CONNECT method CONNECT

http_access allow manager localhost
http_access deny manager
http_access allow purge localhost
http_access deny purge
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports

acl adm_redes src 127.0.0.1
http_access allow adm_redes

acl site dstdomain siteproblematico.com
always_direct allow site

acl palavrasproibidas dstdom_regex "/etc/squid/palavrasproibidas"
http_access deny palavrasproibidas

acl redelocal src 192.168.0.0/24
http_access allow localhost
http_access allow redelocal
http_access deny all

[12] Comentário enviado por brenolimap em 09/07/2009 - 11:00h

Blz amigo, rodando de primeira, obrigado pela informação, maravilhas...

[13] Comentário enviado por daniel.sena em 11/09/2009 - 14:44h

OLÁ GENTE SOU INCIANTE NO LINUX ENTENDI ESSA PARTE MAIS COMO SERIA
COMO NO MEU CASO QUE É DHCP??? ADD NAO POR IP SERIA POR MEC OU ALGO ASSIM..??
ABRASS

[14] Comentário enviado por xandaobene em 02/06/2010 - 09:47h

Amigo Gostaria de implementar esse código porém não estou conseguindo esta dando o seguinte erro no meu squid

ACL name 'CONNECT' not defined!
FATAL: Bungled squid.conf line 67: http_access deny CONNECT msn_port !ip_livre_administracao
Squid Cache (Version 2.7.STABLE3): Terminated abnormally.

a minha versão do Squid é a 2.7 stable e meu S.O. é o Ubuntu 8.10


segue abaixo o meu squid.conf

--------------------------CONFIGURACOES INICIAIS------------------------------------------

#NOME DO SQUID HOSTNAME
visible_hostname proxyserver.jqs
#PORTAS DE ACESSO
http_port 3128 transparent
#LINGUA DAS PAGINAS DE ERROS
error_directory /usr/share/squid/errors/Portuguese
#------------------------------------------------------------------------------------------

#------------------------------- INSERINDO AS REGRAS DE BLOQUEIO DO MSN-----------------------
acl msn_port port 1863
acl msn_port2 port 5223
acl serv_msn dst 200.46.110.0/24
acl serv_msn dst 64.4.13.0/24
acl app_msn req_mime_type -i ^application/x-msn-messenger$
acl msn_messenger url_regex -i gateway.dll
acl msn_dom dstdomain loginnet.passport.com
acl msn_dom dstdomain messenger.msn.com
acl msn_dom dstdomain messenger.msn.ca
acl msn_dom dstdomain messenger.msn.net
acl msn_dom dstdomain im.sapo.pt
acl msn_dom dstdomain webmessenger.msn.com
acl msn_dom dstdomain c.msn.com
acl msn_dom dstdomain config.messenger.msn.com
acl msn_dom dstdomain login.live.com
acl msn_dom dstdomain amsn-project.net





#----------------------------------------------------------------------------------------------
#------------------------------------------------------------------------------------------
#INSERINDO AS REGRAS DE USO => ENDERECO DAS REGRAS DE USO DO SQUID ATUALIZADO EM 30-03-2010

acl bloq_sites url_regex -i "/etc/squid/regras/bloq_sites"
acl livre_sites url_regex -i "/etc/squid/regras/livre_sites"
acl download url_regex -i "/etc/squid/regras/download"
acl jogos_livres_alunos url_regex -i "/etc/squid/regras/jogos_livres"
acl bloqueio_sites_administrativos url_regex -i "/etc/squid/regras/bloqueio_sites_administrativo_aluno"


#INSERINDO AS REGRAS DE IPS#####
acl ip_livre_administracao src "/etc/squid/regras/ip_livre_administracao"
acl ips_laboratorio src "/etc/squid/regras/ips_laboratorio"
acl ip_livre_master src "/etc/squid/regras/ip_livre_master"
acl ip_problema src "/etc/squid/regras/ip_problema"


#MAQUINAS SEM ACESSO A INTERNET
acl bloq_ip src "/etc/squid/regras/ip_bloqueado"
#-----------------------------------------------------------------------------------------

#LIBERAR TODO ACESSO A INTERNET PARA TODAS AS MAQUINAS SEM RESTRICAO DE CONTEUDO


acl localhost src 127.0.0.1/255.255.255.255
acl rede src 192.168.1.0/255.255.255.0


#----------------------------------------------------------------------------------------


#--------------------ATIVAR AS REGRAS DE USO => ACLs ------------------------------------
#--------------------ATIVAR REGRA DE LIBERACAO DO MSN ----------------------------------
http_access deny CONNECT msn_port !ip_livre_administracao
http_access deny msn_port !ip_livre_administracao
http_access deny msn_port2 !ip_livre_administracao
http_access deny serv_msn !ip_livre_administracao
http_access deny app_msn !ip_livre_administracao
http_access deny msn_dom !ip_livre_administracao
http_access deny msn_messenger !ip_livre_administracao







#----------------------------------------------------------------------------------------
#Ativando as regras administrativas
http_access deny bloq_ip
#http_access deny ips_laboratorio
http_access allow ip_livre_master

#---------------------------ATIVANDO REGRA DE BLOQUEIO DE CONTEUDO EROTICO PARA ADMINISTRACAO---------------
http_access deny bloqueio_sites_administrativos
#----------------------------------------------------------------------------

http_access allow ip_livre_administracao
#----------------------------------------------------------------------------------------


#Ativando as regras dos Alunos

http_access allow livre_sites
#http_access allow jogos_livres_alunos
http_access deny bloq_sites
http_access deny download
http_access allow ip_problema
http_access allow ips_laboratorio

#LIBERAR ACESSO A INTERNET PARA AS MAQUINAS LIBERADAS E BLOQUEAR O ACESSO A NET PARA AS MAQUINAS BLOQUEADAS
http_access deny bloq_ip
#http_access deny ips_laboratorio
http_access allow localhost
http_access allow rede

#------------------------------------------------------------------------------------------

#---------------- IMPLEMENTACAO DO CONTROLE DE BANDA EM FASE DE TESTES --------------------
#delay_pools 2
# Significa que teremos dois controles de banda


# Primeiro controle
#delay_class 1 2
######### Controle Para a Rede Livre Max
# -1/-1 significa que nao teremos limites para a delay pool 1
#delay_parameters 1 -1/-1 -1/-1
#delay_access 1 allow ip_livre_administracao

########### Controle Para a Rede dos Alunos 512kb
# Segundo controle
#delay_class 2 2



# Limita a sua banda para +- 256 kbps




#delay_parameters 2 256288/256288 8384/8384

# Limita a sua banda para 0 de download
#delay_parameters 2 0/0 0/0
#delay_access 2 allow ip_livre_alunos

#---------------------------------------------------------------------------------------------


#---------------------------------FIM DO ARQUIVO DE CONFIGURACAO SQUID.CONF ------------------



Alguém poderia me dizer porque esta dando este erro no meu squid?

Aguardo solução dos meus colegas.

Att,

Alexandre Rodrigues


[15] Comentário enviado por rcrocha em 24/08/2010 - 16:46h

Ao amigo aí de cima (xandaobene)

cara acrescenta essa acl abaixo no seu squid que não vai mais dar esse erro, que vc mencionou...

acl CONNECT method CONNECT

espero ter ajudado...

[16] Comentário enviado por fernandoamador em 07/02/2011 - 11:57h

Ótimo artigo. me ajudou bastante em algumas dúvidas.

[17] Comentário enviado por flv_dantt em 17/05/2011 - 08:11h

Gostei do artigo, ficou otimo! era tudo que eu presisava, mais infelizmente não obtive resultados satisfatorios, não funcionou muito bem , creio que tenha bloqueado , pois testei em outras maquinas, mais a maquina que tentei liberar não funcionou... se alguem puder me ajudar, agradesço!
abraços


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts