begin process at 2010 03 22 07:01:16
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Réseau & Internet

 > SUPERVISION DE PORTS

SUPERVISION DE PORTS


 Information sur la source

 Description

Ce script permets de superviser les services lancés sur un serveur avec la fonction @fsockopen. Les informations (adresses ip et ports) sont stockés dans une base de donnée.
En cas de ports libre tout va bien sinon création d'un fichier log avec heure, date, adresse ip et ports du serveur en question.
Script commenté (c'est mon premier alors j'attends vos remarques). C'est une adaptation du script http://www.phpcs.com/codes/STATUS-SERVEUR-PHP_3950 3.aspx

Source

  • <?php
  • mysql_connect("localhost", "root", ""); // Connexion à MySQL
  • mysql_select_db("supervision"); // Sélection de la base
  • $reponse = mysql_query("SELECT * FROM serveur"); // Requête SQL de la table serveur
  • while ($donnees = mysql_fetch_array($reponse) )
  • { // Début boucle while
  • $ip = $donnees['ip_serveur']; // adresse ip du serveur
  • $ports = $donnees['ports_serveur']; // ports du serveur
  • $connect = TRUE; // Autoriser ou non la connexion
  • // Mise en place du texte du nom de serveur
  • echo "Le serveur $ip port $ports";
  • // Verification du statut
  • if (! $sock = @fsockopen($ip, $ports, $num, $error, 5))
  • {
  • // Si il est hors ligne
  • echo ' est : <font color="#CC0000">DECONNECTE</font> !';
  • // Si problème création du fichier log
  • echo "<br />";
  • echo "Création du fichier log";
  • $fp=fopen("/var/www/test/log.txt","a"); // Ouverture du fichier avec le mode écriture
  • fputs($fp, "\n"); // on va a la ligne
  • $date = date("d-m-Y"); // On recupere la date de l'incident
  • $heure = date("H:i"); // On recupere l'heure de l'incident
  • fputs($fp, "$date $heure $ip $ports"); // On écrit la date, l'heure, l'ip et le port concerné
  • fclose($fp); // Fermeture du fichier
  • }
  • else{
  • // Si il est en ligne
  • echo ' est : <font color="#00CC00">CONNECTE</font> !';
  • fclose($sock);
  • }
  • echo "<br />";
  • } // Fin boucle while
  • mysql_close(); // Déconnexion de MySQL
  • ?>
     <?php
     
     mysql_connect("localhost", "root", ""); // Connexion à MySQL
     mysql_select_db("supervision"); // Sélection de la base 

     $reponse = mysql_query("SELECT * FROM serveur"); // Requête SQL de la table serveur
     
     while ($donnees = mysql_fetch_array($reponse) )
     { // Début boucle while

     $ip = $donnees['ip_serveur']; // adresse ip du serveur
     $ports = $donnees['ports_serveur']; // ports du serveur

     
     $connect = TRUE; // Autoriser ou non la connexion
        
    	
     // Mise en place du texte du nom de serveur
     echo "Le serveur $ip port $ports";
     // Verification du statut
    
     if (! $sock = @fsockopen($ip, $ports, $num, $error, 5))
     {
     // Si il est hors ligne
     echo ' est : <font color="#CC0000">DECONNECTE</font> !';
     
     // Si problème création du fichier log
     echo "<br />";
     echo "Création du fichier log";
     $fp=fopen("/var/www/test/log.txt","a"); // Ouverture du fichier avec le mode écriture
     fputs($fp, "\n"); // on va a la ligne
     $date = date("d-m-Y"); // On recupere la date de l'incident
     $heure = date("H:i"); // On recupere l'heure  de l'incident
     fputs($fp, "$date $heure $ip $ports"); // On écrit la date, l'heure, l'ip et le port concerné
     fclose($fp); // Fermeture du fichier
     }	 
	  
     else{
     // Si il est en ligne
     echo ' est : <font color="#00CC00">CONNECTE</font> !';
    
     fclose($sock);
    
     }	
     echo "<br />";
	
     } // Fin boucle while
     mysql_close(); // Déconnexion de MySQL
     ?> 




 Sources de la même categorie

SONDAGE - VOTE - POLL (AVEC MYSQL) par hornet_bzz
Source avec Zip Source avec une capture CRAYONPRO EST UN CMS SIMPLE EN PHP ET MYSQL - INSTALLATION E... par crayoncie
Source avec Zip Source avec une capture LISTENGEN GÉNÉRATEUR DE FICHIER PLAYLIST par AGG
Source avec Zip IP CALCULATOR par X_Cli
Source avec Zip Source avec une capture WHOIS DOMAIN CLASS : LOOKUP & AVAIBILITY par aKheNathOn

 Sources en rapport avec celle ci

