Linux slogan
Visite também: Segurança Linux · BR-Linux.org · Dicas-L · NoticiasLinux · SoftwareLivre.org · UnderLinux · BestLinux
» Screenshot
Linux: Slackware Perfeito
Por talon



» Login
Login:
Senha:

Se você ainda não possui uma conta, clique aqui.

Esqueci minha senha

» Wallpaper
Linux: tux_planet
Por assuero

Dica

Forçar redirecionamento de página no Squid
Linux user
Publicado por Edson G. de Lima em 29/03/2005

Login: Xxoin, 231153 pontos Homepage:
[ Hits: 17704 ]

Forçar redirecionamento de página no Squid

Você que administra um proxy com Squid, já pensou em redirecionar o usuário "infrator de regras" para uma página_web "específica"?!?

Nesta dica iremos descobrir que é possível... apenas customizando uma página de erro.

O que iremos fazer é redirecionar para nossa página customizada e logo em seguida, iremos forçar sua visita ao site (por exemplo) www.vivaolinux.com.br.

Vamos considerar que seu Squid seja com autenticação. Edite o squid.conf com as regras abaixo.

Antes da ACL que faz menção à autenticação:

acl TIMER_SQUID dstdomain .vivaolinux.com.br
http_access allow TIMER_SQUID
acl PASSWD proxy_auth REQUIRED

acl BARRAR url_regex "/diretório/arquivo_lista_barrar"
deny_info ERR_TIMER_SQUID BARRAR


# outras acl's...
# ...

http_access acl's que precisam ser liberadas...
http_access deny BARRAR
outras http_access...

Agora vem a edição da página customizada... Abra seu editor de texto favorito e digite o seguinte:

<html>
<meta http-equiv="refresh"
content="2;url=http://www.vivaolinux.com.br">
<head>
<title>REDIRECIONADOR</title>
</head>
<body bgcolor="32ff15">
<body>
<center>
<br>
<br>
<br>
<basefont size="5">
Em DOIS segundos você estará sendo levado <br>
<basefont size="7">
para um lugar muito melhor!!
</body>
</html>

Salve o arquivo com o nome de ERR_TIMER_SQUID (sem nenhuma extensão) no diretório que contém as páginas de erro (no caminho apontado no squid.conf).

Aplique o comando "squid -k reconfigure" e está feito!

Toda vez que seu usuário tentar ir para onde não deve, faça-o ler algo mais interessante!

Se você usa proxy transparente, as três primeiras linhas do exemplo de squid.conf desta dica NÃO são necessárias.

Os nomes acima podem ser modificados.

_______
Xxoin


Outras dicas deste autor

Leitura recomendada
   Dica Linux recomendada Resolvendo problemas de configuração de Internet Turbo Brasil Telecom
   Dica Linux recomendada Variáveis de internacionalização no Slackware
   Dica Linux recomendada Desconectando automaticamente ao reiniciar o Slackware
   Dica Linux recomendada Restaurando o lilo no Slackware
   Dica Linux recomendada Bloqueio do Orkut com iptables

Comentários
[1] Comentário enviado por HaCkErX em 19/05/2005 - 11:59h:

Muito bom esse artigo, mas eu queria saber se você poderia me passar como que coloco uma autenticação no meu sistema via web, sendo, todo cliente para acesar a rede ou internet terá que autenticar na página.

[2] Comentário enviado por leandro.teixeira em 14/06/2005 - 18:36h:

Boa tarde pessoal do VOL.
Como posso fazer para configurar o meu squid para filtro de conteúdo. Restrições não apenas a URL mas ao conteúdo texto do site. Tipo bloquear palavras (ex: sexo) no conteudo html da página.

[3] Comentário enviado por astrolabio em 27/01/2006 - 02:45h:

não consegui fazer rodar esse script aprece esse erro: squid: ERROR: Could not send signal 1 to process 9972: (3) No such process, como posso solucionar isso? pois criei os arquivos necessarios, outra coisa pq no seu exemplo o acl BARRAR url_regex "/diretório/arquivo_lista_barrar"
o meu so funciona acl BARRAR url_regex -i"/diretório/arquivo_lista_barrar", inserindo o -i, pode me solucionar isso, grato

[4] Comentário enviado por rodrigomora em 10/03/2006 - 16:33h:

não tem necessidade de faze tudo isso
eu fiz diferente e deu certo
tem que edita o seguinte arquivo ERR_ACCESS_DENIED (TODO maiusculo)essa tela seria a tela padrão de acesso negado do squid que se encontra no seguinte diretorio /usr/lib/squid/errors/English

assim naum precisa coloca acl no squid.conf
dai soh naum pode esquece de coloca um tempo para essa pagina rediriciona para uma outra.

[5] Comentário enviado por tgonet em 31/03/2006 - 17:03h:

Muito bom esse comentpario do rodrigomora. Mas eu uso o Conectiva 10, e neste caso o caminho é /usr/share/squid/errors/English. Para deixar todas as mensagens de erro em Português basta alterar/incluir a seguinte linha no /etc/squid/squid.conf:
error_directory /usr/share/squid/errors/Portuguese
Aí neste caso, é claro que o caminho das URLs de erro mudaria para /usr/share/squid/errors/Portuguese . Dããã... hehehe :D

[6] Comentário enviado por mochileiro em 04/07/2006 - 10:31h:

Eu precisava mesmo é de um redirecionamento único, para o 1º acesso, alguém tem idéia? Isso não resolve o meu problema...

[7] Comentário enviado por andriopj em 08/06/2009 - 19:28h:

teria como redirecionar um usuario especifico?
tipo... um usuario da rede, com ip XXX.xxx.XXX.xxx
qdo fosse acessar qualquer pagina, ser redirecionado para essa pagina ai?

[8] Comentário enviado por luivilella em 30/11/2009 - 11:19h:

quando é sitado editar ERR_ACCESS_DENIED, como eu faria para direcionar a pagina de erro para ex: /pgerror.html ????

[9] Comentário enviado por mgdias em 17/12/2009 - 00:13h:

Aproveitando a pergunta de mochileiro também tenho a mesma necessidade, de que no primeiro acesso no dia o cliente seja direcionado para uma pagina, dai em diante o acesso ficaria liberado, indo direto para a pagina inicial configurado em seu navegador.


Contribuir com comentário
CAPTCHA
[ Recarregar imagem ]

Digite o código acima:

  
Para executar esta ação você precisa estar logado no site, caso contrário, tudo o que for digitado será perdido.
Responsável pelo site: Fábio Berbert de Paula - Conteúdo distribuído sob licença GNU FDL
Site hospedado por:

Viva o Linux

A maior comunidade Linux da América Latina! Artigos, dicas, tutoriais, fórum, scripts e muito mais. Ideal para quem busca auto-ajuda em Linux.