Version 8 (modified by 7 years ago) (diff) | ,
---|
Índice
OGAgent: agente OpenGnsys para sistema operativo
Descripción general
OGAgent es un nuevo programa agente compilado para instalar en los sistemas operativos de los equipos clientes y que incluye un servicio REST propio preparado para conversar mediante mensajes asíncronos en formato JSON con la API REST de su servidor OpenGnsys.
OGAgent consta de 2 componentes principales:
- Servicio administrador: realiza la comunicación con el servidor OpenGnsys y ejecuta operaciones de administración sobre el cleinte.
- Servicio de usuario: ejecuta operaciones sobre la sesión del usuario.
Sistemas operativos soportados
Sistemas operativos | Fichero OGAgent |
---|---|
Ubuntu, Debian y derivados | ogagent_Version_all.deb |
Red Hat, Fedora y derivados | ogagent-Version.noarch.rpm |
SuSE y OpenSuSE | ogagent-opensuse-Version.noarch.rpm |
MS-Windows | OGAgentSetup-Version.exe |
macOS X | OGAgentInstaller-Version.pkg |
Instalación
Descargar el fichero correspondiente al sistema operativo utilizado desde el formulario de propiedades de ordenadores de la consola de administración web de OpenGnsys
Sistemas operativos Ubuntu, Debian y derivados
Ejecutar las siguientes operaciones como usuario administrador (usando sudo
).
- Instalar dependencias (Nota: revisar dependencias para Ubuntu 12.04):
sudo apt-get install -y libxss1 policykit-1 python python-requests python-qt4 python-six python-prctl
- Instalar el agente descargado:
sudo dpkg -i ogagent_Version_all.deb
- Configurar el agente, incluyendo la dirección IP del servidor OpenGnsys:
sudo sed -i "0,/remote=/ s,remote=.*,remote=https://IPServidorOpenGnsys/opengnsys/rest/," /usr/share/OGAgent/cfg/ogagent.cfg
- Iniciar el servicio (se iniciará automáticamente en el proceso de arranque):
sudo service ogagent start
Sistemas operativos Red Hat, Fedora y derivados
Ejecutar las siguientes operaciones como usuario root
o como administrador (usando sudo
).
- Instalar el agente descargado:
yum install ogagent-Version.noarch.rpm
- Configurar el agente, incluyendo la dirección IP del servidor OpenGnsys:
sed -i "0,/remote=/ s,remote=.*,remote=https://IPServidorOpenGnsys/opengnsys/rest/," /usr/share/OGAgent/cfg/ogagent.cfg
- Puede ser necesario corregir permisos antes de iniciar el servicio:
chmod +x /etc/init.d/ogagent
- Iniciar el servicio (se iniciará automáticamente en el proceso de arranque):
service ogagent start
Sistemas operativos OpenSuSE
(en preparación)
Sistemas operativos Windows
Ejecutar las siguientes operaciones como usuario administrador.
- Instalar el agente descargado, ejecutando:
OGAgentSetup-Version.exe
- Seguir las instrucciones del instalador.
- Editar el fichero de configuación
C:\Program Files (x86)\OGAgent\cfg\ogagent.cfg
(en Windows de 64 bits) oC:\Program Files\OGAgent\cfg\ogagent.cfg
) (en Windows de 32 bits) y modificar el valor de la cláusularemote
de la sección[OGAgent]
inclyendo la dirección IP del servidor OpenGnsys. - Iniciar el servicio manualmente (se iniciará automáticamente en el proceso de arranque):
NET START OGAgent
Registro de incidencias
Servidor
El servidor OpenGnsys registra las notificaciones enviadas por los agentes OGAgent en el fichero /opt/opengnsys/log/ogagent.log
, usando el siguiente formato de línea: FechaHora Operación Parámetros
. Ejemplo:
# cat /opt/opengnsys/log/ogagent.log 2017-11-09T11:36:35+0000: OGAgent started: ip=192.168.2.11, mac=08:00:27:0e:65:01, os=Linux:Ubuntu 16.04. 2017-11-09T11:40:41+0000: User logged in: ip=192.168.2.11, user=vagrant. 2017-11-09T12:01:15+0000: User logged out: ip=192.168.2.11, user=vagrant. 2017-11-09T12:02:30+0000: OGAgent stopped: ip=192.168.2.11, mac=08:00:27:0e:65:01, os=Linux:Ubuntu 16.04.
Agente
Existe un fichero de configuración de OGAgent para cada uno de sus 2 componentes principales (ogagent.cfg
y ogclient.cfg
) que registra las operaciones que realiza cada uno de ellos y donde se pueden definir los niveles correspondientes de log. Los niveles de registro típicos son DEBUG
para obtener información de depuración e INFO
para una información básica.
Los ficheros de incidencias para cada componente son:
S.O. Log administrador Log usuario Windows \Windows\Temp\opengnsys.log
%HOME%\Applocal\Data\Temp\opengnsys.log
Linux y macOS /var/tmp/opengnsys.log
$HOME/opengnsys.log
Mensajes entre OpenGnsys Server y OGAgent
OGAgent para OpenGnsys 1.1.0 tiene incorporadas las siguientes operaciones:
- Notificaciones enviadas al servidor (push):
Ruta Método Descripción Mensaje JSON /opengnsys/started
POST Inicio del servicio OGAgent {"ip":"IP","mac":"MAC","ostype":"SO","osversion":"Versión","secret":"Clave"}
/opengnsys/stopped
POST Parada del servicio OGAgent {"ip":"IP","mac":"MAC","ostype":"TipoSO","osversion":"VersionSO"}
/opengnsys/loggedin
POST Usuario inicia sesión en escritorio {"ip":"IP","user":"Usuario"}
/opengnsys/loggedout
POST Usuario finaliza sesión en escritorio {"ip":"IP","user":"Usuario"}
Nota: La clave de sesión se genera aleatoriamente en la operación de inicio del servicio agente, se envía al servidor para que éste la almacene y posteriormente pueda ser utilizada como parámetro de seguridad en las peticiones atendidas por el propio agente.
- Operaciones atendidas (pull):
Ruta Método Descripción Mensaje JSON Respuesta JSON /opengnsys/status
GET Notificación del estado del equipo {'status':'XXX','loggedin':bool}
/opengnsys/poweroff
GET Operación de apagado del cliente {"op":"launched"}
/opengnsys/reboot
GET Operación de reinicio del cliente {"op":"launched"}
/opengnsys/script
POST Operación de ejecución de script Python en el cliente (codificado en Base64) {"script":"CadenaBase64"}
{"op":"launched"}
/opengnsys/popup
POST Muestra un mensaje en la sesión del usuario {"title":"Cadena","message":"Cadena"}
{"op":"launched"}
Nota: Las peticiones deben incluir una cabecera
Authentication
con el valor de la clave de acceso a la API REST del agente OGAgent.
Estados definidos
Estado | Descripción |
---|---|
LNX | Sistema operativo GNU/Linux |
WIN | Sistema operativo Windows |
OSX | Sistema operativo Mac OS X (aún no soportado) |
OPG | Cliente OpenGnsys esperando órdenes (aún no soportado) |
BSY | Cliente OpenGnsys ocupado ejecutando alguna orden (aún no soportado) |
Banco de pruebas
SO Cliente | Escritorio | Comentarios |
---|---|---|
CentOS 7 | No | Correcto, sin notificar el estado de inicio de sesión |
Fedora 23 | GNOME 3 | Correcto, sin notificar el estado de inicio de sesión |
Ubuntu 16.04 | Unity | Correcto |
Ubuntu 14.04 | Unity | Correcto |
Ubuntu 14.04 | Lxde | Correcto, sin notificar salida de la sesión |
Ubuntu 12.04 | Unity | Falta alguna dependencia y no se inicia el servicio |
Windows 7 | - | Correcto |
Windows 10 | - | Correcto |
macOS X 10.9.5 | - | Correcto, solo servicio administrador |
Attachments (4)
-
sesiones-ogagent.png (12.1 KB) - added by 5 years ago.
Ejemplo de sesiones de OGAgent
-
seleccion-ogagent.png (16.6 KB) - added by 5 years ago.
Menú de descarga de OGAgent.
-
ogagent-windows.png (41.3 KB) - added by 5 years ago.
OGAgent para Windows
-
estados-clientes.png (16.3 KB) - added by 5 years ago.
Estados de clientes
Download all attachments as: .zip