Gera estatísticas de tráfego de pacotes nas interfaces de um servidor linux via SNMPv3.
Publicado por Alessandro Dias 09/04/2007
[ Hits: 4.875 ]
Download gera_estatistica_trafego_serv-01.sh
Gera estatísticas de tráfego de pacotes nas interfaces de um servidor linux, registrando os pontos em um arquivo.
Pode-se fazer um script PHP para plotar em um gráfico.
Antes de aplicar esse script verifique as senhas utilizadas no SNMPv3.
#!/bin/bash # ############################################################################### # Script GERA_ESTATISTICAS DIARIAS v1.0 # # # # Autor: Alessandro Dias # ############################################################################### # IP="192.168.0.1" BASEDIR=/var/www/html/estatisticas/trafego clear echo "*********************************************************************************************" echo "* Programa GERA_ESTATISTICAS V1.0 *" echo "*********************************************************************************************" echo "Autor: Alessandro Dias" echo "---------------------------------------------------------------------------------------------" if [ "$IP" != "" -a "$IP" != " " ]; then IFINOCTETS=`snmpget -v 3 -u alessandro -l authPriv -a MD5 -A senhaauth -x DES -X senhapriv $IP "ifInOctets.2" |cut -d "=" -f 2 |cut -d ":" -f 2 |cut -d " " -f 2` IFOUTOCTETS=`snmpget -v 3 -u alessandro -l authPriv -a MD5 -A senhaauth -x DES -X senhapriv $IP "ifOutOctets.2" |cut -d "=" -f 2 |cut -d ":" -f 2 |cut -d " " -f 2` echo -e "ip=\"$IP\"\n" echo "ifInOctets=$IFINOCTETS bytes" echo "ifOutOctets=$IFOUTOCTETS bytes" DIA=`date +%d` DIA_SEM=`date +%a` MES=`date +%b` ANO=`date +%Y` HORA=`date +%k` SEC=`date +%s` if [ ! -d $BASEDIR/$IP/$DIA ]; then mkdir -p $BASEDIR/$IP/$DIA fi if [ ! -f $BASEDIR/$IP/$DIA/pts_in ]; then touch $BASEDIR/$IP/$DIA/pts_in chown apache $BASEDIR/$IP/$DIA/pts_in else if [ "$HORA" == "0" -o "$HORA" == "00" -o "$HORA" == "24" ]; then rm -f $BASEDIR/$IP/$DIA/pts_in touch $BASEDIR/$IP/$DIA/pts_in chown apache $BASEDIR/$IP/$DIA/pts_in fi fi if [ ! -f $BASEDIR/$IP/$DIA/pts_out ]; then touch $BASEDIR/$IP/$DIA/pts_out chown apache $BASEDIR/$IP/$DIA/pts_out else if [ "$HORA" == "0" -o "$HORA" == "00" -o "$HORA" == "24" ]; then rm -f $BASEDIR/$IP/$DIA/pts_out touch $BASEDIR/$IP/$DIA/pts_out chown apache $BASEDIR/$IP/$DIA/pts_out fi fi echo "$HORA,$SEC,$IFINOCTETS" >> $BASEDIR/$IP/$DIA/pts_in echo "$HORA,$SEC,$IFOUTOCTETS" >> $BASEDIR/$IP/$DIA/pts_out if [ ! -f $BASEDIR/$IP/$DIA/rangex ]; then echo "24,18,12,12,100,100,1,1,/,$IP,$DIA/$MES/$ANO ($DIA_SEM)" > $BASEDIR/$IP/$DIA/rangex chown apache $BASEDIR/$IP/$DIA/rangex else if [ "$HORA" == "0" -o "$HORA" == "00" -o "$HORA" == "24" ]; then rm -f $BASEDIR/$IP/$DIA/rangex touch $BASEDIR/$IP/$DIA/rangex chown apache $BASEDIR/$IP/$DIA/rangex fi fi if [ ! -f $BASEDIR/$IP/$DIA/graph.php ]; then cp -f $BASEDIR/graph.php $BASEDIR/$IP/$DIA/ else if [ "$HORA" == "1" -o "$HORA" == "01" ]; then cp -f $BASEDIR/graph.php $BASEDIR/$IP/$DIA/ fi fi # mostra arquivos criados echo -e "\n--------IN------------" cat $BASEDIR/$IP/$DIA/pts_in echo "--------OUT-----------" cat $BASEDIR/$IP/$DIA/pts_out echo "----------------------" else echo -e "\nSINTAXE CORRETA: \n ./gera_estatisticas.sh <IP>\n" fi echo -e "---------------------------------------------------------------------------------------------\n"
Dell 1390 WLAN (Broadcom 4311)
ddflash - criar mídia bootável do Linux e FreeBSD
Script p/ instalar modem onboards
Resolver problemas de Internet
Como compartilhar a tela do Ubuntu com uma Smart TV (LG, Samsung, etc.)
Descritores de Arquivos e Swappiness
Solução rápida para o problema do Network Manager conectar mas não navegar
Como instalar no Linux Jogos da Steam só para Windows
Instalando o Team Viewer no Debian Trixie - problema no Policykit
Controle do PS5 no Linux Mint funciona? (4)
Qual driver da NVIDIA instalar? (2)
Como instalar o KDE3 em Distros Atuais ou Quase (5)