Medir tempo de acesso a internet no log do Squid
Publicado por Ralph Liebessohn (última atualização em 14/01/2010)
[ Hits: 10.308 ]
Homepage: http://ralph.einet.com.br
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
#!/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
Verificar validade das assinaturas das zonas hospedadas no DNSSEC
DELETAR arquivos a X semanas passadas
Armazenando a senha de sua carteira Bitcoin de forma segura no Linux
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Meu Fork do Plugin de Integração do CVS para o KDevelop
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Encontre seus arquivos facilmente com o Drill
Mouse Logitech MX Ergo Advanced Wireless Trackball no Linux
Compartilhamento de Rede com samba em modo Público/Anônimo de forma simples, rápido e fácil
Cups: Mapear/listar todas as impressoras de outro Servidor CUPS de forma rápida e fácil
Não consigo instalar o WineHQ no meu notebook vaio FE15 (Debian) (7)
Montar Partição para usar no Timeshift (8)
Instalação da Imagem ISO do Tails (8)
Não consigo atualizar para LinuxMint 22 com o Mintupdate (7)