[ Index ] |
PHP Cross Reference of Unnamed Project |
[Summary view] [Print] [Text view]
1 <?php 2 $wpkgUser = false; 3 include "inc/wpkg.auth.php"; 4 5 if ( ! $wpkgUser ) { 6 include entete.inc.php; ?> 7 <h2>Déploiement d'applications</h2> 8 <div class=error_msg>Vous n'avez pas les droits nécessaires à l'utilisation de cette fonction !</div> 9 <? include pdp.inc.php; 10 exit; 11 } else{ 12 if ($_GET["Poste"] == '') Erreur("poste non défini"); 13 elseif ($_GET["Broadcast"] == '') Erreur("Broadcast non défini"); 14 elseif ($_GET["Mac"] == '') Erreur("Mac non défini"); 15 elseif ($_GET["Ip"] == '') Erreur("Ip non défini"); 16 else { 17 // envoi d'une trame wakeonlan 18 exec ( "/usr/bin/wakeonlan -i '".$_GET["Broadcast"]."' '" . $_GET["Mac"] . "' 2>&1", $output, $status ); 19 $msg="wakeonlan -i '".$_GET["Broadcast"]."' '" . $_GET["Mac"] . "'\n"; 20 21 // Pour le cas où le poste était déjà démarré 22 exec ( "net rpc shutdown -r -f -C 'Redemarrage pour wpkg' -S ".$_GET["Poste"]." -U '".$_GET["Poste"]."\adminse3%$xppass' 2>&1", $output, $status ); 23 if ( $status == 0 ) { 24 print "Redemarrge du '$Poste' : OK\n\n"; 25 print "net rpc shutdown -r -f -C 'Redemarrage pour wpkg' -S '".$_GET["Poste"]."' -U '".$_GET["Poste"]."\adminse3%XXXXXX'\n"; 26 return true; 27 } else { 28 $msg .= "Redemarrage du poste $Poste ... \n"; 29 $msg .= "Erreur $status : net rpc shutdown -r -f -C 'Redemarrage pour wpkg' -S '".$_GET["Poste"]."' -U '".$_GET["Poste"]."\adminse3%XXXXXX'\n"; 30 $msg .= "\n"; 31 foreach($output as $key => $value) { 32 $msg .= " $value\n"; 33 } 34 $msg .= "\n"; 35 // Essai avec ssh adminse3 36 37 //$rebootCmd = "(shutdown.exe -r -f)||(psshutdown.exe -r -f -n 10)"; 38 $rebootCmd = "shutdown.exe -r -f"; 39 $sshCmd = "ssh -o StrictHostKeyChecking=no -o ConnectTimeout=20 -o CheckHostIP=no -i /var/remote_adm/.ssh/id_rsa"; 40 41 //echo "$sshCmd adminse3@".$_GET["Ip"]." '$rebootCmd'"; 42 exec ( "$sshCmd adminse3@".$_GET["Ip"]." '$rebootCmd' 2>&1", $output, $status ); 43 if ( $status == 0 ) { 44 print "Redemarrge du '$Poste' : OK\n\n"; 45 print "$sshCmd adminse3@".$_GET["Ip"]." '$rebootCmd'\n"; 46 return true; 47 } else { 48 $msg .= "Erreur $status : $sshCmd adminse3@".$_GET["Ip"]." '$rebootCmd'\n"; 49 $msg .= "\n"; 50 foreach($output as $key => $value) { 51 $msg .= " $value\n"; 52 } 53 $msg .= "\n"; 54 // Essai avec ssh administrateur 55 exec ( "$sshCmd leb@".$_GET["Ip"]." '$rebootCmd' 2>&1", $output, $status ); 56 if ( $status == 0 ) { 57 print "Redemarrge du '$Poste' : OK\n\n"; 58 print "$sshCmd administrateur@".$_GET["Ip"]." '$rebootCmd'\n"; 59 return true; 60 } else { 61 //header("HTTP/1.1 505 Forbidden"); 62 //header("Status: 505 Erreur d'execution"); 63 $msg .= "Erreur $status : $sshCmd administrateur@".$_GET["Ip"]." '$rebootCmd'\n"; 64 $msg .= "\n"; 65 foreach($output as $key => $value) { 66 $msg .= " $value\n"; 67 } 68 $msg .= "\n"; 69 header("HTTP/1.1 505 Forbidden"); 70 header("Status: 505 Erreur d'execution"); 71 echo "$msg"; 72 return false; 73 } 74 } 75 } 76 } 77 } 78 function Erreur($msg) { 79 header("HTTP/1.1 404 Not found"); 80 header("Status: 404 Not found"); 81 echo "$msg\n"; 82 } 83 84 ?>
title
Description
Body
title
Description
Body
title
Description
Body
title
Body
Generated: Tue Mar 17 22:47:18 2015 | Cross-referenced by PHPXref 0.7.1 |