Script usado junto com o squid para dedurar usuários.
Publicado por Gleisson Marin Bissa 22/03/2007
[ Hits: 11.067 ]
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
Previsão do tempo em cores no terminal
Juntando páginas separadas num único PDF
[Nokia-3g] Configuração do Nokia Internet Stick CS 10
Filtro para importação de extrato do Banco do Brasil para Kmymoney
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
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Como renomear arquivos de letras maiúsculas para minúsculas
Imprimindo no formato livreto no Linux
Vim - incrementando números em substituição
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
GLPI - Configuração de destinatário com conta Microsoft Exchange (0)
Vou voltar moderar conteúdos de Dicas e Artigos (3)
OpenVPN no MACBOOK conecta mas não pinga pastas de rede compartilhada ... (1)
Melhorando a precisão de valores flutuantes em python[AJUDA] (8)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta