Pular para o conteúdo

Monitoramento simples de servidores

Este script, que se encontra na versão 1.0, faz um monitoramento simples (IP e portas) de seus servidores ou equipamentos.

Você informa quais máquinas e portas serão monitoradas pelo script. Para isso altere o arquivo de configuração "monitor.conf" conforme os comentários.
Alessandro Dias diaspcf
Hits: 33.676 Categoria: PHP Subcategoria: Rede
  • Download
  • Nova versão
  • Indicar
  • Denunciar

Descrição

Este script, que se encontra na versão 1.0, faz um monitoramento simples (IP e portas) de seus servidores ou equipamentos.

Você informa quais máquinas e portas serão monitoradas pelo script. Para isso altere o arquivo de configuração "monitor.conf" conforme os comentários.
Download monitor.tar.gz Enviar nova versão

Versões atualizadas deste script

Esconder código-fonte

<?php
// Programa para monitoramento de rede
// Desenvolvido por: Alessandro Dias
// Data: 03/05/2007
// ------------------------------------------------- 

// ------------------------------------------------- Funcoes
include "functions.php";

//-----------Lê o arquivo de configuração
$conf=ler_config("monitor.conf");

$autor=$conf[0]["autor"];
$titulo=$conf[0]["titulo"];
$nr_servidores=$conf[0]["nr_servidores"];

//------ VERIFICACAO DO STATUS DAS MAQUINAS
for ($i=1;$i<=$nr_servidores;$i++) {
     $ip[$i] = $conf[$i]["ip"];
     $ip[$i] = gethostbyname($ip[$i]);
     $ok=testa_ping($ip[$i]);
    $resp=1; 
     if (!$ok)
         $serv_status[$i] = $DESLIGADO;
     else 
     {        //---------------------- ping ok
        $portas=explode(",",$conf[$i]["portas"]);  
       for ($j=0;$j<count($portas);$j++) {
             $ok_porta[$i][$portas[$j]]=testa_porta($ip[$i],$portas[$j]);
          $resp &= $ok_porta[$i][$portas[$j]];
       }   
         if ($resp)
                 $serv_status[$i] = $LIGADO;
             else
                 $serv_status[$i] = $SEM_SERVICO;
          
       $topico[$i] = $conf[$i]["topico"]; 
       $serv_img[$i]=retorna_imagem($serv_status[$i]); 
     }
}

for ($i=$nr_servidores+1;$i<=12;$i++) {
    //------------------------------ 
    $topico[$i] = " ";  
     $serv_status[$i]=$VAGO;
    $serv_img[$i]=retorna_imagem($serv_status[$i]); 
    //------------------------------ 
}

?>


<HTML>
<HEAD>
<style type="text/css">
div {
position: absolute;
left: 200px;
top: 400px;
background-color: #ffffff;
width: 450px;
padding: 10px;
color: black;
border: #0000cc 2px;
display: none;
-moz-opacity: 0.85;
opacity: 0.85;
filter: alpha(opacity=85);
}
</style>

<script language="JavaScript">
function setVisibility(id, visibility, x, y) {
   document.all[id].style.left = x;
   document.all[id].style.top = y;
   document.all[id].style.display = visibility;
}
</script>

<SCRIPT TYPE="text/javascript">
<!--
function popup(mylink, windowname)
{
if (! window.focus)return true;
var href;
if (typeof(mylink) == 'string')
   href=mylink;
else
   href=mylink.href;
window.open(href, windowname, 'width=700,height=300,scrollbars=yes');
return false;
}
//-->
</SCRIPT>

<TITLE>MONITORAMENTO DE SERVIDORES</TITLE>

<!--
<meta http-equiv="refresh" content="60"> 
-->
</HEAD>


<HEAD>

<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=iso-8859-1">

</HEAD>

<BODY BGCOLOR=#000000 LEFTMARGIN=0 TOPMARGIN=0 MARGINWIDTH=0 MARGINHEIGHT=0>
<FONT COLOR="white" SIZE=5 TYPE="arial"><?=$titulo?></FONT>

<TABLE BORDER=0 CELLPADDING=0 CELLSPACING=0>

    <TR>

       <TD>
          <IMG onMouseOver="setVisibility('<?=$topico[1]?>', 'inline', 350, 50);" 
                 onMouseOut="setVisibility('<?=$topico[1]?>','none',0,0);" 
             SRC="images/<?=$serv_img[1]?>" 
             WIDTH=100 HEIGHT=100 BORDER=0>
      </TD>
       <TD>
          <IMG onMouseOver="setVisibility('<?=$topico[2]?>', 'inline', 300, 50);" 
                 onMouseOut="setVisibility('<?=$topico[2]?>','none',0,0);" 
             SRC="images/<?=$serv_img[2]?>" 
             WIDTH=100 HEIGHT=100 BORDER=0>
      </TD>
       <TD>
          <IMG onMouseOver="setVisibility('<?=$topico[3]?>', 'inline', 300, 50);" 
                 onMouseOut="setVisibility('<?=$topico[3]?>','none',0,0);" 
             SRC="images/<?=$serv_img[3]?>" 
             WIDTH=100 HEIGHT=100 BORDER=0>
      </TD>
   </TR>
   <TR>

      <TD ALIGN="center"><FONT COLOR="white"><?=$topico[1]?></FONT></TD>

      <TD ALIGN="center"><FONT COLOR="white"><?=$topico[2]?></FONT></TD>
      <TD ALIGN="center"><FONT COLOR="white"><?=$topico[3]?></FONT></TD>

   </TR>

   <TR>

       <TD>
          <IMG onMouseOver="setVisibility('<?=$topico[4]?>', 'inline', 300, 50);" 
                 onMouseOut="setVisibility('<?=$topico[4]?>','none',0,0);" 
             SRC="images/<?=$serv_img[4]?>" 
             WIDTH=100 HEIGHT=100 BORDER=0>
      </TD>
       <TD>
          <IMG onMouseOver="setVisibility('<?=$topico[5]?>', 'inline', 300, 50);" 
                 onMouseOut="setVisibility('<?=$topico[5]?>','none',0,0);" 
             SRC="images/<?=$serv_img[5]?>" 
             WIDTH=100 HEIGHT=100 BORDER=0>
      </TD>
       <TD>
          <IMG onMouseOver="setVisibility('<?=$topico[6]?>', 'inline', 300, 50);" 
                 onMouseOut="setVisibility('<?=$topico[6]?>','none',0,0);" 
             SRC="images/<?=$serv_img[6]?>" 
             WIDTH=100 HEIGHT=100 BORDER=0>
      </TD>
   </TR>
   <TR>

      <TD ALIGN="center"><FONT COLOR="white"><?=$topico[4]?></FONT></TD>

      <TD ALIGN="center"><FONT COLOR="white"><?=$topico[5]?></FONT></TD>
      <TD ALIGN="center"><FONT COLOR="white"><?=$topico[6]?></FONT></TD>

   </TR>

   <TR>

       <TD>
          <IMG onMouseOver="setVisibility('<?=$topico[7]?>', 'inline', 300, 50);" 
                 onMouseOut="setVisibility('<?=$topico[7]?>','none',0,0);" 
             SRC="images/<?=$serv_img[7]?>" 
             WIDTH=100 HEIGHT=100 BORDER=0>
      </TD>
       <TD>
          <IMG onMouseOver="setVisibility('<?=$topico[8]?>', 'inline', 300, 50);" 
                 onMouseOut="setVisibility('<?=$topico[8]?>','none',0,0);" 
             SRC="images/<?=$serv_img[8]?>" 
             WIDTH=100 HEIGHT=100 BORDER=0>
      </TD>
       <TD>
          <IMG onMouseOver="setVisibility('<?=$topico[9]?>', 'inline', 300, 50);" 
                 onMouseOut="setVisibility('<?=$topico[9]?>','none',0,0);" 
             SRC="images/<?=$serv_img[9]?>" 
             WIDTH=100 HEIGHT=100 BORDER=0>
      </TD>
   </TR>
   <TR>

      <TD ALIGN="center"><FONT COLOR="white"><?=$topico[7]?></FONT></TD>

      <TD ALIGN="center"><FONT COLOR="white"><?=$topico[8]?></FONT></TD>
      <TD ALIGN="center"><FONT COLOR="white"><?=$topico[9]?></FONT></TD>

   </TR>

   <TR>

       <TD>
          <IMG onMouseOver="setVisibility('<?=$topico[10]?>', 'inline', 300, 50);" 
                 onMouseOut="setVisibility('<?=$topico[10]?>','none',0,0);" 
             SRC="images/<?=$serv_img[10]?>" 
             WIDTH=100 HEIGHT=100 BORDER=0>
      </TD>
       <TD>
          <IMG onMouseOver="setVisibility('<?=$topico[11]?>', 'inline', 300, 50);" 
                 onMouseOut="setVisibility('<?=$topico[11]?>','none',0,0);" 
             SRC="images/<?=$serv_img[11]?>" 
             WIDTH=100 HEIGHT=100 BORDER=0>
      </TD>
       <TD>
          <IMG onMouseOver="setVisibility('<?=$topico[12]?>', 'inline', 300, 50);" 
                 onMouseOut="setVisibility('<?=$topico[12]?>','none',0,0);" 
             SRC="images/<?=$serv_img[12]?>" 
             WIDTH=100 HEIGHT=100 BORDER=0>
      </TD>
   </TR>

   <TR>

      <TD ALIGN="center"><FONT COLOR="white"><?=$topico[10]?></FONT></TD>

      <TD ALIGN="center"><FONT COLOR="white"><?=$topico[11]?></FONT></TD>
      <TD ALIGN="center"><FONT COLOR="white"><?=$topico[12]?></FONT></TD>

   </TR>

