Remote Execute Scripts and Command

Remote Execute Scripts and Command
Información sobre la plantilla

Es un programa que permite ejecutar diferentes comandos y scripts en ordenadores clientes de manera remota. Esta aplicación ha sido desarrollada en Linux con C++, Sockets, Hilos y Semáforos.

Historia

RESC (Remote Execute Scripts and Command) surge como una necesidad para una tesis de grado en la cual era necesario controlar una serie de computadoras por la red y poder ejecutar comandos y scripts de manera remota en cada una de ellas. Posteriormente se extiende la instalación del RESC en su versión 0.1 (inestable) a todos los laboratorios docentes de la facultad 10 de la Universidad de las Ciencias Informáticas (UCI) con la intención de realizar pruebas. Mas tarde tras una serie de pruebas se realizan cambios para mejorar la versión actual y sale la versión 0.2 (estable), la cual es la que esta en uso actualmente en los laboratorios docentes de la facultad 10.

Autor

RESC es un software que fue realizado en el proyecto Unicornios de la facultad 10 en la Universidad de las Ciencias Informáticas y su desarrollador es Dayron Perez Roldan

Versiones

RESC v0.1 (inestable)

RESC en su versión inestable ya podía enviar comandos y scripts a una serie de clientes de manera remota sin embargo cuando se enviaba a ejecutar comandos o scripts que demoraban cierto tiempo los clientes perdían la conexión con el servidor de forma definitiva. Además se debía esperar a que el script o comando terminara de ejecutarse para poder enviar otro comando o script y que el RESC-Client lo ejecutara. En la interfaz gráfica no se manejan los posibles errores internos del programa y un mismo IP podía establecer en caso de error una conexión doble.

RESC v0.2 (estable)

Nuevos Aportes

  • Posee una Cola de Mensajes que permite enviar múltiples mensajes al mismo tiempo.
  • Posee un programa que es el encargado de ejecutar todas las ordenes del Servidor y el mismo es independiente del RESC-Client, lo cual permite mayor velocidad y evita cargar al Cliente con múltiples ejecuciones.
  • Posee un protocolo de comunicación que permite ahorrar ancho de banda.
  • Bloquea Conexiones con la misma dirección IP.
  • Posee funciones que permiten mostrar los errores al usuario.
  • Detecta cambios en la red de tal manera que si se pierde la conexión con el servidor, el cliente se bloquea hasta que se inicia el servidor otra vez y entonces se restablece la conexión.

Futuros Aportes

  • Se pretende poner SSL.
  • Traer Ficheros desde los clientes.
  • Lista de conexiones perdidas.
  • Historial de Comandos y Scripts enviados.

Características

Ventajas

  • Esta programado con una interfaz ligera en consola con NCURSES.
  • Maneja hilos lo cual permite realizar múltiples tareas de manera paralela.
  • Esta programado usando Socket Stream (TCP/IP) lo cual hace que el envío de información sea seguro y rápido.
  • RESC facilita el mantenimiento y configuración del sistema operativo (Linux) de forma remota y rápida, sin la necesidad de tener que ir ordenador por ordenador configurando o instalando cada aplicación.

Desventajas

  • RESC solo puede enviar un scripts de un tamaño máximo de 64 Kb; aunque es suficientemente grande para contener bastante información.
  • RESC aun puede ser vulnerable a ataques piratas, por lo que en próximas versiones se pretende eliminar esta desventaja.

Organización de Aplicaciones

  /+|
    |-etc-+
    |     |
    |     |-init.d-+ 
    |     |        |-{run-resc} "script"
    |-usr-+
    |     |
    |     |-bin-+
    |     |     |-{RESC-Client} "aplicación"
    |     |     |-{_rescgard} "aplicación"
    |     |     |-{rumsg} "aplicación"
    |     |
    |     |-sbin-+
    |     |      |-{_restart-resc} "script"
    |     |      |-{srescgard} "script"

Referencias

Véase también

El problema del barbero durmiente

Enlaces externos

Fuente