tincho   28-09-2021, 17:11
#1
Hola amigos.
[Imagen: 6Tx21OS.png]
En el marco del programa intriga subo este proyecto que esta abocado a suplantar a colector si es que logra cumplir con los estándares "intrigantes".
El código fuente esta disponible en el siguiente enlace.
https://gitlab.com/belmotek/giskard

Características:
  • Monta directorios remotos compartidos con el protocolo SSHFS
  • Lista el hardware y su "estado de salud" para llevar el mantenimiento de los equipos.
  • Permite alterar la configuración modificando un simple archivo JSON que se encuentra en /home/usuario/.giskard/config.json pero esto es así a efectos de pruebas ya que en entornos de producción los mas recomendable es que el archivo este oculto a los usuarios sin permisos de administración.
  • NEW 2021.12.8 - Enciende el servidor NAS con el protocolo WakeOnLAN en caso que este apagado
  • NEW 2022.05.29 - WakeOnLAN probado en Ubuntu 22.04 - Mejoras en las funciones de detección de encendido y de servicio SSH funcionando.
Tareas por hacer:
  • Modulo de instalaciones de software y actualizaciones automáticas
  • RSYNC del directorio home al directorio personal de red para tener una copia de estado antes de iniciar la sesión.
Nota: El diseño de Giskard esta abocado a lograr una mínima comunicación con el servidor central donde este la base de datos, e incluso que continúe funcionando sin conexión.

¿Sugerencias?

Saludos.
Última modificación: 29-05-2022, 18:51 por tincho.

1 Saludo.
Shordi   28-09-2021, 17:33
#2
studing mode on...

No podemos regresar
tincho   28-09-2021, 17:40
#3
(28-09-2021, 17:33)Shordi escribió: studing mode on...

Si, mejor que le eches un vistazo.
El hardware queda listado en una variable tipo JSONCollection que como sabes es como una collection pero permite claves con valores nulos y claves repetidas.
La cantidad de información que entrega inxi es realmente grande así que tenemos que consensuar que es lo que se colectara y almacenara.
Saludos.

1 Saludo.
tercoide   29-09-2021, 13:20
#4
otro proyecto mas? Big Grin

esta tomando Red Bull ?? Angel

"Es mejor saber todo de muy poco que muy poco de todo" - anonimo
tincho   29-09-2021, 14:23
#5
(29-09-2021, 13:20)tercoide escribió: otro proyecto mas? Big Grin
esta tomando Red Bull ?? Angel
Solo mate Big Grin
Saludos.

1 Saludo.
tincho   08-12-2021, 18:01
#6
Hola Amigos.
Subí una nueva versión de Giskard que permite Encender el Servidor NAS si esta apagado, para luego poder montar los recurso de red.
Para esto usa el programa WOL. WakeOnLan
Esta súper practico para los que tienen una maquina que hace de servidor de archivos, pues evita tener que desplazarse físicamente al sitio donde este se encuentre, tal vez a varios km.
Última modificación: 08-12-2021, 18:02 por tincho.

1 Saludo.
tincho   29-05-2022, 18:46
#7
Hola Amigos.
Subí una nueva versión de Giskard probada en ubuntu 22.04 que ahora si conecta todo ya que antes no conectaba los recursos SSHFS.
Novedades:
  • En Ubuntu y Debian el programa de arranque por red se llama WAKEONLAN (en Arch se llama WOL)
  • También cambie que los informes los ponga en /tmp para no acumular informes en el "Home"
  • Mejore dos funciones para detectar si la PC esta encendida y si el servicio SSH esta activo
Uso Shell pero si alguien tiene alguna solución con componentes nativos gambas no dude en proponer, por ejemplo como hacer "ping" con gambas.
Código:
''Is the server running?
Static Public Function On(sIp As String) As Integer

  Dim State As Integer 'Boolean = True
  Dim sPing As String
  Dim aPing As String[]
  Dim sLine As String

  State = -2

  Shell "ping -c 4 " & sIp To sPing
  If Len(sPing) > 0 Then
    aPing = Split(sPing, "\n")
    For Each sLine In aPing
      If InStr(sLine, "packets transmitted") > 0 Then
        If InStr(sLine, "0 received") > 0 Then
          State = -1
        Else
          State = 1
        Endif
      Endif
    Next
  Endif

  Return State

End

Código:
'' ¿Is the SSH server running?
Static Public Function OpenSSH(sIp As String) As Integer

  Dim State As Integer 'Boolean = True
  Dim sPing As String
  Dim aPing As String[]
  Dim sLine As String

  State = -2

  Shell "ssh -vvv " & sIp & " 22 2>&1" To sPing

  If Len(sPing) > 0 Then
    aPing = Split(sPing, "\n")
    For Each sLine In aPing
      If InStr(sLine, "ssh: connect to host") > 0 Then
        If InStr(sLine, "refused") > 0 Then
          State = 1
        Else
          If InStr(sLine, "No route to hos") > 0 Then
            State = -1
          Endif
        Endif
      Endif
    Next
  Endif

  Return State

End

1 Saludo.
Shordi   30-05-2022, 09:24
#8
Gracias por las ideas. Tiene buena pinta.

Actualmente estoy trabajando también en proyectos que usan sshfs, vpn y demás cosas de red, pero desde un punto de vista, ya sabes, totalmente distinto enfocado más a quién tiene permiso para montar qué carpetas y demás, todo controlado desde una base de datos.

Saludos

No podemos regresar
tincho   30-05-2022, 09:39
#9
(30-05-2022, 09:24)Shordi escribió: Actualmente estoy trabajando también en proyectos que usan sshfs, vpn y demás cosas de red

Si, lo se, estas poniendo a punto INTRIGA. Giskard al final lo uso para no tener que ir a encender el servidor que esta lejos de mi escritorio y montar los recursos SSHFS, lo del informe de estado lo hace pero no lo uso para nada. Pero bueno si estas en una oficina (SOHO) en la que trabajar tu solo o un grupo pequeño puede funcionar. Para una empresa mas grande supongo que lo que cuadra mejor es intriga.

1 Saludo.
  
Usuarios navegando en este tema: 4 invitado(s)
Powered By MyBB, © 2002-2024 MyBB Group.
Made with by Curves UI.