Pular para o conteúdo

Filtrando sites navegados por máquinas no log do Squid

Dica publicada em Shell Script / Avançado
Rodrigo roddy
Hits: 22.169 Categoria: Shell Script Subcategoria: Avançado
  • Indicar
  • Impressora
  • Denunciar
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Filtrando sites navegados por máquinas no log do Squid

Visualiza data e hora de sites navegados de um determinado terminal através do Squid.

$ cat /usr/local/squid/var/logs/access.log | awk '{if ($3 == "10.1.1.13") print strftime("%F %H:%M:%S",$1) " " $8 " " $7 }'

Você também pode usar "tail -f" no lugar do comando "cat".

O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Fita DAT Linux: formatar e gravar

Arrumar o relógio

Arrays no BASH

Somar variáveis nos shells BASH e sh

Quota no Debian Etch

Criando códigos de barra sequenciais usando Shell Script e PHP

Script para adicionar hosts no Nagios

Bloquear servidor por falta de pagamento

Repetir determinado caractere X vezes

Substituindo o sleep por um belo cronômetro regressivo

#1 Comentário enviado por roddy em 19/03/2007 - 16:38h
um script legal para visualização.

#!/bin/bash
# Criador: Rodrigo B. Alves
# Dialog script

dialog --title 'Minha Rede Ltda.' \
--menu "Escolha a opção :" 13 70 6 \
"1" "Log Sites Navegados" \
"0" "SAIR" 2> $HOME/escolha

retval=$?
option=`cat $HOME/escolha`

if test "$option" = 0
then
exit
fi


if test "$option" = 1
then

# Arquivo de log
cat /usr/local/squid/var/logs/access.log | awk '{print strftime("%F %H:%M:%S",$1) " " $7 }' > out &

dialog --title 'Minha Rede Ltda.' \
--tailbox out \
0 0
sleep 1
# Retorna para o menu opção
./testeif2
fi
#2 Comentário enviado por roddy em 21/03/2007 - 13:02h
Obs: testeif2 é o nome do script.
#3 Comentário enviado por aazevedo1984 em 26/06/2007 - 10:27h
Legal, aq funcionou muito bem, mas por curiosidade, como o squid armazena a data e hora no arquivo de log, como por exemplo:

1182863995.405 980 192.168.1.49 TCP_SWAPFAIL_MISS/200 19854 GET http://br.i1.yimg.com/br.yimg.com/i/img/0306_monster425x350_20aviao.jpg thiago DIRECT/207.138.126.137 httpd/yahoo-send-as-is

Creio q a data/horas esteja no primeiro campo, portem como posso fazer esta conversao manualmente?
#4 Comentário enviado por roddy em 26/06/2007 - 15:39h
você gostaria de alterar a data e hora?
#6 Comentário enviado por joaovitorlinux em 23/10/2008 - 10:10h
Valeu cara, muito bom o codigo ae.
Gerei em arquivo TXT mas com todos os IP´s da rede e em PHP fiz as condições para exibir o IP da cada um.
Valeu ae, meu quebrou um galhão, T+

Contribuir com comentário

Entre na sua conta para comentar.