Interfaz web para Ejecutar acciones con “calculadora de funciones”

xxxxxx

Objetivo: creación de una página web donde aparecerá un teclado numérico y que dependiendo de la combinación tecleada, ejecuta una función del sistema.

Paso 1. Instalación de php5 en Openwrt.

Tenemos que instalar las dependencias PHP5 para poder ejecutar acciones en el sistema a través de los “botones”.

opkg update
opkg install php5 php5-cgi

Despues de ello, nos vamos a el archivo de configuracion de Uhttpd (El servicio web por defecto).Y añadimos lo siguiente para que el uhttpd reconozca los “.PHP”.

list interpreter ".php=/usr/bin/php-cgi"

Y hacemos restart del servicio con el comando:

/etc/init.d/uhttpd restart

Con esto ya nos reconoce las extensiones de páginas en php.

Paso 2. Creación de la página web.Creación de la web para envío de funciones del servidor

Creamos el archivo index.php en la carpeta  /www/

 nano /www/index.php

y añadimos lo siguiente:

<table border=1>
<tr>
<form name=f1 action="index2.php" method="post">
<input type="text" name="To" value="To: tumail@gmail.com" style="visibility:hidden">
<input type="text" name="From" value="From: tumail@gmail.com" style="visibility:hidden">
<input type="text" name="Subject" value="Subject: Desde Openwrt" style="visibility:hidden">
<input type="text" name="ip" value="<script language="php"> echo getRealIP() </script>" style="visibility:hidden">
<p id="code"></p>
</form>
<td width=30% align=center>
<h4> Calculadora de funciones </h4>
<table border=2 bordercolor=green>
<form name="calculator" method="post">
<input type="text" name="To" value="To: tumail@gmail.com" style="visibility:hidden">
<input type="text" name="From" value="From: tumail@gmail.com" style="visibility:hidden">
<input type="text" name="Subject" value="Subject: Funcion Openwrt" style="visibility:hidden">
<TR>
<TD colspan="4"><input type="textfield" name="ans" value=""></TD>
</TR>
<TR>
<TD align=center><input type="button" value="1" onClick="document.calculator.ans.value+='1'"></TD>
<TD align=center><input type="button" value="2" onClick="document.calculator.ans.value+='2'"></TD>
<TD align=center><input type="button" value="3" onClick="document.calculator.ans.value+='3'"></TD>
<TD align=center><input type="button" value="+" onClick="document.calculator.ans.value+='+'"></TD>
</TR>
<TR>
<TD align=center><input type="button" value="4" onClick="document.calculator.ans.value+='4'"></TD>
<TD align=center><input type="button" value="5" onClick="document.calculator.ans.value+='5'"></TD>
<TD align=center><input type="button" value="6" onClick="document.calculator.ans.value+='6'"></TD>
<TD align=center><input type="button" value="-" onClick="document.calculator.ans.value+='-'"></TD>
</TR>
<TR>
<TD align=center><input type="button" value="7" onClick="document.calculator.ans.value+='7'"></TD>
<TD align=center><input type="button" value="8" onClick="document.calculator.ans.value+='8'"></TD>
<TD align=center><input type="button" value="9" onClick="document.calculator.ans.value+='9'"></TD>
<TD align=center><input type="button" value="*" onClick="document.calculator.ans.value+='*'"></TD>
</TR>
<TR>
<TD align=center><input type="button" value="0" onClick="document.calculator.ans.value+='0'"></TD>
<TD align=center><input type="reset" value="C" cellpadding="2"></TD>
<TD align=center colspan="2"><input type="submit" value="Enviar" onClick="document.calculator.ans.value=eval(document.calculator.ans.value)"></TD>
</TR>
</form>
</table>
</td>
<td>
<center><b>Funciones creadas</b></center>
<div align="left">
<font size=2.5>
<ul>
<li>2250 - Cambiar ip: "ifconfig br-lan:0 192.168.20.2 </li>
<li>4327 - ifconfig -a / Enviar por e-mail</li>
<li>112 - uname -a / Enviar por e-mail</li>
<li>+-15* - ls -l / Enviar por e-mail </li>
</ul>
</font>
</div>
</td>
</tr>
</table>
</form>
<br><br>
<!-- PHP -->
<?php
$clave = $_POST["ans"];
if ($clave == "2250"){
system("ifconfig br-lan:0 192.168.20.2");
echo "FUNCION ENVIADA CORRECTAMENTE";
} elseif ($clave == "4327") {
system("ifconfig -a > funcionguardada.txt && head -70 funcionguardada.txt >> funcion.txt && sleep 2; ssmtp tumail@gmail.com < funcion.txt");
echo "FUNCION ENVIADA CORRECTAMENTE";
} elseif ($clave == "112") {
system("uname -a > funcionguardada.txt && head -4 funcionguardada.txt >> funcion.txt && sleep 2; ssmtp tumail@gmail.com < funcion.txt");
echo "FUNCION ENVIADA CORRECTAMENTE";
} elseif ($clave == "+-15*") {
system("ls -l > funcionguardada.txt && head -50 funcionguardada.txt >> funcion.txt && sleep 2; ssmtp tumail@gmail.com < funcion.txt");
echo "FUNCION ENVIADA CORRECTAMENTE";
} elseif ($clave == "") {
echo "INTRODUCIR FUNCION";
} else {
echo "Funcion errorea!";
}
fi;
fi;
fi;
?>
<?php
$sn=fopen("funcion.txt","w") or die("Problemas en la creacion");
fputs($sn,$_REQUEST['To']);
fputs($sn,"\n");
fputs($sn,$_REQUEST['From']);
fputs($sn,"\n");
fputs($sn,$_REQUEST['Subject']);
fputs($sn,"\n");
fputs($sn,"--------------------------------------------------------");
fputs($sn,"\n");
fclose($sn);
?>

Ya sólo queda poner la dirección IP de nuestro router en el navegador y llamar a la página index.php.

http://dir_ip_del_router/index.php

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *