shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

script para monitoramento de acessos a internet.


From: gleissonmb
Subject: script para monitoramento de acessos a internet.
Date: Tue, 08 Aug 2006 18:52:36 -0000
User-agent: eGroups-EW/0.82

ae gente,

fiz script que varre o /var/log/squid/access.log verificando se houve
algum acesso com usuario e senha, trata e manda mail para os
administradores.

aberto a criticas e sugestoes.

# -------------------------------------------------------------------

#!/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 crontab.
# Gleisson Marin Bissa - 21-07-2006
# 
# -----------------------------------------------------------------

dia_cur=$(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

                ## Case necessario apenas para adequar o nome do
usuario de internet com o e-mail do caboco.
                case $usuario in
                        joao)           usuario=joaozinho      ;;
                        maria)          usuario=maria.paula    ;;
                        jose)           usuario=jmarcos
                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 http://chamado.redeplan.com.br"; > /tmp/teller

                mail -s "$subject" admin@$domain gerencia@$domain
$to@$domain < /tmp/teller
                if [ -f /tmp/teller ] ; then
                        rm -rf /tmp/teller
                fi
        fi
done








reply via email to

[Prev in Thread] Current Thread [Next in Thread]