Source avec Zip SIMULBAL: SERVEUR POUR BALANCES ÉLECTRONIQUES DE LABORATOIRE... par laservert
Source avec Zip Source avec une capture ADMINISTRATION DE SERVEURS URBAN TERROR A DISTANCE par XRaph
VERIFICATION D'UNE ADRESSE IP par cherifnet2002
MIGAPROXY : PROXY EN PHP COMPILABLE AVEC BAMCOMPILE par qbasic
STATUS SERVEUR EN PHP par naruto uzumaki

Commentaires et avis

Commentaire de DiGhan le 07/07/2007 17:46:18

Salut,

bien pratique ce petit script. Pour l'archivage des données dans le fichier de log, il est possible de faire plus simple (écriture sur la prochaine ligne) :

> $hFile = fopen('/var/www/test/log.txt', 'a+');
> $time = date("d-m-Y H:i"); // récupération des infos de temps
> fputs($hFile, "$time $ip $ports\r\n");  // "\r\n" permet d'insérer un retour à ligne
> fclose($hFile);

Une dernière petite chose, pour la vérification des communications :

# if (! $sock = @fsockopen($ip, $ports, $num, $error, 5))
> if (FALSE === ($sock = @fsockopen($ip, $ports, $num, $error, 5) )
Rq : vérifier le type de retour étant donné que fsockopen retourne soit un pointeur soit false (type différent).






Commentaire de coucou747 le 09/07/2007 07:35:32

c'est pas de la supervision, c'est juste un exemple de log... t'as aucune verification d'erreur dans ton script...

Commentaire de marmarak le 11/04/2008 10:21:23

j'ai exécuté votre code je trouve ces erreurs:

Notice: Undefined index: ip_serveur in C:\Program Files\EasyPHP 2.0b1\www\supervision.php on line 10

Notice: Undefined index: ports_serveur in C:\Program Files\EasyPHP 2.0b1\www\supervision.php on line 11
Le serveur port est : DECONNECTE !
Création du fichier log
Warning: fopen(/var/www/test/log.txt) [function.fopen]: failed to open stream: No such file or directory in C:\Program Files\EasyPHP 2.0b1\www\supervision.php on line 29

Warning: fputs(): supplied argument is not a valid stream resource in C:\Program Files\EasyPHP 2.0b1\www\supervision.php on line 30

Warning: fputs(): supplied argument is not a valid stream resource in C:\Program Files\EasyPHP 2.0b1\www\supervision.php on line 33

Warning: fclose(): supplied argument is not a valid stream resource in C:\Program Files\EasyPHP 2.0b1\www\supervision.php on line 34

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Serveur socket [ par Tibo82 ] Je débute en php et en fait je dois developpez un serveur simple à l'aide de socket. Ce serveur devra juste recevoir un caractère correspondant à une if et else en php [ par mediapat ] slt à tousje suis débutant et n'arrive pas à faire un code avec condition.voici le début de mon code source :&lt;? $host = "213.228.13.136"; echo get scripte redirection ip fix-->ip dynamique [ par Parilla77 ] Bonjour je cherche a faire un scripte qui rediriger&#233; vers mon serveur perso:1 fichier sur mon serveur perso qui envoi toutes les minutes par exem Socket et redirection serveur PROBLEME ! [ par Antidote ] Bonjour j'ai un pb entre deux socket. J'envoie une requette http par socket, le server me répond par un code 302 et une adresse de redirection. Quand Socket : Adresse d'un serveur [ par Leneuf8000 ] Bonjour, voil&#224;, j'ai trouv&#233; des sripts permettant l'envoi de mail et qui utilise la fonction fsockopen, or comme j'ai un probl&#232;me pour Affichage Adresse IP Du Serveur ! [ par theserveur ] Bonjour @ tous Alors je vais tenter d'&#234;tre clair dans ma demande. J'ai un serveur CS sur lequel j'ai install&#233; phpBB pour mettre &#224; di sockets/php [ par agoumi ] bonjour a tous! bon j'ai réaliser une socket serveur en php sous linux,mais lors de l'execution j'ai l'erreur suivant: Fatal error: Call to undefined Socket bind : erreur... [ par skurvy ] Voila, j'aimerais utiliser les sockets pour faire un petit jeu, mais ca ne va pas... /// voila le de but de mon programme&lt;?$ip=$_SERVER["REMOTE_ADD HELP socket [ par OverDarck ] Je n'arrive pas a utiliser les fonction socket ou meme fsockopen sur free et sur un autre serveur profesionel, alors que la meme source utilisatn ces Serveur Socket [ par Astalavista ] Je chercher le moyen de cree un serveur en PHP avec des sockets.Je compte fair un programme en un autre language (Client) qui communiquerais avec mon


Nos sponsors


Sondage...

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,593 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales