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.709 ]
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"
slackpigs - veja os pacotes que mais ocupam espaço no Slackware
Atenção a quem posta conteúdo de dicas, scripts e tal (1)
Manutenção de sistemas Linux Debian e derivados com apt-get, apt, aptitude e dpkg
Melhorando o tempo de boot do Fedora e outras distribuições
Como instalar as extensões Dash To Dock e Hide Top Bar no Gnome 45/46
Como Atualizar Fedora 39 para 40
Instalar Google Chrome no Debian e derivados
Consertando o erro do Sushi e Wayland no Opensuse Leap 15
Instalar a última versão do PostgreSQL no Lunix mantendo atualizado
Flathub na sua distribuição Linux e comandos básicos de gerenciamento
erro ao clonar repo github (1)
Quais Shell Scripts vocês usam? (15)
Como adicionar módulo de saúde da bateria dos notebooks Acer ao kernel... (22)
[Shell Script] Script para desinstalar pacotes desnecessários no OpenSuse
[Shell Script] Script para criar certificados de forma automatizada no OpenVpn
[Shell Script] Conversor de vídeo com opção de legenda
[C/C++] BRT - Bulk Renaming Tool
[Shell Script] Criação de Usuarios , Grupo e instalação do servidor de arquivos samba