Squid - Bloqueando definitivamente o MSN Messenger e Orkut

Percebi a dificuldade e uma série de dúvidas que usuários e administradores de redes possuem ao tentar bloquear o MSN e Orkut. Através deste tutorial vou descrever passo a passo os macetes que usei para impedir que minha rede interna utilizasse o MSN, web-messenger e Orkut, impedindo o envio de mensagens e troca de arquivos e também dicas para liberar acessos por horários ou máquinas.

[ Hits: 135.388 ]

Por: Ricardo Pardim Claus em 27/04/2007


Liberando por horário e finalizando



Liberando o acesso a máquinas privilegiadas

E no meu caso, em que fui solicitado para deixar somente 2 máquinas acessarem o msn ? Aí complicou a situação! Nem tanto, veja abaixo como deixar IPs com acesso liberado.

Importante: Lembre-se, para os IPs cadastrados no arquivo "ip_liberado.txt" terem acesso liberado, você já cria a ACL e libera o acesso antes de definir as ACLs de bloqueio, pois tanto o iptables como o Squid lêem as regras em seqüências, então você libera os desejados e depois cria as ACLs contendo as regras de bloqueio.

Veja como vai ficar a seqüência:

acl ip_liberado src "/etc/squid/regras/ip_liberado.txt"
http_access allow ip_liberado

Liberando por horário

Me deparei com o seguinte problema. O gerente da empresa onde trabalho me solicitou que liberasse o msn no horário de almoço para todos os usuários. Então criei a seguinte ACL:

acl horario_liberado time MTWHF 12:00-13:30
acl trava_msn_orkut url_regex -i "/etc/squid/regras/trava_msn_orkut.txt"

E depois:

http_access deny bloqueia_msn_orkut !horario_liberado

O símbolo "!" (exclamação) significa uma condição, diz ao squid que é para bloquear tudo que está na ACL bloqueia_msn_orkut, mas não bloquear no horário determinado na ACL horário_liberado. Então o msn e orkut irão funcionar das 12:00 às 13:30h, conforme descrito acima.

Mas se a porta 1863 estiver bloqueada no firewall, os usuários irão acessar os sites que estão na lista, mas o msn não irá se conectar. Para resolver este problema você terá que trabalhar com o crontab e também 2 cópias do arquivo de firewall. Onde que no horário de almoço, um dos scripts abre a porta 1863, e após o horário de almoço, o outro script fecha a porta 1863 impedindo que os usuários continuem acessando o msn.

Neste link você encontra um exemplo muito bom de agendar scripts com o crontab:

Finalizando

Nos exemplos que expliquei acima, a seqüência das ACLs ficaria nesta ordem:

acl ip_liberado src "/etc/squid/regras/ip_liberado.txt"
http_access allow ip_liberado

acl horario_liberado time MTWHF 12:00-13:30
acl trava_msn_orkut url_regex -i "/etc/squid/regras/trava_msn_orkut.txt"
http_access deny bloqueia_msn_orkut !horario_liberado

acl dominio_msn_orkut dstdomain "/etc/squid/regras/trava_msn_orkut.txt"
header_access Accept-Encoding deny dominio_msn_orkut !horario_liberado

Copie as linhas abaixo e crie um arquivo trava_msn_orkut.txt em /etc/squid/regras/:

## LISTA PARA BLOQUEIO DO MSN
200.177.97.157
207.46.111.54
207.46.111.54/gateway
207.46.113.220
207.46.108.51
207.68.178.239
65.212.92.104
65.50.10.6
65.212.92.111
64.58.88.113
ADSAdClient31.dll
login.live.com
spaces.live.com
passport.com
msn.com.br
msn.com
sc.msn.com
rad.msn.com
tp.msn.com
c.msn.com
msn.be
hp.msn.com
hpc.msn.com
hm.msn.com
#
stb.msn.com
stj.msn.com
mymsn.hotmail.com
ads1.msn.com
hotmail.msn.com
storage.msn.com
st.msn.com
tp.msn.com
stc.msn.com
#
msn_messenger
config.messenger.msn.com
media.meegos.com
messenger
gateway.dll
messenger.msn.com.br
http.msg.yahoo.com
nickname.msn.com.br
chat.msn.com
chat.msn.com.br
msgr.hotmail.com
gateway.messenger.hotmail.com
http1.msgr.hotmail.com
http2.msgr.hotmail.com
http3.msgr.hotmail.com
http4.msgr.hotmail.com
http5.msgr.hotmail.com
http6.msgr.hotmail.com
http7.msgr.hotmail.com
http8.msgr.hotmail.com
http9.msgr.hotmail.com
http10.msgr.hotmail.com
http11.msgr.hotmail.com
http12.msgr.hotmail.com
http13.msgr.hotmail.com
http14.msgr.hotmail.com
http15.msgr.hotmail.com
http16.msgr.hotmail.com
http17.msgr.hotmail.com
http18.msgr.hotmail.com
http19.msgr.hotmail.com
http20.msgr.hotmail.com
x-msn
#
## OUTROS LINKS PARA WEB-MESSENGER
#
meebo.com
65.19.140.246
ebuddy.com
193.238.160.62
msn2go.com
69.64.38.128
e-messenger.net
82.98.252.234
phonefox.com
85.184.4.3
193.238.162.21
msnger.com
216.32.66.234
torperkut.com
65.99.232.42
go.icq.com
64.12.164.120
wbmsn.net
212.227.34.3
bhi.com.br
messengerfx.com
#
## SERVIDORES PROXY
#
anonymouse.org
brianwatch.com
aliveproxy.com
#
## LISTA PARA BLOQUEIO DO ORKUT
#
orkut
orkut.com
www.orkut.com
72.14.209.86
www.orkat.com
72.14.209.85
www.okcut.com
64.69.68.141

Sites de referências

Ótimo manual on-line do squid:
Desenvolvi este tutorial com base em muitas pesquisas na internet e leitura de muitos livros sobre Linux.

Minha intenção aqui é tentar ajudar a todos aqueles que tem dificuldades em bloquear o msn e orkut. Já visitei vários fóruns, sites de dicas e tutoriais sobre o assunto, e vejo que sempre tem usuários fazendo as mesmas perguntas de como efetuar este bloqueio.

Peço a todos que dêem seu voto de avaliação, e se eu esqueci de algo, por favor postar as devidas correções e também os comentários.

Abraços a todos!

Ricardo

Página anterior    

Páginas do artigo
   1. Teoria e Prática
   2. Liberando por horário e finalizando
Outros artigos deste autor

Configurando o Rclone no CentOS 7

Leitura recomendada

Integrando autenticação do Squid ao Active Directory

Filtragem de páginas SSL (443) no Squid transparente

Gerando relatórios no Sarg com nome da máquina/usuário ao invés do IP

Limitando acesso ao Team Viewer com Squid e IPTables

Bloqueando o Messenger com iptables e Squid

  
Comentários
[1] Comentário enviado por hardwarez em 27/04/2007 - 10:30h

Lembrando que é recomendado liberar as portas default no iptables para os pcs que irão ter acesso, antes de fazer o bloqueio geral.

Por exemplo, liberando MSN para ip 192.168.1.1
# iptables -A FORWARD -s 192.168.1.1 -p tcp --dport 1863 -j ACCEPT
# iptables -A FORWARD -s 192.168.1.1 -p tcp --dport 5190 -j ACCEPT


Depois:
#Bloqueando os demais
# iptables -A FORWARD -s 192.168.1.0/24 -p tcp --dport 1863 -j REJECT
# iptables -A FORWARD -s 192.168.1.0/24 -p tcp --dport 5190 -j REJECT


:)

[2] Comentário enviado por hardwarez em 27/04/2007 - 10:39h

agora que vi... bhi.com.br

po, provedor de host de um amigo meu!

hehehe

[3] Comentário enviado por edupooter em 27/04/2007 - 10:43h

Para bloqueio de "burlador" de proxy, acrescente o endereço:

calculatepie.com

Note que é possível utilizar arquivos de texto sem a extensão ".txt".


[4] Comentário enviado por rbn_jesus em 27/04/2007 - 16:31h

Esta lista é bastante completa, muito bom o artigo!!!

[5] Comentário enviado por tuxSoares em 28/04/2007 - 02:30h

Bom, parabens!

[6] Comentário enviado por fredaum em 28/04/2007 - 08:49h

Muito bom... mas vale lembrar que com isso ele vai tratar apenas o tráfego na porta 80, e o orkut pode ser acessado pela porta 443, então deve ser acrescentado uma regra no firewall para barrar esse acesso.

iptables -A FORWARD -s 192.168.x.0/24 -d www.orkut.com -p tcp --dport 443 -j DROP

uso dessa maneira e funciona perfeitamente.

[7] Comentário enviado por coffani em 28/04/2007 - 12:04h

Parabens pelo artigo, ja uso este tipo de esquema aqui na empresa que trabalho mas ainda num sabia da nova dll que o msn 8 tava usando... vlw

[8] Comentário enviado por anselmoborges em 28/04/2007 - 19:21h

por isso q eu colocava a porra das listas de servidores e nunca barrava...

sacanagem uma porta pra cada coisa....

Muito bom a Matéria, parabens!!

__abraçonn

[9] Comentário enviado por gomenezes em 28/04/2007 - 19:28h

Um dos "problemas" em conseguir bloquear o msn é que assim você bloqueia também o acesso ao hotmail.


Aparentemente acontece também nos passos indicados nesse tutorial (pela lista de bloqueios)

Você pode me confirmar essa informação (se seguindo as dicas do artigo o acesso ao email do hotmail também é bloqueado)?



[]s

[10] Comentário enviado por dupotter em 28/04/2007 - 23:05h

fredaum, qto a porta 443, vc pode redireciona-la para o squid assim como a 80, o squid gerencia numa boa, faz o teste ai pra vc ver, aki eu uso assim e o https funfa normal. Testa ae e nos diga o resultado. Aki comigo vai tranquilo.

[11] Comentário enviado por removido em 29/04/2007 - 04:05h

Bom dia, meu nome Mauricio.
Gostaria de tirar uma duvida, trabalho em uma empresa de corretora de seguros (CPD) aqui nós temos um servidor xeon (win2003 server), dell (win2003 server) e um servidor de email linux. Estações, computadores, printers (KYOCERA), Thinclients +/- 35, e o restante computadores 180. Bom como tinha te falado é uma corretora de seguros, nós atendemos as concessionária de carro EX: fiat, renault, wv, etc, e em cada delas roda seguros tipo porto seguro, sulamerica, maritima, etc. Surgiu um problema nunca parei para instalar um vpn no linux não sei como faço, outra os gerentes estão me perguntando se há a possibilidade de interligar as lojas com um servidor no CPD, agora minha pergunta como posso fazer isso? Outra coisa todas as lojas tem speedy e o nosso link é de 2m, e qual sistema operacional seria melhor para fazer isso e equipmento, devido a demanda estou um pouco preocupado, se poder me ajudar, grato.
MAURICIO - CAMPINAS
19 97025828
OBS: CASO POSSA TE LIGAR PARA EXPLICAR MELHOR, SERIA O IDEAL.
ABRAÇO
EMAILS: mauricio@grupoouroverde.com.br
mauricio-rm@hotmail.com
almeida.cps@uol.com.br

[12] Comentário enviado por Sonics em 30/04/2007 - 01:54h

Primeiro quero dar os parabéns ricardodru, muito bom o seu artigo...

Mas quero dizer que se vocês estiverem lidando com users ditos geeks, eles de fato conseguirão passar facilmente por isso aí...há algumas "gambiarras" e outras soluçoes mais complexas, que botam tudo isso aí por agua abaixo...mas creio que isso não é o caso da maioria dos administradores, sendo que provavelmente não irao passar por isso...

t+


[13] Comentário enviado por shocker em 03/05/2007 - 19:11h

Muito bom artigo! Simples e direto. Parabéns.

[14] Comentário enviado por ricardoldj em 08/05/2007 - 10:01h

Olá pessoal do VOL!

Achei bom o artigo, me serviu bem, só tive 2 problemas:

as configurações bloquearam o pop e smtp do outlook express e tb o acesso as páginas https ...
... q alterações poderia ainda fazer?

desde já agradeço!

[15] Comentário enviado por agnaldoluiz em 08/05/2007 - 15:33h

Muito bom seu artigo, parabens.
Aqui to precisando de uma ajuda sua, ja cansei de pesquisar e fazer o que achava nas pesquisas e nda dava certo.

Seguinte:

Aqui no meu serviço tenho linux debian com squid e iptables funcionando blz. tenho dois arquivos chamados iprestrito(esta faixa de ip so consegue acessar os sites que estao cadastrados no squid) e ipliberados(consegue acessar tudo, so para a diretoria) queria liberar o windows live messenger apenas para a faixa de ip's que esta dentro de iprestrito e ipliberados. tem maquina que esta com um ip fora desta faixa(ou seja o cara nao consegue acessar a internet) mas consegue acessar o msn. poderia me ajudar.
Preciso bloquear todos os ip's que estao fora do meu arquivo iprestrito e ipliberados.
Desde ja agradeço

obs: uso proxy transparente

[16] Comentário enviado por oandarilho01 em 14/05/2007 - 10:07h

Parabéns pelo artigo.. muito bom mesmo..

Uma coisa:
Nõ caso, não seria encessário ter duas cópias do script do firewall. Bastaria, via cron, rodar dois scriptzinhos (ou um só mesmo, baseando-se em parâmetros) para inserir e remover no topo das regras uma regra que fizesse a devida liberação das portas no horário de almoço, correto? Isso descarta a suposta necessidade de se manipular todo o firewall apenas para isso..

[17] Comentário enviado por cassiorosas em 14/05/2007 - 10:56h

Parabens pelo artigo amigo!!!!

So lembrando que para a porta 443 do orkut pode ser feito via SQUID tambem no arquivo texto.

Adicione: www.orkut.com:443

Abraços,

[18] Comentário enviado por fmpfmp em 15/05/2007 - 15:02h

A porta 1863 bloqueada não impede o acesso ao MSN. Bloqueá-la ou não, não faz a menor diferença. Ele inicialmente tenta pela 1863, mas depois utiliza a 80. O acesso é bloqueado por causa da lista de bloqueio.

[19] Comentário enviado por brunosalmito em 16/05/2007 - 08:45h

gostei, vai pros meus fav

[20] Comentário enviado por removido em 24/05/2007 - 14:19h

Parabens muito interesante isso, vou aplicar.

[21] Comentário enviado por jgama em 01/06/2007 - 21:56h

Usando as dicas deste tutorial, aqui além de bloquear o orkut está bloqueando o msn para todo mundo, uso squid autenticado, só o orkut alguns usuarios podem acessar, mas o msn esta conseguindo acessa-lo.

Desabitei o Firewall onde tem algumas regras de bloqueio o msn e mesmo assim não liberara.


Também peguei o script que coloca no crontab e coloquei os ips que queria que ficasse sem o acesso do msn em um arquivo, mas como meu disse todos estão sendo bloqueados.

Alguém sabe como resolver?


[22] Comentário enviado por blaiseskt em 12/06/2007 - 01:15h

Sou iniciante no Linux, o que são ACLs e como eu configuro para a faixa de Ip's de 10.10.0.3 até 10.10.0.95?

[23] Comentário enviado por removido em 14/08/2007 - 12:45h

