Medir tempo de acesso a internet no log do Squid

Publicado por Ralph Liebessohn (última atualização em 14/01/2010)

[ Hits: 10.655 ]

Homepage: http://ralph.einet.com.br

Download cota_tempo.sh




Script feito para somar o tempo de navegação dos usuários. O tempo medido é apenas o tempo de transferência de cada arquivo e não o tempo que o usuário ficou lendo o site, logo, dependendo da velocidade da conexão, o acesso a um site pode ter tempo variado. O tempo no arquivo de log é medido em milissegundos (1000 milissegundos = 1 segundo).

O script lê um arquivo (/etc/squid/usuarios_limite_tempo) que tem o seu conteúdo formatado com um usuário por linha seguido de espaço, seguido da sua quota de tempo. Exemplo:

usuario1 3600000
usuario2 10
usuario3 600000

Alguns locais que vi as pessoas tendo essa dificuldade:

http://www.mail-archive.com/linux-br@bazar2.conectiva.com.br/msg36767.html
http://www.vivaolinux.com.br/topico/Squid-Iptables/Cota-de-tempo-de-acesso

Existem outras soluções para quota de tamanho de download, limite de número de conexões, banda etc, que são configurados diretamente no squid.conf. Esse script auxilia a limitar a navegação de um usuário a 01 hora por dia por exemplo.

Palavras-chave: tempo de conexão; limitar tempo de navegação; limite de tempo squid;quota tempo squid.

Ralph Liebessohn

  



Esconder código-fonte

#!/bin/bash
while read linha
        do
        usuario=`echo $linha | awk '{print $1}'`
        maxtempo=`echo $linha | awk '{print $2}'`
        tempo=`grep -i " $usuario " /var/log/squid/access.log |awk '{print $2}'`
        aux1=1
        soma=0
        for i in $tempo
        do
                varb=`echo $tempo| awk -v N=$aux1 '{print $N}'`
                soma=`expr $soma + $varb`
                let "aux1 = aux1 + 1"
        done
        if [ $soma -gt $maxtempo ]
        then
                echo Usuario: $usuario excedeu limite de $maxtempo. Tempo utilizado: $soma
        fi
done < /etc/squid/usuarios_limite_tempo

Scripts recomendados

diskSpace - acha os dez maiores gastadores de espaço em disco

Configuração do Modem Sony Ericsson MD300 da Claro 3G no Linux

Restaurar base de dados PostgreSQL

Xqemu! Uma interface gráfica simples para o qemu.

Limpe bibliotecas não utilizadas - new release


  

Comentários
[1] Comentário enviado por removido em 09/04/2010 - 16:10h

Este script limita em uma hora ou o tempo é setado no arquivo em milissegundos???
E o nome de usuário pode ser substituído por seu IP?
Vlw =D


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts