Busindre » Blog Archive » WebSH: Usar la consola para ejecutar comandos en un servidor web con PHP (GNU/Linux | BSD)

WebSH: Usar la consola para ejecutar comandos en un servidor web con PHP (GNU/Linux | BSD)

June 20th, 2008 by Busindre

Apache + PHP como muchos saben nos ofrece la posibilidad, como otros lenguajes, de ejecutar comandos unix del servidor en el que se encuentra instalado si así se requiere y el servidor esta configurado correctamente para ello, por defecto no debería estar permitido por temas de seguridad. Que el servidor Apache pueda ejecutar programas del sistema es útil en ciertas ocasiones para ofrecer alguna funcionalidad extra a los usuarios o bien con el objetivo de realizar determinadas operaciones que mediante el uso de otros lenguajes como php o javascript supondrían un consumo de recursos excesivo para el servidor.

¿Pero que pasa si lo que queremos es poder usar esa posibilidad de ejecución de comandos de Apache desde nuestra consola?

En este post vamos a ver la forma de interactuar por medio de la consola, sin hacer uso del navegador, con un servidor web remoto que permita la ejecución de comandos modo texto, para ello usaremos la utilidad webSH.

WebSH son unos scripts que permiten ejecutar comandos en una máquina servidor remota (Que use Php) por medio de nuestra terminal, sin necesidad de usar otros protocolos como puede ser ssh, lógicamente estamos limitados por el acceso de apache a determinados comandos, todo depende de la configuración del servidor. Las instrucciones que enviamos por consola se envian a un fichero php alojado en el servidor web, el cual interpreta nuestros mandatos enviados desde la terminal y nos devuelve la salida a la misma. WebSH funciona en sistemas UNIX, por lo que podremos disfrutar de esta simple aplicación con sistemas GNU/Linux y BSD sin problemas. El programa original tiene algunos bugs por lo que hemos creado un paquete sin dichos bugs resueltos para su descarga.

Como es lógico el servidor que queremos que responda a nuestras peticiones debe permitir la ejecución de comandos por medio de PHP, para permitir el acceso de php a este tipo de funciones debemos tener en el archivo de configuración php.ini la siguiente linea:

safe_mode = Off

Descargar WebSH (Sin bugs): http://www.busindre.com/archivos/websh-0.1a_busi.tar.bz2

Md5sum: c899133c52b05adac5c20f1c47577f48

$ tar -xvjf websh-0.1a_busi.tar.bz2
websh-0.1a_busi/
websh-0.1a_busi/websh-0.1a.sh --> Podemos meterlo en /usr/bin
websh-0.1a_busi/websh-0.1a.php -> Debe estar en el servidor web que soporte la ejecución de comandos

Forma de uso:

$ websh-0.1a.sh www.dominio.com/websh-0.1a.php

Websh

Posted in Curiosidades |

Leave a Comment

Please note: Comment moderation is enabled and may delay your comment. There is no need to resubmit your comment.