diff options
Diffstat (limited to 'admin/WebConsole/principal/shellconsola.php')
-rw-r--r-- | admin/WebConsole/principal/shellconsola.php | 192 |
1 files changed, 0 insertions, 192 deletions
diff --git a/admin/WebConsole/principal/shellconsola.php b/admin/WebConsole/principal/shellconsola.php deleted file mode 100644 index a37276f0..00000000 --- a/admin/WebConsole/principal/shellconsola.php +++ /dev/null @@ -1,192 +0,0 @@ -<?php -// ************************************************************************************************************************************************* -// Aplicación WEB: ogAdmWebCon -// Autor: José Manuel Alonso (E.T.S.I.I.) Universidad de Sevilla -// Fecha Creación: Año 2009-2010 -// Fecha Última modificación: Agosto-2010 -// Nombre del fichero: shellconsola.php -// Descripción : -// Crea una consola remota para enviar comandos de la shell de forma remota y recibir el eco -// ************************************************************************************************************************************************* -include_once("../includes/ctrlacc.php"); -include_once("../clases/SockHidra.php"); -include_once("../clases/AdoPhp.php"); -include_once("../includes/constantes.php"); -include_once("../includes/CreaComando.php"); -include_once("../idiomas/php/".$idioma."/consolaremota_".$idioma.".php"); -//________________________________________________________________________________________________________ -$litambito=0; -$idambito=0; -$comando=""; - -if (isset($_POST["litambito"])) $litambito=$_POST["litambito"]; // Recoge parametros -if (isset($_POST["idambito"])) $idambito=$_POST["idambito"]; -if (isset($_POST["comando"])) $comando=$_POST["comando"]; - -$nombrefuncion="ConsolaRemota"; -$ejecutor="1"; -$cadenaip=""; - -$cmd=CreaComando($cadenaconexion); -if (!$cmd) - Header('Location: '.$pagerror.'?herror=2'); // Error de conexión con servidor B.D. -//________________________________________________________________________________________________________ -if($cmd){ // Compone cadena ip recorriendo ámbitos - switch($litambito){ - case $LITAMBITO_CENTROS : - $cmd->texto="SELECT idcentro,nombrecentro FROM centros WHERE idcentro=".$idambito; - RecorreCentro($cmd); - break; - case $LITAMBITO_GRUPOSAULAS : - $cmd->texto="SELECT idgrupo,nombregrupo FROM grupos WHERE idgrupo=".$idambito." AND tipo=".$AMBITO_GRUPOSAULAS; - RecorreGruposAulas($cmd); - break; - case $LITAMBITO_AULAS : - $cmd->texto="SELECT idaula,nombreaula FROM aulas WHERE idaula=".$idambito; - RecorreAulas($cmd); - break; - case $LITAMBITO_GRUPOSORDENADORES : - $cmd->texto="SELECT idgrupo,nombregrupoordenador FROM gruposordenadores WHERE idgrupo=".$idambito; - RecorreGruposOrdenadores($cmd); - break; - case $LITAMBITO_ORDENADORES : - $cmd->texto="SELECT ip FROM ordenadores WHERE idordenador=".$idambito; - RecorreOrdenadores($cmd); - break; - } -} -$resul=false; -if($cmd){ - $shidra=new SockHidra($servidorhidra,$hidraport); - $cadenaip=preg_replace("/;/", "','", $cadenaip ); - $cmd->texto="SELECT ordenadores.ip as ipord,servidoresrembo.ip FROM ordenadores INNER JOIN servidoresrembo ON ordenadores.idservidorrembo =servidoresrembo.idservidorrembo WHERE ordenadores.ip IN ('".$cadenaip."') ORDER BY servidoresrembo.ip"; - $rs=new Recordset; - $rs->Comando=&$cmd; - if (!$rs->Abrir()) $resul=false; // Error al abrir recordset - $rs->Primero(); - if(!$rs->EOF){ - $resul=true; - $ipservidorrembo=trim($rs->campos["ip"]); // toma ip servidor rembo - $cadenaip=""; - while(!$rs->EOF && $resul){ - if($ipservidorrembo!=trim($rs->campos["ip"])){ // compara si cambia el servidor rembo - $parametros=$ejecutor; - $parametros.="nfn=".$nombrefuncion.chr(13); - $cadenaip=substr($cadenaip,0,strlen($cadenaip)-1); // Quita la coma - $parametros.="iph=".$cadenaip.chr(13); - $parametros.="rmb=".$ipservidorrembo.chr(13); - $resul=manda_trama(); - $ipservidorrembo=trim($rs->campos["ip"]); // toma ip servidor rembo - $cadenaip=""; - } - $cadenaip.=trim($rs->campos["ipord"]).";"; // toma ip del cliente - $rs->Siguiente(); - } - } - $rs->Cerrar(); - if($resul){ - $parametros=$ejecutor; - $parametros.="nfn=".$nombrefuncion.chr(13); - $parametros.="cmd=".$comando.chr(13); - $cadenaip=substr($cadenaip,0,strlen($cadenaip)-1); // Quita la coma - $parametros.="iph=".$cadenaip.chr(13); - $parametros.="rmb=".$ipservidorrembo.chr(13); - - $resul=manda_trama(); - } -} - - if(!$resul) - echo "alert('".$TbMsg[10]."');"; - -//======================================================================================================= -// Manda una trama del comando shellconsola -//________________________________________________________________________________________________________ -function manda_trama(){ - global $parametros; - global $shidra; - if ($shidra->conectar()){ // Se ha establecido la conexión con el servidor hidra - $shidra->envia_comando($parametros); - $shidra->desconectar(); - return(true); - } - return(false); -} -//________________________________________________________________________________________________________ -function RecorreCentro($cmd){ - global $AMBITO_GRUPOSAULAS; - $rs=new Recordset; - $rs->Comando=&$cmd; - if (!$rs->Abrir()) return; // Error al abrir recordset - $rs->Primero(); - if(!$rs->EOF){ - $idcentro=$rs->campos["idcentro"]; - $cmd->texto="SELECT idgrupo,nombregrupo FROM grupos WHERE idcentro=".$idcentro." AND grupoid=0 AND tipo=".$AMBITO_GRUPOSAULAS." ORDER BY nombregrupo"; - RecorreGruposAulas($cmd); - $cmd->texto="SELECT idaula,nombreaula FROM aulas WHERE idcentro=".$idcentro." AND grupoid=0 ORDER BY nombreaula"; - RecorreAulas($cmd); - } - $rs->Cerrar(); -} -//________________________________________________________________________________________________________ -function RecorreGruposAulas($cmd){ - global $AMBITO_GRUPOSAULAS; - $rs=new Recordset; - $rs->Comando=&$cmd; - if (!$rs->Abrir()) return; // Error al abrir recordset - $rs->Primero(); - while (!$rs->EOF){ - $idgrupo=$rs->campos["idgrupo"]; - $cmd->texto="SELECT idgrupo,nombregrupo FROM grupos WHERE grupoid=".$idgrupo." AND tipo=".$AMBITO_GRUPOSAULAS." ORDER BY nombregrupo"; - RecorreGruposAulas($cmd); - $cmd->texto="SELECT idaula,nombreaula FROM aulas WHERE grupoid=".$idgrupo." ORDER BY nombreaula"; - RecorreAulas($cmd); - $rs->Siguiente(); - } - $rs->Cerrar(); -} -//________________________________________________________________________________________________________ -function RecorreAulas($cmd){ - $rs=new Recordset; - $rs->Comando=&$cmd; - if (!$rs->Abrir()) return; // Error al abrir recordset - $rs->Primero(); - while (!$rs->EOF){ - $idaula=$rs->campos["idaula"]; - $cmd->texto="SELECT idordenador,nombreordenador,ip,mac FROM ordenadores WHERE idaula=".$idaula; - $k=0; - RecorreOrdenadores($cmd); - $rs->Siguiente(); - } - $rs->Cerrar(); -} -//________________________________________________________________________________________________________ -function RecorreGruposOrdenadores($cmd){ - $rs=new Recordset; - $rs->Comando=&$cmd; - if (!$rs->Abrir()) return; // Error al abrir recordset - $rs->Primero(); - while (!$rs->EOF){ - $idgrupo=$rs->campos["idgrupo"]; - $cmd->texto="SELECT idgrupo,nombregrupoordenador FROM gruposOrdenadores WHERE grupoid=".$idgrupo." ORDER BY nombregrupoordenador"; - RecorreGruposOrdenadores($cmd); - $cmd->texto="SELECT idordenador,nombreordenador,ip,mac FROM ordenadores WHERE grupoid=".$idgrupo; - RecorreOrdenadores($cmd); - $rs->Siguiente(); - } - $rs->Cerrar(); -} -//________________________________________________________________________________________________________ -function RecorreOrdenadores($cmd){ - global $cadenaip; - $rs=new Recordset; - $rs->Comando=&$cmd; - if (!$rs->Abrir()) return; // Error al abrir recordset - $rs->Primero(); - while (!$rs->EOF){ - $cadenaip.=$rs->campos["ip"].";"; - $rs->Siguiente(); - } - $rs->Cerrar(); -} - |