Olá Ricardo eu achei muito lega seu artigo e coloquei no meu squid.conf, liberei o acesso ao hotmaisl pra dois ip´s do jeito que vc recomendou, mas esses ip´s que liberei eles acessam as páginas do msn normalmente, o msn consegue pingar como se sua conexão estivesse normal, masd ele não conecta. O que pode ser isso?? se puder dar algumas dicas fico bem grato!!

Alexandre

[24] Comentário enviado por ricardodru em 14/08/2007 - 15:24h

?comentario=Alexandre

O que esta acontecendo com vc, pode ter varios motivos.
Se o proxy nao foi configurado como transparente, vc deve configura-lo no msn tambem, como foi feito o navegador.

Aqui eu nao precisei fazer isso, mas talvez funcione, Verifique se as portas do msn estao liberadas no firewall (mas somente para o ip desejado)

Para que o msn funcionar em horario de almoço, eu tive que rodar um script no cron que as 12:00 hs ele libera a porta 1863, e no mesmo horario tem uma ACL (conforme exemplo no meu tutorial) que as 12:00hs ele libera o acesso a todos os sites contidos na lista conforme tutorial.
Entao, para o msn funcionar, a porta 1863 tem que estar aberta, e as URL's nao podem estar trancadas no Squid.

Ate +

[25] Comentário enviado por removido em 14/08/2007 - 16:21h

ok, meu proxy é transparente, como faço pra liberar o msn para dois ip´s da rede, pois eu segui o artigo e mesmo assim o msn não acessa, acusa erro nas portas??

Se puder mandar o script no cron que vc fez pra eu dar uma olhada fico grato. Sou iniciante em linux.

flw!!

[26] Comentário enviado por ricardodru em 15/08/2007 - 16:11h

?comentario=?comentario=
Alexandre, se vc esta com problema com portas, revise seu firewall. O squid nao tranca a porta 1863.

Para bloquear a porta do msn no iptbles, utilizo esta linha:
iptables -A FORWARD -s 192.168.1.0/24 -p tcp --dport 1863 -j REJECT
iptables -A FORWARD -s 192.168.1.0/24 -p tcp --dport 5190 -j REJECT

onde 192.168.1.0 é a sua faixa de IP da rede interna.

O IP que vc quiser dar acesso ao msn, coloque esta linha:
iptables -A FORWARD -s 192.168.0.50 -p tcp --dport 1863 -j ACCEPT
iptables -A FORWARD -s 192.168.0.50 -p tcp --dport 5190 -j ACCEPT

Com estas linhas, o msn tem que funionar. Tambem é importante vc revisar a ordem das regras no firewall e das ACL no Squid.conf.
Ate +

[27] Comentário enviado por ricardodru em 16/08/2007 - 09:28h

alexandre

insira esta linha no firewall tambem

iptables -I POSTROUTING -j MASQUERADE -t nat -s 192.168.0.50 -p tcp --dport 1863 -o eth0

[28] Comentário enviado por andrade.ti em 09/11/2007 - 13:36h

Legal o artigo...

Eu particularmente utilizo o squid somente como proxy. O filtro da porta 80 fica por conta do Dansguardian. Criei 2 perfis (um com MSN e outro sem MSN). As blacklists já têm os domínios e sites específicados para bloquear o MSN. Ou seja, por default o Dansguardian já bloqueia o MSN. No outro perfil é só colocar o domínio e o site do MSN nas excessões. No firewall, liberar a porta 1863.

Achei mais prático, pois no meu caso o utilizo o squid autenticado e nem todos os usuários têm acesso ao MSN.

LCA.

[29] Comentário enviado por Pinguim Gigante em 19/11/2007 - 19:52h

Muito bom, me ajudou bastante.

[30] Comentário enviado por axl rose em 07/12/2007 - 16:40h

alguém pode me ajudar com o SQUID para Windows Server 2003???

sllash@hotmail.com

Rodrigo

[31] Comentário enviado por emilson em 20/06/2008 - 13:20h

q

[32] Comentário enviado por emilson em 20/06/2008 - 13:29h

Help... tenho um Servidor Proxi, que está instalado o Linux - FreeBSD / i386, uso para controle o Squid, no ACL há um bloqueio de dominius (sites), sendo que quando é tirado o proxi do Internet Explore, o MSN é conectado. Eu gostaria de bloquear este acesso, com e sem o proxi...

Me ajudem aí galera..

Emilson Seixas

[33] Comentário enviado por francisjs em 30/10/2008 - 11:54h

Bom dia Dia meu amigo, quero aqui deixar registrado que desde que eu faço uso da internet nunca achei um tutorial tao completo e perfeito como este, pois tudo que fiz seguindo este tutorial funcionou perfeitamente sem apresentar erros. Parabens por voce ser alguem que divide o que sabe, que Deus lhe recompense da melhor maneira!

Obrigado!

[34] Comentário enviado por needmagno em 20/03/2009 - 16:14h

Bloqueando o MSN)

(FIREWALL)

Primeiramente use regras no firewall para obrigar o tráfego da porta 80 passar para 3128, onde o Squid possa controlar o tráfego.

Para o bloqueio de portas você deve usar o firewall (ou outro firewall). Mas não adianta bloquear a porta 443, pois assim ninguém ira acessar sites de bancos ou sites que utilizem protocolo de segurança (https). A porta 80, se for bloqueada, ninguém mais navega na internet.

Primeiramente, feche a porta 1863 para impedir que o msn faça login. Utilize este comando no iptables:

# iptables -A FORWARD -s 192.168.1.0/24 -p tcp --dport 1863 -j REJECT

Onde 192.168.1.0 pode ser alterado pela faixa de ip da sua rede.

Em outra linha, utilize o mesmo comando para fechar também a porta 5190. Lembrando que estas linhas devem ser colocadas antes da linha de comando que direciona a conexão da porta 80 para a 3128 do Squid.

A porta 5190 já esta bloqueada no meu firewall, com a seguinte linha de comando:

# iptables -A FORWARD -s 192.168.1.0/24 -p tcp --dport 5190 -j REJECT

(SQUID)

Primeiro, crie um arquivo texto que irá conter todas as URLs que bloquearão o msn. No final do tutorial vou disponibilizar um exemplo do arquivo texto que uso para o bloqueio do msn.

No Squid, crie as ACLs conforme exemplo abaixo, logo depois de onde são definidas as ACLs que definem as portas de conexões seguras.

allow = LIBERA ACESSO
deny = BLOQUEIA/NEGA ACESSO

acl trava_msn_orkut url_regex -i "/etc/squid/regras/trava_msn_orkut.txt"

Depois é só negar o acesso as URLs que estiverem listadas no arquivo "trava_msn.txt".

http_access deny trava_msn_orkut

Você também pode bloquear os domínios que estiverem nesta lista, através desta ACL:

acl dominio_msn_orkut dstdomain "/etc/squid/regras/trava_msn_orkut.txt"
header_access Accept-Encoding deny dominio_msn_orkut


[b]Onde eu faco essas primeiras regras aki amigo[/b]

[35] Comentário enviado por rzacosta em 20/04/2009 - 18:46h

Ola amigo, gostei do artigo mas nao achei a lista de ACL "trava_msn_orkut.txt" onde fica? esta disponivel para download? fico no aguardo , grato.

[36] Comentário enviado por tirocha em 12/08/2009 - 15:52h

Simples e letal

acl msn urlpath_regex -i gateway.dll
http_access deny msn

[37] Comentário enviado por brizao em 09/09/2009 - 08:31h

tirocha,

realmente, essa funcionou parcialmente mas o meebo.com.br conecta sem problemas, literalmente, tem q ter a lista e mais essa .dll pra parar o msn.....
eita msn chato!!!!!


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts