Saltar al contenido

El nombre Wetty proviene de la suma de Web y TTY y como nos permite adivinar su cometido es proporcionar acceso a una terminal sobre http o https.

Basada en el codigo de hterm, la terminal de chromeOS, es una alternativa más rapida y fiable que ajaxterm y ha sido desarrollada completamente en javascript utilizando websockets en vez de ajax.

Instalación

$ git clone https://github.com/krishnasrinivas/wetty
$ cd wetty
$npm install

Ejecución

Si no nos importa la seguridad podemos levantar el puerto 3000 como escucha sobre el protocolo HTTP:

$ node app.js -p 3000​

Lo ideal es que usemos HTTPS con lo que en primer lugar tenemos que generar un certificado:

$ openssl req -x509 -newkey rsa:2048 -keyout key.pem -out cert.pem -days 30000 -nodes​

Y posteriormente levantamos el servicio con soporte para SSL/HTTPS.

$ node app.js --sslkey key.pem --sslcert cert.pem -p 3000​

Accediendo al servicio

Para acceder el servicio simplemente tenemos que apuntar nuestro navegador a http://localhost:3000 ohttps://localhost:3000 según hayamos decidido añadir una capa de seguridad o no.

También podemos en la misma dirección incluir el usuario con el que queremos autenticarnos añadiendolo en la URL. Por ejemplo si queremos acceder con el usuario term la dirección quedaria algo así: https://localhost:3000/wetty/ssh/term

Probando con Docker

Si nos interesa probarlo en Docker podemos usar una imagen de prueba:

$ docker run -p 3000:3000 -dt nathanleclaire/wetty​

En esta imagen hay un usuario creado con nombre “term” y password “term”.

Consideraciones

Conviene recordar que Wetty es un terminal y no un cliente ssh. Este nos da acceso a la maquina permitiendo usar cualquier programa como si estuviésemos en ella. Por ejemplo podríamos abrir una sesión ssh contra otra maquina desde allí.

Otros artículos destacados