</TABLE>
<BR>
<TABLE BORDER=1 CELLPADDING=0 CELLSPACING=0>

   <TR>
      <TD COLSPAN=2 ALIGN="center"><FONT COLOR="white">LEGENDA</FONT></TD>
   </TR>
   <TR>

      <TD><IMG SRC="images/mini-verde.jpg" ALT=""></TD>
      <TD ALIGN="center"><FONT COLOR="white">OK</FONT></TD>
   </TR>
   <TR>

      <TD><IMG SRC="images/mini-vermelho.jpg" ALT=""></TD>
      <TD ALIGN="center"><FONT COLOR="white"> SEM SERVICO </FONT></TD>
   </TR>
   <TR>

      <TD><IMG SRC="images/mini-azul.jpg" ALT=""></TD>
      <TD ALIGN="center"><FONT COLOR="white"> ATENCAO </FONT></TD>
   </TR>
   <TR>

      <TD><IMG SRC="images/mini-preto.jpg" ALT=""></TD>
      <TD ALIGN="center"><FONT COLOR="white"> DESLIGADO </FONT></TD>

   </TR>
   <TR>

      <TD><IMG SRC="images/mini-branco.jpg" ALT=""></TD>
      <TD ALIGN="center"><FONT COLOR="white"> VAGO </FONT></TD>

   </TR>
</TABLE>

<BR><FONT COLOR="white"><?=$autor?></FONT>

<? for ($i=1;$i<=$nr_servidores;$i++) { ?>

  <div id="<?=$topico[$i]?>"><table>
                 <tr><td colspan=2><font color=darkblue><?=$topico[$i]?></font> (<?=$ip[$i]?>)</td></tr>
        <?  if($serv_status[$i] == $DESLIGADO) 
                 $corpo="<tr><td>TURN OFF</td></tr>";
            else { 
             $corpo=""; 
             $portas=explode(",",$conf[$i]["portas"]);   
             for ($j=0;$j<count($portas);$j++) { 
                     if ($ok_porta[$i][$portas[$j]])
                         $corpo.="<tr><td width=160>tcp/".$portas[$j]."</td><td><font color=green>ON</font></td></tr>";
                     else
                         $corpo.="<tr><td width=160>tcp/".$portas[$j]."</td><td><font color=red>OFF</font></td></tr>";
             }
            }  ?>
  <?=$corpo?>
  </table></div>
<? } ?>


</BODY>

</HTML>

Script PHP para autenticacao web dos usuarios do proprio linux

Resolvendo IP para Hostname em PHP

Cria gráficos para monitoramento de consumo de CPU e Memória a partir de arquivos [Atualização].

Apache VirtualHosts Config

Whois em PHP

#1 Comentário enviado por lanux em 20/05/2007 - 10:09h
Corrige aí...

Erro: arquivo monitor.tar.gz não encontrado !
#2 Comentário enviado por diaspcf em 21/05/2007 - 17:24h
Pessoal, não sei o que está havendo, mas todos os meus scrits estão com esse problema. Já entrei em contato várias vezes com os moderadores pelo email do suporte, mas até agora nenhum retorno!!!
Caso alguem queira o script, me mande uma mensagem com o email que eu mando, ok?
Att.
Alessandro.
#3 Comentário enviado por emanueljp em 16/09/2007 - 15:59h
Alessandro gostaria de receber o script.
Por favor envie para o email emanueljp@goyas.com.br
Grato,
Emanuel
#4 Comentário enviado por jgilcustodio em 24/09/2008 - 16:23h
Alessandro
Estou precisando também de seu script se você puder manda no meu email eu agradeceria.
Segue meu e-mail: junior@gazin.com.br

Obrigado,
Junior
#5 Comentário enviado por leandroc_rj em 15/10/2008 - 10:24h
Bom dia, Alessandro,

Por favor, envie o arquivo também para mim: "leandroc_rj@ig.com.br".

Obrigado, Leandro.
#6 Comentário enviado por megapoint em 10/11/2008 - 15:36h
Opa Alessandro...

Gostaria de receber também, adriano@pien.pr.gov.br

valew

Adriano
#7 Comentário enviado por coastbr em 25/02/2009 - 13:33h
Opa Alessandro...

Gostaria de receber também, renatoluan@gmail.com
#8 Comentário enviado por rsribas em 01/09/2009 - 16:30h
Caro Alessandro,

Favor enviar para o e-mail: rsribas@gmail.com

grato.
#9 Comentário enviado por rribeirorj em 17/02/2010 - 13:26h
Caro Alessandro,

Se possível, me envie o script?

rodrigo@rodrigo.org

Atenciosamente.
#10 Comentário enviado por kappaum em 29/06/2010 - 09:44h
Alessandro,

Gostaria de receber o script.

kappaum@oi.com.br

Desde já agradeço.
#11 Comentário enviado por dtux em 17/08/2010 - 07:49h
Alessandro,

Gostaria de receber o script por e-mail.

diego.grassato@gmail.com

Desde já agradeço.
#12 Comentário enviado por jotajunior em 14/12/2010 - 09:08h
Alessandro,

Gostaria de receber o script por e-mail:

junior@farramonte.com

Muito Obrigado.
#13 Comentário enviado por lord_vagner em 15/03/2011 - 17:20h
Alessandro
Se possivel, envie o script para vagner.nogueira@gmail.com
Obrigado.
#14 Comentário enviado por eder.mvitor em 02/08/2011 - 15:45h
Alessandro,

cara to procurando algo assim como seu script sera que poderia enviar para eder.mvitor@gmail.com
desde ja agradeco.
#15 Comentário enviado por h474k3 em 30/08/2011 - 22:40h
Alessandro,
Você poderia me mandar este arquivo (monitor.tar.gz) por e-mail andredeoterra@gmail.com estou precisando de algo com esta funcionalidade, e acho que seu script pode me ajudar.
Obrigado.
#16 Comentário enviado por luizcotrin em 20/10/2011 - 06:02h
Olá Alessandro, tudo bem?
Quando puder você me envia o aquivo monitor.tar.gz, por favor.

Obrigado
#17 Comentário enviado por josef em 12/02/2012 - 06:22h
Cara, manda ai: patipy@yahoo.com.br, valeu
#18 Comentário enviado por geraldobjr em 23/02/2012 - 08:38h
amigo, pode me enviar por email tbm ??
geraldobjr@gmail.com
#19 Comentário enviado por raynerson em 26/02/2012 - 12:05h
Alessandro, boa tarde!

Tem como você encaminhar pro meu e-mail também?

e-mail: raynerson@gmail.com

Ficarei muito grato!

Atenciosamente,
Raynerson Moura
#20 Comentário enviado por guilhermeTI em 18/07/2013 - 13:24h
Opa!

por favor, envia para mim também:
guilherme_auras@hotmail.com

ficarei muito grato!

aguardo!
#21 Comentário enviado por victor_angelo23 em 08/10/2013 - 14:48h
Por favor alguém poderia enviar pra mim esse monitor de servidor e equipamento!!

Ficarei aguardando,

Atenciosamente,
Victor Silva
#22 Comentário enviado por victor_angelo23 em 08/10/2013 - 15:01h
Esqueci de postar meu E-mail no comentário anterior é victor_angelo@hotmail.com
#23 Comentário enviado por rac7 em 06/01/2014 - 11:14h
Bom dia!
tem como mandar no meu e-mail racgiga@gmail.com

obrigado!
#24 Comentário enviado por removido em 17/04/2014 - 15:12h
gostaria de receber o script
#25 Comentário enviado por rochaigo em 15/07/2014 - 15:24h
Ola Alessandro, por gentileza gostaria de receber o script, meu e-mail igor.ribeirorocha@gmail.com
Abraço
#26 Comentário enviado por ordiley em 10/10/2014 - 20:14h
Boa noite Alessandro,

Gostaria de receber o arquivo monitor.tar.gz
ordiley@gmail.com

Obrigado!
#27 Comentário enviado por milton7766 em 02/09/2015 - 14:52h
Boa Tarde, Caro Alessandro,

Gostaria de receber o arquivo " monitor.tar.gz "
voce@enviou.me

Um Cordial Abraço e
Obrigado!

Contribuir com comentário

Entre na sua conta para comentar.