Shell In A Box: Administración Remota en HTTP

La mayoría de los sitemas de tipo Unix (GNU/Linux, BSD, Darwin, Solaris, …) tienen sistema de acceso vía consola a través de herramientas como telnet o SSH.

Estos elementos de conexión usan unos puertos específicos para la conexión, pero el primero no es nada seguro (todo se transmite en plano, tal y como se ve en pantalla, a través de la red) y el segundo requiere de la apertura de un puerto, que en muchas redes está filtrado o es inaccesible.

Para esto, Markus Gutschke, ha creado un sistema que se aprovecha de las nuevas ventajas de la web (HTTP, HTML y Javascript puro y duro) para realizar una conexión vía HTTP con el servidor y poder abrir una sesión de consola. El proyecto se llama Shell In A Box.

La principal ventaja es que se puede lanzar tal cual, en un puerto como el 8080, y ya está. Funcionando. Pero lo mejor es usar Apache para configurarlo de modo que se quede detrás, y a través de una conexión SSL, para que no sea interceptable lo que se va escribiendo, ya que sino, sería tan inseguro como usar telnet directamente.

El propio código tiene un fichero INSTALL en el que se detalla la instalación y configuración, ya sea cual sea la forma en la que se desee.

Una curiosidad, es que, además de disponer del modo LOGIN, que es el que tiene más utilidad, ya que se puede disponer de una consola al equipo servidor a través de conexión HTTP, pero también se puede obtener un SSH a otra máquina (o la propia) y la ejecución de un comando específico:

shellinabox --service=/:USER:/:top

Esto, por ejemplo, abriría una interfaz para visualizar el top de la máquina.

Es una muy buena herramienta que puede facilitar mucho la gestión de servicios (sobre todo de cara al acceso).