Script usado junto com o squid para dedurar usuários.
Publicado por Gleisson Marin Bissa 22/03/2007
[ Hits: 11.335 ]
Homepage: http://www.gleisson.com.br
Este script varre diariamente o log do squid, procurando acessos à internet e seus respectivos usuários, enviando para os mesmos e para a gerência um e-mail contendo o nome do usuário, as URL's que ele acessou e o IP/IP's das estações que ele usou.
Basta colocá-lo no cron para rodar de preferência à noite.
#!/bin/bash
# Script de monitoramento de log do squid.
# Faz a varredura do usuario no fim do dia, verifica seus acessos, e manda um e-mail para o proprio usuario e sua gerencia.
# Obs.: Colocar no cron.
# Gleisson Marin Bissa
# ----------------------------------------------------------------------------
dia_cur=$(LC_ALL=C date "+%d/%b")
usuarios=(joao maria jose)
for usuario in "${usuarios[@]}" ; do
ip=$(grep "$usuario \[$dia_cur" /var/log/squid/access.log | tr -s [' ','/'] '\t' | cut -f1 | sort |uniq)
url=$(grep "$usuario \[$dia_cur" /var/log/squid/access.log | tr -s [' ','/'] '\t' | cut -f10 | sort |uniq)
if [ -n "$ip" ] ; then
usuariold=$usuario
## Este case e necessario apenas para adequacao do nome do usuario de internet ao e-mail do caboco, se o nome do usuario for diferente do e-mail.
case $usuario in
joao) usuario=expedicao ;;
maria) usuario=mariams ;;
jose) usuario=josesp
esac
domain="seudominio.com.br"
to="$usuario"
subject="relatorio diario de acessos a internet"
data=`date "+%a %d %b %Y - %k:%M:%S"`
echo -ne "Usuario: $usuariold \nData: $data \n\nEstacoes usadas pelo usuario:\n$ip \n\nURL's:\n$url \n\nEste e um e-mail automatico...Favor nao responder!!! Duvidas entre em contato com o setor de TI" > /tmp/teller
mail -s "$subject" gerencia.ti@$domain encarregado.ti@domain $to@$domain < /tmp/teller
if [ -f /tmp/teller ] ; then
rm -rf /tmp/teller
fi
fi
done
Script simples de procura de arquivo.
PARPM - Procura de Arquivos em Pacotes Rpm
Backup de bases de dados individuais do PostgreSQL
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
Como fazer a conversão binária e aplicar as restrições no Linux
Como quebrar a senha de um servidor Linux Debian
Como bloquear pendrive em uma rede Linux
Um autoinstall.yaml para Ubuntu com foco em quem vai fazer máquina virtual
Instalar GRUB sem archinstall no Arch Linux em UEFI Problemático









